…FORDI I FORTJENER SÆRLIGE KAFFEØJEBLIKKE!

Barista PRO bringer glæden ved kvalitetskaffe ind på arbejdspladsen. Du ved, den slags kaffe, der får skuldrene til at sænke sig, smilene til at bredes og samtalerne til at flyde.
Det er baristakvalitet, altid certificerede bønner og ren kaffelykke! En hel symfoni af smagsnuancer og ægte ristekunst - og det er uanset om I brygger espresso, cappuccino eller kræser for et filterbryg til mødet på en tirsdag… for hvorfor egentlig ikke?

I fortjener mere end bare et koffeinkick. I fortjener et mmm-øjeblik! 

DOBBELT-CERTIFICERET KAFFESERIE

Kafferne i vores signature-serie er dobbeltcertificerede! Økologisk dyrkede bønner, som også er Fairtrade eller Rainforest Alliance certificeret. Det er kaffe med særlig omtanke for både mennesker og natur.

RAINFOREST ALLIANCE KAFFESERIE

Når du vælger kaffe med
Rainforest Alliance-certificering, støtter du en bedre fremtid for kaffebønder og deres familier – og en dyrkning, der har respekt for naturen og forbedrer farmernes arbejdsvilkår.

ØKOLOGISK
KAFFESERIE

Disse kaffer er lavet af 100 % økologisk dyrkede kaffebønner. Når du vælger økologisk
kaffe, støtter du en produktion uden
pesticider og kunstgødning
– med omtanke for både naturen og dig.

EN DOBBELT-CERTIFICERET KAFFESERIE

Dobbeltcertificering er vores signatur – og det er kaffe skabt til at imponere!
Her får du intens kvalitetskaffe med masser af karakter, dybde og balance.
Til kaffeøjeblikke, hvor omtanke og smag går hånd i hånd.


Signature Roast

En fyldig og intens espresso med noter af kakao, karamel og ristede nødder. Mørk, dyb og helt uimodståelig!


Signature

En aromatisk og levende kaffe med noter af mørke bær, mandler og mælkechokolade. Cremet, frisk og fuld af karakter!


Signature Dark Roast

Mørk espresso med dybe chokoladetoner, nøddeagtige noter og fyldig crema. Et kaffeøjeblik, der er værd at stoppe op for!

En symfoni af smagsnuancer
og ægte ristekunst!

Hver variant i Barista PRO-sortimentet har en unik smagsprofil, der er udviklet og specialristet til at udfolde sit fulde smagspotentiale på de professionelle og fuldautomatiske kaffemaskiner, I bruger i jeres hverdag. Naturligvis!

De spænder fra lysere mellemristninger til ekstra mørkristede bønner, så I kan gå på oplevelse i en hel symfoni af smagsnuancer og ægte ristekunst!

Fra frugtig honningmelon til chokolade, nødder, og helt over i mørke, røgede og ristede noter (jeps, de skal nok få jer op af kontorstolen - hvis ikke af intensitet, så af ren begejstring!)

… det sværeste er nok at vælge.
Men hos os må I heldigvis gerne have mere end én favorit!

EN RAINFOREST ALLIANCE KAFFESERIE

Her finder du den brede smagspalet – fra cremet, elegant og rund
til dyb, røget og intens! Fire varianter, alle Rainforest Alliance-certificerede
og ristet til at brygge særlige kaffeøjeblikke på.


CREMA ROAST

En cremet og elegant espresso med noter af mælkechokolade og ristede hasselnødder. Den silkebløde crema, milde syrlighed og behagelige aroma gør hver tår til ren forkælelse. Et kaffeøjeblik, der føles som en lille belønning!

Error executing template "Designs/Swift_custom/Paragraph/Swift_TextAndImage.cshtml"
System.NullReferenceException: Object reference not set to an instance of an object.
   at CompiledRazorTemplates.Dynamic.RazorEngine_0d5e191f33d24c81841ff3dc3215c8a4.<>c__DisplayClass4_0.<RenderButtons>b__0(TextWriter __razor_helper_writer) in D:\Solution\BKI Foods Swift - STAGING\Files\Templates\Designs\Swift_custom\Paragraph\Swift_TextAndImage.cshtml:line 289
   at CompiledRazorTemplates.Dynamic.RazorEngine_0d5e191f33d24c81841ff3dc3215c8a4.Execute() in D:\Solution\BKI Foods Swift - STAGING\Files\Templates\Designs\Swift_custom\Paragraph\Swift_TextAndImage.cshtml:line 98
   at RazorEngine.Templating.TemplateBase.RazorEngine.Templating.ITemplate.Run(ExecuteContext context, TextWriter reader)
   at RazorEngine.Templating.RazorEngineService.RunCompile(ITemplateKey key, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag)
   at RazorEngine.Templating.RazorEngineServiceExtensions.<>c__DisplayClass16_0.<RunCompile>b__0(TextWriter writer)
   at RazorEngine.Templating.RazorEngineServiceExtensions.WithWriter(Action`1 withWriter)
   at Dynamicweb.Rendering.RazorTemplateRenderingProvider.Render(Template template)
   at Dynamicweb.Rendering.TemplateRenderingService.Render(Template template)
   at Dynamicweb.Rendering.Template.RenderRazorTemplate()

1 @inherits Dynamicweb.Rendering.ViewModelTemplate<Dynamicweb.Frontend.ParagraphViewModel> 2 @using Dynamicweb.Ecommerce.ProductCatalog 3 @using S_DW_BKI_Swift.CustomModules.Extensions 4 5 @{ 6 Dynamicweb.Frontend.LinkViewModel link1 = new Dynamicweb.Frontend.LinkViewModel(); 7 Dynamicweb.Frontend.LinkViewModel link2 = new Dynamicweb.Frontend.LinkViewModel(); 8 9 string theme = !string.IsNullOrWhiteSpace(Model.Item.GetRawValueString("Theme")) ? " theme " + Model.Item.GetRawValueString("Theme").Replace(" ", "").Trim().ToLower() : string.Empty; 10 string layout = Model.Item.GetRawValueString("Layout", "image-top"); 11 string contentPadding = Model.Item.GetRawValueString("ContentPadding", string.Empty); 12 string contentPaddingClass = string.Empty; 13 string gapClass = " gap-3"; 14 15 switch (contentPadding) 16 { 17 case "small": 18 contentPaddingClass = " p-3"; 19 gapClass = " gap-0"; 20 break; 21 case "large": 22 contentPaddingClass = " p-5"; 23 gapClass = " gap-0"; 24 break; 25 } 26 } 27 28 <div class="d-flex flex-column@(gapClass) h-100 position-relative@(theme) item_@Model.Item.SystemName.ToLower()"> 29 <a id="@Model.ID" class="user-select-none position-absolute top-0" style="scroll-margin-top:var(--header-height,150px)"></a> 30 @switch (layout) 31 { 32 case "image-top": 33 @RenderImage() 34 if (!string.IsNullOrEmpty(Model.Item.GetString("Title")) || !string.IsNullOrEmpty(Model.Item.GetString("Lead")) || !string.IsNullOrEmpty(Model.Item.GetString("Text")) || link1 != null && !string.IsNullOrEmpty(link1.Url) || link2 != null && !string.IsNullOrEmpty(link2.Url)) 35 { 36 <div class="d-flex flex-column gap-3 h-100@(contentPaddingClass)"> 37 @{ 38 @RenderTitle() 39 @RenderLead() 40 @RenderText() 41 @RenderButtons(link1, link2) 42 } 43 </div> 44 } 45 break; 46 47 case "title-top": 48 if (!string.IsNullOrEmpty(Model.Item.GetString("Title"))) 49 { 50 <div class="@(contentPaddingClass)"> 51 @{ @RenderTitle() } 52 </div> 53 } 54 @RenderImage() 55 if (!string.IsNullOrEmpty(Model.Item.GetString("Lead")) || !string.IsNullOrEmpty(Model.Item.GetString("Text")) || link1 != null && !string.IsNullOrEmpty(link1.Url) || link2 != null && !string.IsNullOrEmpty(link2.Url)) 56 { 57 <div class="d-flex flex-column gap-3@(contentPaddingClass)"> 58 @{ 59 @RenderLead() 60 @RenderText() 61 @RenderButtons(link1, link2) 62 } 63 </div> 64 } 65 break; 66 67 case "title-lead-top": 68 if (!string.IsNullOrEmpty(Model.Item.GetString("Title")) || !string.IsNullOrEmpty(Model.Item.GetString("Lead"))) 69 { 70 <div class="d-flex flex-column gap-3@(contentPaddingClass)"> 71 @{ 72 @RenderTitle() 73 @RenderLead() 74 } 75 </div> 76 } 77 @RenderImage() 78 if (!string.IsNullOrEmpty(Model.Item.GetString("Text")) || link1 != null && !string.IsNullOrEmpty(link1.Url) || link2 != null && !string.IsNullOrEmpty(link2.Url)) 79 { 80 <div class="d-flex flex-column gap-3@(contentPaddingClass)"> 81 @{ 82 @RenderText() 83 @RenderButtons(link1, link2) 84 } 85 </div> 86 } 87 break; 88 89 case "text-center": 90 @RenderImage() 91 if (!string.IsNullOrEmpty(Model.Item.GetString("Title")) || !string.IsNullOrEmpty(Model.Item.GetString("Lead")) || !string.IsNullOrEmpty(Model.Item.GetString("Text")) || link1 != null && !string.IsNullOrEmpty(link1.Url) || link2 != null && !string.IsNullOrEmpty(link2.Url)) 92 { 93 <div class="d-flex flex-column gap-3 align-items-center text-center h-100@(contentPaddingClass)"> 94 @{ 95 @RenderTitle() 96 @RenderLead() 97 @RenderText() 98 @RenderButtons(link1, link2) 99 } 100 </div> 101 } 102 break; 103 104 case "image-bottom": 105 if (!string.IsNullOrEmpty(Model.Item.GetString("Title")) || !string.IsNullOrEmpty(Model.Item.GetString("Lead")) || !string.IsNullOrEmpty(Model.Item.GetString("Text")) || link1 != null && !string.IsNullOrEmpty(link1.Url) || link2 != null && !string.IsNullOrEmpty(link2.Url)) 106 { 107 <div class="d-flex flex-column gap-3@(contentPaddingClass)"> 108 @{ 109 @RenderTitle() 110 @RenderLead() 111 @RenderText() 112 @RenderButtons(link1, link2) 113 } 114 </div> 115 } 116 @RenderImage() 117 break; 118 } 119 </div> 120 121 @helper RenderTitle() 122 { 123 bool hideTitle = Model.Item?.GetBoolean("HideTitle") ?? false; 124 string title = !hideTitle ? Model.Item.GetString("Title", string.Empty) : string.Empty; 125 126 if (!string.IsNullOrEmpty(title)) 127 { 128 string maxWidth = Model.Item.GetRawValueString("TextReadability", string.Empty) == "max-width-on" ? " mw-75ch" : string.Empty; 129 string titleFontSize = Model.Item.GetString("TitleFontSize", "h2"); 130 string titleColor = Model.Item.GetString("TitleColor", "text-inherit"); 131 string titleOpacity = Model.Item.GetString("TitleOpacity", "opacity-100"); 132 133 string headingLevel = Model.Item.GetString("HeadingLevel", "h2"); 134 string headingLevelStart = $"<{headingLevel} class=\"{titleFontSize} {titleColor} {titleOpacity}{maxWidth} m-0\">"; 135 string headingLevelStop = $"</{headingLevel}>"; 136 137 @headingLevelStart 138 @title 139 @headingLevelStop 140 } 141 } 142 143 @helper RenderLead() 144 { 145 if (!string.IsNullOrEmpty(Model.Item.GetString("Lead"))) 146 { 147 string subtitleColor = Model.Item.GetString("SubtitleColor", "text-inherit"); 148 string subtitleOpacity = Model.Item.GetString("SubtitleOpacity", "opacity-100"); 149 string maxWidth = Model.Item.GetRawValueString("TextReadability", string.Empty) == "max-width-on" ? " mw-75ch" : string.Empty; 150 string subtitleFontSize = Model.Item.GetRawValueString("SubtitleFontSize", "fs-5"); 151 152 <p class="m-0 lead @(subtitleFontSize) @(subtitleColor) @(subtitleOpacity)@(maxWidth)"> 153 @Model.Item.GetString("Lead") 154 </p> 155 } 156 } 157 158 @helper RenderText() 159 { 160 if (!string.IsNullOrEmpty(Model.Item.GetString("Text"))) 161 { 162 string maxWidth = Model.Item.GetRawValueString("TextReadability", string.Empty) == "max-width-on" ? " mw-75ch" : string.Empty; 163 string textColor = Model.Item.GetString("TextColor", "text-inherit"); 164 string textOpacity = Model.Item.GetString("TextOpacity", "opacity-100"); 165 166 <div class="mb-0-last-child @textColor @(textOpacity)@(maxWidth)"> 167 @Model.Item.GetString("Text") 168 </div> 169 } 170 } 171 172 @helper RenderImage() 173 { 174 if (!string.IsNullOrEmpty(Model.Item.GetString("Image"))) 175 { 176 int xPos = Model.Item?.GetFile("Image")?.FocalPositionFromLeft ?? 50; 177 int yPos = Model.Item?.GetFile("Image")?.FocalPositionFromTop ?? 50; 178 string ratioCssClass = Model.Item.GetRawValueString("ImageAspectRatio") != "0" && Model.Item.GetRawValueString("ImageAspectRatio") != "" ? "ratio" : string.Empty; 179 string ratioVariable = Model.Item.GetRawValueString("ImageAspectRatio") != "0" && Model.Item.GetRawValueString("ImageAspectRatio") != "" ? "style=\"--bs-aspect-ratio: " + Model.Item.GetRawValueString("ImageAspectRatio") + "\"" : string.Empty; 180 string imageAspect = Model.Item.GetRawValueString("ImageAspectRatio", string.Empty); 181 string ImageObjectFit = Model.Item.GetRawValueString("ImageObjectFit", string.Empty); 182 ImageObjectFit = ImageObjectFit == "cover" ? string.Empty : ImageObjectFit; 183 ImageObjectFit = ImageObjectFit == "contain" ? "object-fit:contain" : ImageObjectFit; 184 185 var parms = new Dictionary<string, object>(); 186 parms.Add("loading", "lazy"); 187 parms.Add("style", ImageObjectFit); 188 parms.Add("alt", Model.Item.GetString("ImageAltText")); 189 parms.Add("columns", Model.GridRowColumnCount); 190 191 if (Model.Item.GetRawValueString("ImageAspectRatio") == "0") 192 { 193 parms.Add("fullwidth", true); 194 parms.Add("cssClass", "img-fluid"); 195 196 if (Model.Item.GetString("Layout") == "text-center") 197 { 198 <figure class="d-flex flex-column align-items-center"> 199 @RenderPartial("Components/Image.cshtml", Model.Item.GetFile("Image") ?? new Dynamicweb.Frontend.FileViewModel(), parms) 200 </figure> 201 } 202 else 203 { 204 <figure> 205 @RenderPartial("Components/Image.cshtml", Model.Item.GetFile("Image") ?? new Dynamicweb.Frontend.FileViewModel(), parms) 206 </figure> 207 } 208 } 209 else 210 { 211 <figure class="mb-0 @ratioCssClass" @ratioVariable> 212 @RenderPartial("Components/Image.cshtml", Model.Item.GetFile("Image") ?? new Dynamicweb.Frontend.FileViewModel(), parms) 213 </figure> 214 215 } 216 } 217 } 218 219 @helper RenderButtons(Dynamicweb.Frontend.LinkViewModel link1, Dynamicweb.Frontend.LinkViewModel link2) 220 { 221 int shopId = Pageview.GetProductPageId(); 222 string linkType = Model.Item.GetRawValueString("LinkType", "page"); 223 string linkType2 = Model.Item.GetRawValueString("LinkType2", "page2"); 224 225 if (linkType == "page" && Model.Item.GetLink("ButtonLink") != null) 226 { 227 link1 = Model.Item.GetLink("ButtonLink"); 228 } 229 230 if (linkType2 == "page2" && Model.Item.GetLink("ButtonLink2") != null) 231 { 232 link2 = Model.Item.GetLink("ButtonLink2"); 233 } 234 235 if (linkType == "product-group") 236 { 237 IList<ProductGroupViewModel> selectedGroups = Model.Item.GetValue<IList<ProductGroupViewModel>>("ProductGroupLink"); 238 IList<string> groupIds = new List<string> { }; 239 240 if (selectedGroups != null) 241 { 242 foreach (var fromGroup in selectedGroups) 243 { 244 groupIds.Add(fromGroup.Id); 245 } 246 } 247 248 link1 = new Dynamicweb.Frontend.LinkViewModel() 249 { 250 Url = "/Default.aspx?ID=" + shopId + "&GroupID=" + string.Join(",", groupIds).Trim(), 251 IsExternal = false 252 }; 253 } 254 255 if (linkType2 == "product-group2") 256 { 257 IList<ProductGroupViewModel> selectedGroups = Model.Item.GetValue<IList<ProductGroupViewModel>>("ProductGroupLink2"); 258 IList<string> groupIds = new List<string> { }; 259 260 if (selectedGroups != null) 261 { 262 foreach (var fromGroup in selectedGroups) 263 { 264 groupIds.Add(fromGroup.Id); 265 } 266 } 267 268 link2 = new Dynamicweb.Frontend.LinkViewModel() 269 { 270 Url = "/Default.aspx?ID=" + shopId + "&GroupID=" + string.Join(",", groupIds).Trim(), 271 IsExternal = false 272 }; 273 } 274 275 if (linkType == "product") 276 { 277 ProductListViewModel products = Model.Item.GetValue<ProductListViewModel>("ProductLink"); 278 IList<string> productIds = new List<string> { }; 279 280 if (products != null) 281 { 282 foreach (var product in products.Products) 283 { 284 productIds.Add(product.Id); 285 } 286 } 287 288 string productParameter = productIds.Count == 1 ? "ProductID" : "MainProductId"; 289 string productLink = products.Products.FirstOrDefault().GetProductLink(shopId, false); 290 productLink = productIds.Count != 1 ? "/Default.aspx?ID=" + shopId + "&" + productParameter + "=" + string.Join(",", productIds).Trim() : productLink; 291 292 link1 = new Dynamicweb.Frontend.LinkViewModel() 293 { 294 Url = productLink, 295 IsExternal = false 296 }; 297 } 298 299 if (linkType2 == "product2") 300 { 301 ProductListViewModel products = Model.Item.GetValue<ProductListViewModel>("ProductLink2"); 302 IList<string> productIds = new List<string> { }; 303 304 if (products != null) 305 { 306 foreach (var product in products.Products) 307 { 308 productIds.Add(product.Id); 309 } 310 } 311 312 string productParameter = productIds.Count == 1 ? "ProductID" : "MainProductId"; 313 string productLink = products.Products.FirstOrDefault().GetProductLink(shopId, false); 314 productLink = productIds.Count != 1 ? "/Default.aspx?ID=" + shopId + "&" + productParameter + "=" + string.Join(",", productIds).Trim() : productLink; 315 316 link2 = new Dynamicweb.Frontend.LinkViewModel() 317 { 318 Url = productLink, 319 IsExternal = false 320 }; 321 } 322 323 if (link1 != null && !string.IsNullOrEmpty(link1.Url) || link2 != null && !string.IsNullOrEmpty(link2.Url)) 324 { 325 string buttonStyle = Model.Item.GetRawValueString("ButtonStyle", "primary"); 326 buttonStyle = buttonStyle == "primary" ? " btn-primary" : buttonStyle; 327 buttonStyle = buttonStyle == "secondary" ? " btn-secondary" : buttonStyle; 328 buttonStyle = buttonStyle == "link" ? " btn-link" : buttonStyle; 329 string buttonStyle2 = Model.Item.GetRawValueString("ButtonStyle2", "secondary"); 330 buttonStyle2 = buttonStyle2 == "primary" ? " btn-primary" : buttonStyle2; 331 buttonStyle2 = buttonStyle2 == "secondary" ? " btn-secondary" : buttonStyle2; 332 buttonStyle2 = buttonStyle2 == "link" ? " btn-link" : buttonStyle2; 333 string target1 = Pageview.AreaSettings.GetBoolean("OpenLinksInNewTab") && link1.IsExternal ? "target=\"_blank\"" : string.Empty; 334 string target2 = Pageview.AreaSettings.GetBoolean("OpenLinksInNewTab") && link2.IsExternal ? "target=\"_blank\"" : string.Empty; 335 string rel1 = Pageview.AreaSettings.GetBoolean("OpenLinksInNewTab") && link1.IsExternal ? "rel=\"noopener\"" : string.Empty; 336 string rel2 = Pageview.AreaSettings.GetBoolean("OpenLinksInNewTab") && link2.IsExternal ? "rel=\"noopener\"" : string.Empty; 337 string buttonLabel = Model.Item.GetString("ButtonLabel", string.Empty); 338 string buttonLabel2 = Model.Item.GetString("ButtonLabel2", string.Empty); 339 string stretchedLink = Model.Item.GetRawValueString("StretchedLink", "column-not-clickable"); 340 string stretchedLink2 = Model.Item.GetRawValueString("StretchedLink2", "column-not-clickable"); 341 string stretchedLinkClass = stretchedLink == "column-clickable" && string.IsNullOrEmpty(link2.Url) && string.IsNullOrEmpty(buttonLabel2) ? " stretched-link" : string.Empty; 342 string stretchedLinkClass2 = stretchedLink2 == "column-clickable" && string.IsNullOrEmpty(link1.Url) && string.IsNullOrEmpty(buttonLabel) ? " stretched-link" : string.Empty; 343 string buttonSize = Model.Item.GetRawValueString("ButtonSize", "regular"); 344 buttonSize = buttonSize == "small" ? " btn-sm" : buttonSize; 345 buttonSize = buttonSize == "regular" ? string.Empty : buttonSize; 346 buttonSize = buttonSize == "large" ? " btn-lg" : buttonSize; 347 string alignmentClass = string.Empty; 348 349 if (Model.Item.GetString("Layout") == "text-center") 350 { 351 alignmentClass = " justify-content-center"; 352 } 353 354 <div class="d-flex flex-wrap gap-3@(alignmentClass)"> 355 356 @if (link1 != null && !string.IsNullOrEmpty(link1.Url)) 357 { 358 if (!string.IsNullOrEmpty(buttonLabel)) 359 { 360 <a href="@link1.Url" @target1 @rel1 class="text-nowrap btn@(buttonStyle)@(buttonSize)@(stretchedLinkClass)">@buttonLabel</a> 361 } 362 else 363 { 364 <a href="@link1.Url" @target1 @rel1 class="@(stretchedLinkClass)"> 365 <span class="visually-hidden">@Model.Item.GetString("Title")</span> 366 </a> 367 } 368 } 369 370 @if (link2 != null && !string.IsNullOrEmpty(link2.Url)) 371 { 372 if (!string.IsNullOrEmpty(buttonLabel2)) 373 { 374 <a href="@link2.Url" @target2 @rel2 class="text-nowrap btn@(buttonStyle2)@(buttonSize)@(stretchedLinkClass2)">@buttonLabel2</a> 375 } 376 else 377 { 378 <a href="@link2.Url" @target2 @rel2 class="@(stretchedLinkClass)"> 379 <span class="visually-hidden">@Model.Item.GetString("Title")</span> 380 </a> 381 } 382 } 383 </div> 384 } 385 } 386


ORIGINAL ROAST

En balanceret espresso med fyldig crema, en dyb, ristet smag og let røgede noter. Her finder I den perfekte balance mellem sødme og syrlighed - et kaffeøjeblik der er stabilt, tilfredsstillende og diskret storslået!

GOD KAFFE FORTJENER GOD INDPAKNING!

Derfor er vores kaffeposer lavet til genanvendelse og skal sorteres som blød plast. For når både kaffen og emballagen er valgt med omtanke… så smager det hele bare lidt bedre, ikke? 

EN ØKOLOGISK KAFFESERIE

Fra citrus og honningmelon til blød chokolade og karamel – de økologiske kaffer i
Barista PRO-serien har smagsnuancer og noter, der danser i koppen.
Skabt til rene, smukke kaffeøjeblikke, der kalder på en kop mere!


ORGANIC ROAST

En fyldig og smagfuld espresso med noter af mørk chokolade, modne brombær og ristede nødder. Den mørke ristning og fløjlsbløde crema, giver dig en kop med stor personlighed – et intenst kaffeøjeblik fuld af forkælelse!


ORGANIC

En let og frugtig kaffe med noter af honningmelon og mild chokolade.
En kop med blød syrlighed, nøddeagtig aroma og et strejf af karamel i eftersmagen. En kaffe, der danser i koppen og pirrer dine sanser!

HENT VORES SORTIMENTSFOLDER
OG SKAB SÆRLIGE KAFFEØJEBLIKKE

Hos Black Coffee Roasters synes vi, at I fortjener særlige 
kaffeøjeblikke i hverdagen.  Uanset om kaffen drikkes
på kontoret eller på caféen, så skal det gerne 
smage af et mmm-øjeblik!

Udfyld formularen og få tilsendt vores Barista PRO
sortimentsfolder
med lokalristet kvalitetskaffe
til café,
restaurant, hotel eller kontor.

*Obligatorisk

Ved at klikke 'Acceptér Alle' så giver til tiladelse til at vi må indsamle information om dig til forskellige formål, hvilket inkluderer: Funktionalitet, Statestik og Marketing