1<!doctype html> 2<html class="no-js" lang="en"> 3 <head> 4 5 6 <meta charset="utf-8"> 7 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 8 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 9 <meta name="theme-color" content=""> 10 11 <link rel="canonical" href="https://bkconnection.com/cart"> 12 13<link rel="icon" type="image/png" href="//bkconnection.com/cdn/shop/files/logo_submark_final.png?crop=center&height=32&v=1753389391&width=32"><link rel="preconnect" href="https://fonts.shopifycdn.com" crossorigin><title> 14 Your Shopping Cart 15 – Berrett-Koehler Publishers</title> 16 17 <link rel="preload" href="//bkconnection.com/cdn/shop/t/4/assets/theme.css?v=91687875800249173261747335395" as="style" crossorigin="anonymous" /> 18 <link rel="preload" href="//bkconnection.com/cdn/fonts/amiri/amiri_n4.fee8c3379b68ea3b9c7241a63b8a252071faad52.woff2" as="font" type="font/woff2" crossorigin="anonymous" /> 19 20 21 22<meta property="og:site_name" content="Berrett-Koehler Publishers"> 23<meta property="og:url" content="https://bkconnection.com/cart"> 24<meta property="og:title" content="Your Shopping Cart"> 25<meta property="og:type" content="website"> 26<meta property="og:description" content="Empowering readers through bold ideas and transformative booksâBerrett-Koehler connects people and ideas to create a more equitable, inclusive, and sustainable world."><meta property="og:image" content="http://bkconnection.com/cdn/shop/files/Social_Sharing_Image_1.png?v=1749061221"> 27 <meta property="og:image:secure_url" content="https://bkconnection.com/cdn/shop/files/Social_Sharing_Image_1.png?v=1749061221"> 28 <meta property="og:image:width" content="1200"> 29 <meta property="og:image:height" content="628"><meta name="twitter:card" content="summary_large_image"> 30<meta name="twitter:title" content="Your Shopping Cart"> 31<meta name="twitter:description" content="Empowering readers through bold ideas and transformative booksâBerrett-Koehler connects people and ideas to create a more equitable, inclusive, and sustainable world."> 32<style data-shopify>@font-face { 33 font-family: Karla; 34 font-weight: 400; 35 font-style: normal; 36 font-display: swap; 37 src: url("//bkconnection.com/cdn/fonts/karla/karla_n4.40497e07df527e6a50e58fb17ef1950c72f3e32c.woff2") format("woff2"), 38 url("//bkconnection.com/cdn/fonts/karla/karla_n4.e9f6f9de321061073c6bfe03c28976ba8ce6ee18.woff") format("woff"); 39} 40 41 @font-face { 42 font-family: Amiri; 43 font-weight: 400; 44 font-style: normal; 45 font-display: swap; 46 src: url("//bkconnection.com/cdn/fonts/amiri/amiri_n4.fee8c3379b68ea3b9c7241a63b8a252071faad52.woff2") format("woff2"), 47 url("//bkconnection.com/cdn/fonts/amiri/amiri_n4.94cde4e18ec8ae53bf8f7240b84e1f76ce23772d.woff") format("woff"); 48} 49 50 @font-face { 51 font-family: Karla; 52 font-weight: 400; 53 font-style: normal; 54 font-display: swap; 55 src: url("//bkconnection.com/cdn/fonts/karla/karla_n4.40497e07df527e6a50e58fb17ef1950c72f3e32c.woff2") format("woff2"), 56 url("//bkconnection.com/cdn/fonts/karla/karla_n4.e9f6f9de321061073c6bfe03c28976ba8ce6ee18.woff") format("woff"); 57} 58 59 @font-face { 60 font-family: Karla; 61 font-weight: 700; 62 font-style: normal; 63 font-display: swap; 64 src: url("//bkconnection.com/cdn/fonts/karla/karla_n7.4358a847d4875593d69cfc3f8cc0b44c17b3ed03.woff2") format("woff2"), 65 url("//bkconnection.com/cdn/fonts/karla/karla_n7.96e322f6d76ce794f25fa29e55d6997c3fb656b6.woff") format("woff"); 66} 67 68 @font-face { 69 font-family: Karla; 70 font-weight: 700; 71 font-style: normal; 72 font-display: swap; 73 src: url("//bkconnection.com/cdn/fonts/karla/karla_n7.4358a847d4875593d69cfc3f8cc0b44c17b3ed03.woff2") format("woff2"), 74 url("//bkconnection.com/cdn/fonts/karla/karla_n7.96e322f6d76ce794f25fa29e55d6997c3fb656b6.woff") format("woff"); 75} 76 77 78 @font-face { 79 font-family: Amiri; 80 font-weight: 700; 81 font-style: normal; 82 font-display: swap; 83 src: url("//bkconnection.com/cdn/fonts/amiri/amiri_n7.18bdf9995a65958ebe1ecc6a8e58369f2e5fde36.woff2") format("woff2"), 84 url("//bkconnection.com/cdn/fonts/amiri/amiri_n7.4018e09897bebe29690de457ff22ede457913518.woff") format("woff"); 85} 86 87 @font-face { 88 font-family: Amiri; 89 font-weight: 400; 90 font-style: italic; 91 font-display: swap; 92 src: url("//bkconnection.com/cdn/fonts/amiri/amiri_i4.95beacf234505f7529ea2b9b84305503763d41e2.woff2") format("woff2"), 93 url("//bkconnection.com/cdn/fonts/amiri/amiri_i4.8d0b215ae13ef2acc52deb9eff6cd2c66724cd2c.woff") format("woff"); 94} 95 96 @font-face { 97 font-family: Amiri; 98 font-weight: 700; 99 font-style: italic; 100 font-display: swap; 101 src: url("//bkconnection.com/cdn/fonts/amiri/amiri_i7.d86700268b4250b5d5dd87a772497e6709d54e11.woff2") format("woff2"), 102 url("//bkconnection.com/cdn/fonts/amiri/amiri_i7.cb7296b13edcdeb3c0aa02998d8a90203078f1a1.woff") format("woff"); 103} 104�</style><link href="//bkconnection.com/cdn/shop/t/4/assets/theme.css?v=91687875800249173261747335395" rel="stylesheet" type="text/css" media="all" /> 105<style data-shopify>:root, 106 *:before { 107 --base-font-size: 0.875rem; 108 --font-size-medium-mobile: 0.9rem; 109 --font-size-medium: 1.0rem; 110 --font-size-small: 0.625rem; 111 --font-size-small-mobile: 0.5625rem; 112 --font-size-normal: 0.75rem; 113 --font-size-normal-mobile: 0.675rem; 114 --font-size-large: 1.25rem; 115 --font-size-large-mobile: 1.125rem; 116 --heading-highlight-font-size: 100%; 117 --h1-font-size: 3.825rem; 118 --h2-font-size: 2.25rem; 119 --h3-font-size: 1.35rem; 120 --h4-font-size: 1.2375rem; 121 --h5-font-size: 1.125rem; 122 --h6-font-size: 1.0125rem; 123 --base-font-size-mobile: 0.7875rem; 124 --h1-font-size-mobile: 1.9125rem; 125 --h2-font-size-mobile: 1.35rem; 126 --h3-font-size-mobile: 0.945rem; 127 --h4-font-size-mobile: 0.86625rem; 128 --h5-font-size-mobile: 0.7875rem; 129 --h6-font-size-mobile: 0.70875rem; 130 --rating-star-size: 0.7rem; 131 --border-radius: 6px; 132 --page-width: 1200px; 133 --width-countdown: 7.875rem; 134 --font-menu: Karla, sans-serif; 135 --font-menu-weight: 400; 136 --font-menu-style: normal; 137 --font-button: Karla, sans-serif; 138 --font-button-weight: 700; 139 --font-button-style: normal; 140 --font-body-family: Amiri, serif; 141 --font-body-style: normal; 142 --font-body-weight: 400; 143 --font-heading-family: Karla, sans-serif; 144 --font-heading-highlight: Karla, sans-serif; 145 --font-heading-highlight-style: normal;
146 --font-heading-highlight-weight: 700; 147 --font-heading-style: normal; 148 --font-heading-weight: 400; 149 --heading-text-tranform: uppercase; 150 --advanced-sections-spacing: 40px; 151 --divider-spacing: -40; 152 153 --colors-pulse-speech: 104, 102, 72; 154 --image-treatment-overlay: 0, 0, 0; 155 --image-treatment-text: 255, 255, 255; 156 --colors-line-and-border: 200, 184, 159; 157 --colors-line-and-border-base: 200, 184, 159; 158 --colors-line-header: 248, 192, 0; 159 --colors-line-footer: 192, 192, 192; 160 --colors-background: 255, 255, 255; 161 --colors-text: 77, 74, 75; 162 --colors-heading: 77, 74, 75; 163 --colors-heading-base: 77, 74, 75; 164 --colors-background-secondary: 221, 231, 241; 165 --colors-text-secondary: 77, 74, 75; 166 --colors-heading-secondary: 77, 99, 145; 167 --colors-text-link: 77, 99, 145; 168 --background-color: 255, 255, 255; 169 --background-color-header: 255, 255, 255; 170 --colors-text-header: 77, 74, 75; 171 --background-color-footer: 77, 74, 75; 172 --colors-text-footer: 255, 255, 255; 173 --colors-heading-footer: 192, 192, 192; 174 --colors-text-link-footer: 255, 255, 255; 175 --color-error: 169, 0, 0; 176 --color-success: 77, 99, 145; 177 --colors-price: 77, 74, 75; 178 --colors-price-sale: 169, 0, 0; 179 --colors-button-text: 255, 255, 255; 180 --colors-button: 77, 99, 145; 181 --colors-button-text-hover: 255, 255, 255; 182 --colors-secondary-button: 77, 99, 145; 183 --colors-button-hover: rgb(77, 74, 75); 184 --colors-cart: 169, 0, 0; 185 --colors-cart-text: 255, 255, 255; 186 --colors-icon-rating: 248, 192, 0; 187 --colors-transition-arrows: 0, 0, 0; 188 --color-highlight: #4d6391; 189 --background-pagination-slideshow: 32, 32, 32; 190 --text-color-pagination-slideshow: 255, 255, 255; 191 192 --background-secondary-button: transparent; 193 --colors-line-secondary-button: 77, 99, 145; 194 195 196 --button-width: 120%; 197 --button-height: 100%; 198 --button-transform: rotate3d(0,0,1,10deg) translate3d(-1.2em,110%,0); 199 --button-transform-origin: 0% 100%; 200 201 202 --height-parallax: 110%; 203 204 205 --image-zoom: 1.05; 206 207 --card-product-bg: rgba(0,0,0,0); 208 --card-product-padding: 20px; 209 --card-product-padding-mobile: 5px; 210 --card-product-alignment: center; 211 212 --width-scrollbar: 0; 213 --card-product-ratio: 150.0%; 214 --card-product-img-position: absolute; 215 --card-product-img-height: 0; 216 --card-product-img-zoom: scale(1.1); 217 --height-header: 0px; 218 --transition-card-loading: 600ms; 219 --transition-card-image-hover: 500ms;
220 --transition-slideshow: 600ms; 221 --transition-image-hover: 600ms; 222 } 223 .dark, 224 .dark *:before { 225 --image-treatment-overlay: 32, 32, 32; 226 --image-treatment-text: 255, 255, 255; 227 --colors-line-and-border: 49, 49, 49; 228 --colors-line-and-border-base: 49, 49, 49; 229 --colors-line-header: 49, 49, 49; 230 --colors-line-footer: 82, 80, 81; 231 --colors-background: 32, 32, 32; 232 --colors-text: 255, 255, 255; 233 --colors-heading: 255, 255, 255; 234 --colors-heading-base: 255, 255, 255; 235 --background-color: 32, 32, 32; 236 --colors-text-link: 77, 99, 145; 237 --color-error: 169, 0, 0; 238 --color-success: 66, 162, 70; 239 --background-color-header: 32, 32, 32; 240 --colors-text-header: 255, 255, 255; 241 --background-color-footer: 41, 41, 41; 242 --colors-text-footer: 137, 137, 137; 243 --colors-heading-footer: 255, 255, 255; 244 --colors-text-link-footer: 107, 112, 80; 245 --colors-price: 195, 195, 195; 246 --colors-price-sale: 169, 0, 0; 247 --colors-button-text: 40, 41, 40; 248 --colors-button: 77, 99, 145; 249 --colors-button-text-hover: 36, 36, 36; 250 --colors-secondary-button: 255, 255, 255; 251 --colors-button-hover: rgb(77, 99, 145); 252 --colors-cart: 107, 112, 80; 253 --colors-cart-text: 255, 255, 255; 254 --colors-background-secondary: 77, 74, 75; 255 --colors-text-secondary: 225, 227, 225; 256 --colors-heading-secondary: 255, 255, 255; 257 --colors-icon-rating: 200, 184, 159; 258 --colors-pulse-speech: 104, 102, 72; 259 --colors-transition-arrows: 0, 0, 0; 260 --color-highlight: #4d6391; 261 262 --background-secondary-button: transparent; 263 --colors-line-secondary-button: 255, 255, 255; 264 265 --card-product-bg: rgba(0,0,0,0); 266 } 267 shopify-accelerated-checkout { 268 --shopify-accelerated-checkout-button-border-radius: 6px; 269 } 270 shopify-accelerated-checkout-cart { 271 --shopify-accelerated-checkout-button-border-radius: 6px; 272 --shopify-accelerated-checkout-inline-alignment: end; 273 --shopify-accelerated-checkout-button-block-size: 48px; 274 --shopify-accelerated-checkout-button-inline-size: 48px; 275 } 276 277 [role="button"], 278 [type="button"], 279 .button { 280 color: rgb(var(--colors-button-text)); 281 } 282 button.button-solid, 283 .button.button-solid { 284 border: none; 285 background-color: rgba(var(--colors-button)); 286 } 287 button.button-disable-effect, 288 .button.button-disable-effect, 289 .payment-button .shopify-payment-button__button--unbranded { 290 color: rgb(var(--colors-button-text)); 291 background-color: rgba(var(--colors-button)); 292 } 293 .button-action { 294 border: none; 295 color: rgb(var(--colors-button-text)); 296 background-color: rgba(var(--colors-button)); 297 } 298 299 [role="button"], 300 [type="button"], 301 .button { 302 direction: ltr; 303 } 304 .header, .header *::before { 305 --colors-text: var(--colors-text-header); 306 --colors-heading: var(--colors-text-header); 307 --colors-price: var(--colors-text-header); 308 --colors-line-and-border: var(--colors-line-header); 309 } 310 #sticky-header-content .divider { 311 --colors-line-and-border: var(--colors-line-header); 312 } 313 .paginate-slide-image { 314 background: rgba(var(--background-pagination-slideshow)); 315 color: rgba(var(--text-color-pagination-slideshow)); 316 } 317 318 @media (min-width: 1024px) { 319 .paginate-slide-image { 320 color: rgba(var(--text-color-pagination-slideshow)); 321 } 322 .paginate-slide-image:hover { 323 color: rgba(var(--text-color-pagination-slideshow)); 324 } 325 } 326 327 .section-quick-links, 328 .section-quick-links *::before, 329 .section-footer, 330 .section-footer *::before { 331 --colors-text: var(--colors-text-footer); 332 --colors-heading: var(--colors-heading-footer); 333 --colors-text-link: var(--colors-text-link-footer); 334 --colors-line-and-border: var(--colors-line-footer); 335 } 336 .sticky-header { 337 --font-body-weight: 700; 338 } 339 340 .scrollbar-horizontal { 341 position: relative; 342 -ms-overflow-style: none; 343 } 344 .scrollbar-horizontal::-webkit-scrollbar-track { 345 background-color: #ececec; 346 } 347 .scrollbar-horizontal::-webkit-scrollbar {
348 height: 3px; 349 } 350 351 .scrollbar-horizontal::-webkit-scrollbar-track { 352 -webkit-box-shadow: inset 0 0 0px rgba(0, 0, 0, 0); 353 } 354 355 .scrollbar-horizontal::-webkit-scrollbar-thumb { 356 visibility: visible; 357 background-color: #747474; 358 } 359 360 .scrollbar-horizontal::-webkit-scrollbar-thumb:hover { 361 background-color: #747474; 362 } 363 body.scrollbar-body::-webkit-scrollbar{ 364 width: 5px; 365 } 366 .scrollbar-body::-webkit-scrollbar-track{ 367 background: #ececec; 368 } 369 .scrollbar-horizontal { 370 position: relative; 371 -ms-overflow-style: none; 372 } 373 .scrollbar-horizontal::-webkit-scrollbar-track { 374 background-color: #ececec; 375 } 376 .scrollbar-horizontal::-webkit-scrollbar { 377 height: 3px; 378 } 379 380 .scrollbar-horizontal::-webkit-scrollbar-track { 381 -webkit-box-shadow: inset 0 0 0px rgba(0, 0, 0, 0); 382 } 383 384 .scrollbar-horizontal::-webkit-scrollbar-thumb { 385 visibility: visible; 386 background-color: #747474; 387 } 388 389 .scrollbar-horizontal::-webkit-scrollbar-thumb:hover { 390 background-color: #747474; 391 } 392 .scrollbar-body::-webkit-scrollbar{ 393 width: 3px; 394 } 395 .scrollbar-body::-webkit-scrollbar-track{ 396 background: #ececec; 397 } 398 .scrollbar-body.scrollbar-visible:active::-webkit-scrollbar-thumb, 399 .scrollbar-body.scrollbar-visible:focus::-webkit-scrollbar-thumb, 400 .scrollbar-body.scrollbar-visible:hover::-webkit-scrollbar-thumb { 401 background: #747474; 402 visibility: visible; 403 } 404 .scrollbar-body.scrollbar-visible::-webkit-scrollbar-track{ 405 background: transparent; 406 } 407 .scrollbar-body.scrollbar-visible::-webkit-scrollbar-thumb{ 408 background: transparent; 409 visibility: visible; 410 } 411 .scrollbar-body::-webkit-scrollbar-thumb{ 412 background: #747474; 413 } 414 .animate-scroll-banner { 415 animation: scrollX var(--duration, 10s) linear infinite var(--play-state, running) var(--direction); 416 } 417 .padding-scrollbar, .padding-scrollbar-header { 418 padding-right: min(var(--width-scrollbar), 20px); 419 } 420 .rtl .padding-scrollbar-header { 421 padding-left: min(var(--width-scrollbar), 20px); 422 padding-right: 0; 423 } 424 425 426 .des-block iframe { 427 width: 100%; 428 height: 100%; 429 } 430 .toggle-compare + label span:first-child, 431 .toggle-compare:checked + label span:last-child { 432 display: block 433 } 434 .toggle-compare + label span:last-child, 435 .toggle-compare:checked + label span:first-child { 436 display: none; 437 } 438 .card-product:not(.recommendations) {} 439 .dark .card-product:not(.recommendations) {background: transparent;} 440 .card-product:not(.recommendations) .card-info, 441 .card-product:not(.recommendations) .x-variants-data { 442 padding-left: 5px; 443 padding-right: 5px; 444 } 445 .card-product:not(.recommendations) .card-info .x-variants-data 446 { 447 padding-left: 0; 448 padding-right: 0; 449 } 450 .card-product-slideshow { 451 background: #dde7f1;} 452 .dark .card-product-slideshow { 453 background: #4d4a4b;} 454 button[class*='shopify-payment-button__more-options'] { 455 color: rgba(var(--colors-text)); 456 } 457 .group-discount:before,.group-discount:after { 458 background-color: rgba(var(--colors-price-sale), 5%); 459 content: ""; 460 position: absolute; 461 right: 100%; 462 height: 100%; 463 top: 0; 464 width: 1.25rem; 465 } 466 .shipping_insurance.group-discount:before,.shipping_insurance.group-discount:after { 467 background-color: rgb(var(--colors-background-secondary)); 468 } 469 .group-discount:after { 470 left: 100%; 471 right: auto; 472 } 473 @media (min-width: 768px){ 474 .list-layout .card-product:not(.recommendations) { 475 padding-bottom: 0; 476 } 477 .list-layout .card-product:not(.recommendations) .card-info, 478 .list-layout .card-product:not(.recommendations) .x-variants-data{ 479 padding-left: 0; 480 padding-right: 0; 481 } 482 shopify-accelerated-checkout-cart { 483 --shopify-accelerated-checkout-button-block-size: 46px; 484 --shopify-accelerated-checkout-button-inline-size: 46px; 485 } 486 } 487 @media (min-width: 1024px){ 488 .group-discount:before,.group-discount:after { 489 width: 0; 490 } 491 .payment-button .shopify-payment-button__button--unbranded { 492 color: rgb(var(--colors-button-text)); 493 background: rgba(var(--colors-button)); 494 } 495 .card-product:not(.recommendations) .card-info, 496 .card-product:not(.recommendations) .x-variants-data { 497 padding-left: 20px; 498 padding-right: 20px; 499 } 500 [role="button"], 501 [type="button"], 502 .button { 503 color: rgba(var(--colors-button-text)); 504 } 505 button.button-solid, 506 .button.button-solid { 507 border: none; 508 box-shadow: none; 509 color: rgb(var(--colors-button-text)); 510 background-color: rgba(var(--colors-button)); 511 overflow: hidden; 512 background-origin: border-box; 513 } 514 button.button-solid:hover, 515 .button.button-solid:hover { 516 517 transition-delay: 0.5s; 518 519 transition-property: background-color; 520 background-color: var(--colors-button-hover); 521 color: rgba(var(--colors-button-text-hover)); 522 background-origin: border-box; 523 } 524 .button-action { 525 border: none; 526 color: rgba(var(--colors-button-text-hover)); 527 background-color: var(--colors-button-hover); 528 } 529 button.button-disable-effect, 530 .button.button-disable-effect { 531 color: rgb(var(--colors-button-text)); 532 background-color: rgba(var(--colors-button)); 533 } 534 button.button-disable-effect:hover, 535 .button.button-disable-effect:hover { 536 color: rgba(var(--colors-button-text-hover)); 537 background-color: var(--colors-button-hover); 538 } 539 540 button.button-solid:before, 541 .button.button-solid:before { 542 content: ""; 543 z-index: -1; 544 position: absolute; 545 top: 0; 546 right: 0; 547 bottom: 0; 548 left: 0; 549 width: var(--button-width); 550 height: var(--button-height); 551 background-color: var(--colors-button-hover); 552 backface-visibility: hidden; 553 will-change: transform; 554 transform: var(--button-transform); 555 transform-origin: var(--button-transform-origin); 556 transition: transform 0.5s ease; 557 } 558 button.button-solid:hover:before, 559 .button.button-solid:hover:before {
560 transform: rotate3d(0,0,1,0) translateZ(0); 561 } 562 563 564 } 565 .inventory-low-stock-status { 566 567 --stock-color: #BF122A; 568 569 color: var(--stock-color); 570 } 571 .dark .inventory-low-stock-status { 572 573 --stock-color: #BF122A; 574 575 } 576 .inventory-in-stock-status { 577 578 --stock-color: #6b762d; 579 580 color: var(--stock-color); 581 } 582 .dark .inventory-in-stock-status { 583 584 --stock-color: #858F4D; 585 586 } 587 .inventory-out-of-stock-status { 588 589 --stock-color: #767474; 590 591 color: var(--stock-color); 592 } 593 .dark .inventory-out-of-stock-status { 594 595 --stock-color: #867F7F; 596 597 } 598 .inventory-status { 599 background-color: var(--stock-color); 600 } 601 .card-testimonial { 602 background: #dde7f1;} 603 .dark .card-testimonial { 604 background: #4d4a4b;}/* App Shopify Subscription */ 605 .shopify_subscriptions_app_policy a { 606 position: relative; 607 margin-top: .5rem; 608 margin-bottom: .5rem; 609 color: rgba(var(--colors-text-link)) !important; 610 text-decoration-thickness: 1px; 611 background: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0)), linear-gradient(to right, rgba(var(--colors-text-link), 1), rgba(var(--colors-text-link), 1), rgba(var(--colors-text-link), 1)); 612 background-size: 100% 0.1em, 0 0.1em; 613 background-position: 100% 100%,100% 100%; 614 background-repeat: no-repeat; 615 transition: background-size 250ms; 616 } 617 .shopify_subscriptions_app_policy:after { 618 clear: both; 619 content: var(--tw-content); 620 display: block; 621 } 622 @media (min-width: 1024px) { 623 .shopify_subscriptions_app_policy a:hover { 624 background-size: 0 .1em, 100% .1em; 625 background-position: 100% 100%, 0% 100%; 626 } 627 } 628 629 /* Recurpay Subscription App */ 630 #recurpay-account-widget { 631 margin-top: 1rem; 632 } 633 .rtl .recurpay__widget .recurpay__group_frequency .recurpay__frequency_label_title { 634 padding-right: 10px; 635 right: 0.25rem; 636 } 637 .rtl .recurpay__widget .recurpay__group_title { 638 text-align: right; 639 margin-right: 0; 640 margin-left: 0.5em; 641 } 642 .rtl .recurpay__widget .recurpay__group_subtitle { 643 text-align: right; 644 } 645 .rtl .recurpay__widget .recurpay__description { 646 text-align: right; 647 } 648 .rtl .recurpay__widget .recurpay__radio_group { 649 margin-right: 0; 650 margin-left: 10px; 651 } 652 .rtl .recurpay__widget .recurpay__offer_saving_message { 653 padding-right: 10px; 654 padding-left: 0; 655 } 656 .rtl .recurpay__widget .recurpay__offer_wrapper svg { 657 margin-right: 0; 658 margin-left: 10px; 659 } 660 .rtl .recurpay__widget .recurpay__group_frequency .recurpay__frequency_label_title:before { 661 left: 0.5em; 662 margin-right: -50%; 663 right: auto; 664 margin-left: 0 665 } 666 .rtl .recurpay__widget .recurpay__group_frequency .recurpay__frequency_label_title:after { 667 right: 0.5em; 668 left: auto; 669 margin-left: 0; 670 } 671 .rtl .upgrade-subscription-cart .upgrade-icon-wrapper { 672 text-align: right; 673 } 674 675 /* Seal Subscriptions */ 676 .sls-widget-branding { 677 z-index: 20 !important; 678 } 679 .card .sealsubs-target-element, .card-product-fbt .sealsubs-target-element { 680 display: none !important; 681 } 682 .seal-portal-link a { 683 position: relative; 684 margin-top: .5rem; 685 margin-bottom: .5rem; 686 color: rgba(var(--colors-text-link)) !important; 687 text-decoration-thickness: 1px; 688 background: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0)), linear-gradient(to right, rgba(var(--colors-text-link), 1), rgba(var(--colors-text-link), 1), rgba(var(--colors-text-link), 1)); 689 background-size: 100% 0.1em, 0 0.1em; 690 background-position: 100% 100%,100% 100%; 691 background-repeat: no-repeat; 692 transition: background-size 250ms; 693 } 694 .seal-portal-link:after { 695 clear: both; 696 content: var(--tw-content); 697 display: block; 698 } 699 @media (min-width: 1024px) { 700 .seal-portal-link a:hover { 701 background-size: 0 .1em, 100% .1em; 702 background-position: 100% 100%, 0% 100%; 703 } 704 } 705 .rtl .sealsubs-container { 706 text-align: right; 707 } 708 .x-card-title { 709 font-size: 0.9rem; 710 } 711 .x-card-price { 712 font-size: 0.9rem; 713 font-family: var(--font-body-family) 714 } 715 @media (min-width: 768px) { 716 .x-card-title { 717 font-size: 1.0rem; 718 } 719 .x-card-price { 720 font-size: 1.0rem; 721 } 722 } 723 .back{ 724 position: absolute; 725 top: 50%; 726 left: 50%; 727 white-space: nowrap; 728 opacity: 0; 729 transform: translate(-50%, -50%) translateY(100%) translateZ(0);
730 transition-behavior: normal, normal; 731 transition-duration: 0.6s, 0.6s; 732 transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1), cubic-bezier(0.165, 0.84, 0.44, 1); 733 transition-delay: 0s, 0s; 734 transition-property: transform, opacity; 735 } 736 .front{ 737 transform: translateZ(0); 738 transition-behavior: normal, normal; 739 transition-duration: 0.6s, 0.6s; 740 transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1), cubic-bezier(0.165, 0.84, 0.44, 1); 741 transition-delay: 0s, 0s; 742 transition-property: transform, opacity; 743 border-bottom: 1px solid transparent; 744 } 745 .flip-container:hover .front{ 746 opacity: 0; 747 transform: translateY(-100%) translateZ(0); 748 } 749 .flip-container:hover .back{ 750 opacity: 1; 751 transform: translate(-50%, -50%) translateY(0%) translateZ(0); 752 border-bottom: 1px solid rgba(var(--colors-text-link)); 753 } 754 .dbtap-overlay{ 755 display: none 756 } 757 @media (max-width: 1024px) and (pointer: coarse) and (hover: none) { 758 .dbtap-overlay{ 759 display: block 760 } 761 }</style> 762 763
763<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
763<meta name="google-site-verification" content="2rcXofSMnheShuFkN3nT8fU8nHWWPfRpBSxjv_JjVmw"> 764<meta name="facebook-domain-verification" content="rdupdxovmxxzjf59ued60dya8oeg1m"> 765<meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/89993085291/digital_wallets/dialog"> 766<meta id="in-context-paypal-metadata" data-shop-id="89993085291" data-venmo-supported="false" data-environment="production" data-locale="en_US" data-paypal-v4="true" data-currency="USD">
767<script async="async" src="/checkouts/internal/preloads.js?locale=en-US"></script>
767 768<link rel="preconnect" href="https://shop.app" crossorigin="anonymous">
769<script async="async" src="https://shop.app/checkouts/internal/preloads.js?locale=en-US&shop_id=89993085291" crossorigin="anonymous"></script>
vendor: 1 bytes, line 769
769
770<script id="apple-pay-shop-capabilities" type="application/json">{"shopId":89993085291,"countryCode":"US","currencyCode":"USD","merchantCapabilities":["supports3DS"],"merchantId":"gid:\/\/shopify\/Shop\/89993085291","merchantName":"Berrett-Koehler Publishers","requiredBillingContactFields":["postalAddress","email"],"requiredShippingContactFields":["postalAddress","email"],"shippingType":"shipping","supportedNetworks":["visa","masterCard","amex","discover","elo","jcb"],"total":{"type":"pending","label":"Berrett-Koehler Publishers","amount":"1.00"},"shopifyPaymentsEnabled":true,"supportsSubscriptions":true}</script>
vendor: 1 bytes, line 770
770
771<script id="shopify-features" type="application/json">{"accessToken":"5056ea026a367ec2e7cb8254f7355f60","betas":["rich-media-storefront-analytics"],"domain":"bkconnection.com","predictiveSearch":true,"shopId":89993085291,"locale":"en"}</script>
vendor: 1 bytes, line 771
771
772<script>var Shopify = Shopify || {}; 773Shopify.shop = "berrett-koehler-publishing.myshopify.com"; 774Shopify.locale = "en"; 775Shopify.currency = {"active":"USD","rate":"1.0"}; 776Shopify.country = "US"; 777Shopify.theme = {"name":"Eurus","id":177306042731,"schema_name":"Eurus","schema_version":"8.7.0","theme_store_id":2048,"role":"main"}; 778Shopify.theme.handle = "null"; 779Shopify.theme.style = {"id":null,"handle":null}; 780Shopify.cdnHost = "bkconnection.com/cdn"; 781Shopify.routes = Shopify.routes || {}; 782Shopify.routes.root = "/"; 783Shopify.shopJsCdnBaseUrl = "https://cdn.shopify.com/shopifycloud/shop-js"; 784Shopify.SignInWithShop = Shopify.SignInWithShop || {}; 785Shopify.SignInWithShop.User = Shopify.SignInWithShop.User || {}; 786Shopify.SignInWithShop.User.recognized = false;</script>
vendor: 1 bytes, line 786
786
787<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
vendor: 1 bytes, line 787
787
788<script>!function(o){function n(){var o=[];function n(){o.push(Array.prototype.slice.apply(arguments))}return n.q=o,n}var t=o.Shopify=o.Shopify||{};t.loadFeatures=n(),t.autoloadFeatures=n()}(window);</script>
vendor: 1 bytes, line 788
788
789<script> 790 window.ShopifyPay = window.ShopifyPay || {}; 791 window.ShopifyPay.apiHost = "shop.app\/pay"; 792 window.ShopifyPay.redirectState = null; 793</script>
vendor: 1 bytes, line 793
793
794<script> 795 window.Shopify = window.Shopify || {}; 796 window.Shopify.SignInWithShop = window.Shopify.SignInWithShop || {}; 797 window.Shopify.SignInWithShop.assetMetrics = { sampleRate: 0.25 }; 798 window.Shopify.SignInWithShop.eligible = true; 799</script>
vendor: 1 bytes, line 799
799
800<script id="shop-js-analytics" type="application/json">{"pageType":"cart"}</script>
vendor: 1 bytes, line 800
800
801<script defer="defer" async type="module" src="https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js"></script>
vendor: 1 bytes, line 801
801
802<script type="module"> 803 await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js"); 804 805 window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true}); 806 807</script>
vendor: 1 bytes, line 807
807
808<script> 809 window.Shopify = window.Shopify || {}; 810 if (!window.Shopify.featureAssets) window.Shopify.featureAssets = {}; 811 window.Shopify.featureAssets['shop-js'] = {"avatar":["modules/v2/loader.avatar.en.esm.js"],"checkout-modal":["modules/v2/loader.checkout-modal.en.esm.js"],"init-customer-accounts-sign-up":["modules/v2/loader.init-customer-accounts-sign-up.en.esm.js"],"init-customer-accounts":["modules/v2/loader.init-customer-accounts.en.esm.js"],"init-fed-cm":["modules/v2/loader.init-fed-cm.en.esm.js"],"init-shop-cart-sync":["modules/v2/loader.init-shop-cart-sync.en.esm.js"],"init-shop-email-lookup-coordinator":["modules/v2/loader.init-shop-email-lookup-coordinator.en.esm.js"],"init-shop-for-new-customer-accounts":["modules/v2/loader.init-shop-for-new-customer-accounts.en.esm.js"],"init-shop-user-recognition":["modules/v2/loader.init-shop-user-recognition.en.esm.js"],"init-windoid":["modules/v2/loader.init-windoid.en.esm.js"],"lead-capture":["modules/v2/loader.lead-capture.en.esm.js"],"listener":["modules/v2/loader.listener.en.esm.js"],"pay-button":["modules/v2/loader.pay-button.en.esm.js"],"payment-terms":["modules/v2/loader.payment-terms.en.esm.js"],"shop-button":["modules/v2/loader.shop-button.en.esm.js"],"shop-cart-sync":["modules/v2/loader.shop-cart-sync.en.esm.js"],"shop-cash-offers":["modules/v2/loader.shop-cash-offers.en.esm.js"],"shop-follow-button":["modules/v2/loader.shop-follow-button.en.esm.js"],"shop-login-button":["modules/v2/loader.shop-login-button.en.esm.js"],"shop-login":["modules/v2/loader.shop-login.en.esm.js"],"shop-toast-manager":["modules/v2/loader.shop-toast-manager.en.esm.js"],"shop-user-recognition":["modules/v2/loader.shop-user-recognition.en.esm.js"]}; 812</script>
vendor: 1 bytes, line 812
812
813<script>(function() { 814 var isLoaded = false; 815 function asyncLoad() { 816 if (isLoaded) return; 817 isLoaded = true; 818 var urls = ["https:\/\/api-na1.hubapi.com\/scriptloader\/v1\/2998717.js?shop=berrett-koehler-publishing.myshopify.com"]; 819 for (var i = 0; i < urls.length; i++) { 820 var s = document.createElement('script'); 821 s.type = 'text/javascript'; 822 s.async = true; 823 s.src = urls[i]; 824 var x = document.getElementsByTagName('script')[0]; 825 x.parentNode.insertBefore(s, x); 826 } 827 }; 828 if(window.attachEvent) { 829 window.attachEvent('onload', asyncLoad); 830 } else { 831 window.addEventListener('load', asyncLoad, false); 832 } 833})();</script>
vendor: 1 bytes, line 833
833
834<script id="__st">var __st={"a":89993085291,"offset":-14400,"reqid":"ee2be3a0-dde3-442c-a44a-ba08bdb5ae33-1790234853","pageurl":"bkconnection.com\/cart","u":"0b78323a2641","p":"cart"};</script>
vendor: 1 bytes, line 834
834
835<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
vendor: 1 bytes, line 835
835
836<script id="captcha-bootstrap">!function(){'use strict';const t='contact',e='account',n='new_comment',o=[[t,t],['blogs',n],['comments',n],[t,'customer']],c=[[e,'customer_login'],[e,'guest_login'],[e,'recover_customer_password'],[e,'create_customer']],r=t=>t.map((([t,e])=>`form[action*='/${t}']:not([data-nocaptcha='true']) input[name='form_type'][value='${e}']`)).join(','),a=t=>()=>t?[...document.querySelectorAll(t)].map((t=>t.form)):[];function s(){const t=[...o],e=r(t);return a(e)}const i='password',u='form_key',d=['recaptcha-v3-token','g-recaptcha-response','h-captcha-response',i],f=()=>{try{return window.sessionStorage}catch{return}},m='__shopify_v',_=t=>t.elements[u];function p(t,e,n=!1){try{const o=window.sessionStorage,c=JSON.parse(o.getItem(e)),{data:r}=function(t){const{data:e,action:n}=t;return t[m]||n?{data:e,action:n}:{data:t,action:n}}(c);for(const[e,n]of Object.entries(r))t.elements[e]&&(t.elements[e].value=n);n&&o.removeItem(e)}catch(o){console.error('form repopulation failed',{error:o})}}const l='form_type',E='cptcha';function T(t){t.dataset[E]=!0}const w=window,h=w.document,L='Shopify',v='ce_forms',y='captcha';let A=!1;((t,e)=>{const n=(g='f06e6c50-85a8-45c8-87d0-21a2b65856fe',I='https://cdn.shopify.com/shopifycloud/storefront-forms-hcaptcha/ce_storefront_forms_captcha_hcaptcha.v1.5.3.iife.js',D={infoText:'Protected by hCaptcha',privacyText:'Privacy',termsText:'Terms'},(t,e,n)=>{const o=w[L][v],c=o.bindForm;if(c)return c(t,g,e,D).then(n);var r;o.q.push([[t,g,e,D],n]),r=I,A||(h.body.append(Object.assign(h.createElement('script'),{id:'captcha-provider',async:!0,src:r})),A=!0)});var g,I,D;w[L]=w[L]||{},w[L][v]=w[L][v]||{},w[L][v].q=[],w[L][y]=w[L][y]||{},w[L][y].protect=function(t,e){n(t,void 0,e),T(t)},Object.freeze(w[L][y]),function(t,e,n,w,h,L){const[v,y,A,g]=function(t,e,n){const i=e?o:[],u=t?c:[],d=[...i,...u],f=r(d),m=r(i),_=r(d.filter((([t,e])=>n.includes(e))));return[a(f),a(m),a(_),s()]}(w,h,L),I=t=>{const e=t.target;return e instanceof HTMLFormElement?e:e&&e.form},D=t=>v().includes(t);t.addEventListener('submit',(t=>{const e=I(t);if(!e)return;const n=D(e)&&!e.dataset.hcaptchaBound&&!e.dataset.recaptchaBound,o=_(e),c=g().includes(e)&&(!o||!o.value);(n||c)&&t.preventDefault(),c&&!n&&(function(t){try{if(!f())return;!function(t){const e=f();if(!e)return;const n=_(t);if(!n)return;const o=n.value;o&&e.removeItem(o)}(t);const e=Array.from(Array(32),(()=>Math.random().toString(36)[2])).join('');!function(t,e){_(t)||t.append(Object.assign(document.createElement('input'),{type:'hidden',name:u})),t.elements[u].value=e}(t,e),function(t,e){const n=f();if(!n)return;const o=[...t.querySelectorAll(`input[type='${i}']`)].map((({name:t})=>t)),c=[...d,...o],r={};for(const[a,s]of new FormData(t).entries())c.includes(a)||(r[a]=s);n.setItem(e,JSON.stringify({[m]:1,action:t.action,data:r}))}(t,e)}catch(e){console.error('failed to persist form',e)}}(e),e.submit())}));const S=(t,e)=>{t&&!t.dataset[E]&&(n(t,e.some((e=>e===t))),T(t))};for(const o of['focusin','change'])t.addEventListener(o,(t=>{const e=I(t);D(e)&&S(e,y())}));const B=e.get('form_key'),M=e.get(l),P=B&&M;t.addEventListener('DOMContentLoaded',(()=>{const t=y();if(P)for(const e of t)e.elements[l].value===M&&p(e,B);[...new Set([...A(),...v().filter((t=>'true'===t.dataset.shopifyCaptcha))])].forEach((e=>S(e,t)))}))}(h,new URLSearchParams(w.location.search),n,t,e,['guest_login'])})(!0,!0)}();</script>
vendor: 1 bytes, line 836
836
837<script integrity="sha256-JjoPp5ZfB1sSAs5SQaol1x1GgvveM+BgmRzyDexInEQ=" data-source-attribution="shopify.loadfeatures" defer="defer" src="//bkconnection.com/cdn/shopifycloud/storefront/assets/storefront/load_feature-1bd60354.js" crossorigin="anonymous"></script>
vendor: 1 bytes, line 837
837
838<script>(function () {var userAgent = navigator.userAgent;var platform = navigator.platform;var maxTouchPoints = navigator.maxTouchPoints || 0;var isIOS = /iPad|iPhone|iPod/.test(platform) || (platform === 'MacIntel' && maxTouchPoints > 1);var isMacSafari = platform.indexOf('Mac') === 0 && /Safari/.test(userAgent) && !/Chrome|Chromium|CriOS|FxiOS|Edg|OPR|Android/.test(userAgent);var isAppleSafari = isIOS || isMacSafari;if (isAppleSafari) {fetch('/sf_private_access_tokens' + location.search).catch(function () {});}function browserMajorVersion(pattern) {var match = userAgent.match(pattern);return match ? parseInt(match[1], 10) : null;}function shouldLoadAutosizesPolyfill() {if (!window.PerformanceObserver?.supportedEntryTypes?.includes('paint')) {return false;}var chromeVersion = browserMajorVersion(/Chrome\/(\d+)/);if (chromeVersion !== null) {return chromeVersion < 126;}var firefoxVersion = browserMajorVersion(/Firefox\/(\d+)/);if (firefoxVersion !== null) {return firefoxVersion < 150;}var safariVersion = isAppleSafari ? browserMajorVersion(/Version\/(\d+).*Safari\//) : null;if (safariVersion !== null) {return safariVersion < 27;}return true;}if (shouldLoadAutosizesPolyfill()) {var autosizesScript = document.createElement('script');autosizesScript.async = true;autosizesScript.crossOrigin = 'anonymous';autosizesScript.src = "//bkconnection.com/cdn/shopifycloud/storefront/assets/storefront/autosizes-84416378.js";(document.head || document.documentElement).appendChild(autosizesScript);}window.ShopifyAnalytics = window.ShopifyAnalytics || {};window.ShopifyAnalytics.performance = window.ShopifyAnalytics.performance || {};(function () {var LONG_FRAME_THRESHOLD = 50;var longAnimationFrames = [];var activeRafId = null;function collectLongFrames() {var previousTime = null;function rafMonitor(now) {if (activeRafId === null) {return;}var delta = now - previousTime;if (delta > LONG_FRAME_THRESHOLD) {longAnimationFrames.push({startTime: previousTime,endTime: now,});}previousTime = now;activeRafId = requestAnimationFrame(rafMonitor);}previousTime = performance.now();activeRafId = requestAnimationFrame(rafMonitor);}if (!window.PerformanceObserver?.supportedEntryTypes?.includes('long-animation-frame')) {collectLongFrames();var timeoutId = setTimeout(function () {cancelAnimationFrame(activeRafId);}, 10000);window.ShopifyAnalytics.performance.getLongAnimationFrames = function (stopCollection) {if (stopCollection === undefined) {stopCollection = false;}if (stopCollection) {clearTimeout(timeoutId);cancelAnimationFrame(activeRafId);}return longAnimationFrames;};}})();})();</script>
838<script crossorigin="anonymous" defer="defer" src="//bkconnection.com/cdn/shopifycloud/storefront/assets/shopify_pay/storefront-616277c7.js?v=20250812"></script>
vendor: 1 bytes, line 838
838
839<script id="shopify-origin-trials" async="async" integrity="sha256-qJbe/jEZBHtr5W/BlA2cKAz3vkXu6vJQyLjgvgCC86g=" src="//cdn.shopify.com/shopifycloud/storefront/assets/storefront/origin_trials-318ab40a.js" crossorigin="anonymous" onload="window.__shopifyOriginTrialsDone = true" onerror="window.__shopifyOriginTrialsDone = true"></script>
vendor: 1 bytes, line 839
839
840<script> 841 window.Shopify = window.Shopify || {}; 842 window.Shopify.MCP = window.Shopify.MCP || {}; 843 window.Shopify.MCP.enabled = true; 844 window.Shopify.MCP.shop = "berrett-koehler-publishing.myshopify.com"; 845 window.Shopify.MCP.mcpEndpoint = "https:\/\/bkconnection.com\/api\/mcp"; 846 window.Shopify.MCP.tools = [{"name":"search_shop_policies_and_faqs","description":"Used to get facts about the stores policies, products, or services.\nSome examples of questions you can ask are:\n - What is your return policy?\n - What is your shipping policy?\n - What is your phone number?\n - What are your hours of operation?\"\n","inputSchema":{"$schema":"https:\/\/json-schema.org\/draft\/2020-12\/schema","type":"object","properties":{"query":{"type":"string","description":"A natural language query."},"context":{"type":"string","description":"Additional information about the request such as user demographics, mood, location, or other relevant details that could help in tailoring the response appropriately."}},"required":["query"]}}]; 847</script>
vendor: 1 bytes, line 847
847
848<script>(()=>{var d="shopify:webmcp_adapter_loaded",n=Symbol.for("shopify.webmcp_adapter_loading");function s(c,a,{win:r=window,doc:o=document}={}){function p(){try{return r.localStorage.getItem(d)==="true"}catch{return!1}}function l(){try{r.localStorage.setItem(d,"true")}catch{}}function u(){return typeof(o.modelContext||r.navigator?.modelContext)?.registerTool=="function"}function f(){if(r[n]||!u())return;let t=o.head||o.getElementsByTagName("head")[0];if(!t)return;let e=o.createElement("script");e.type="module",e.crossOrigin="anonymous",a&&(e.integrity=a),e.src=c,e.addEventListener("load",l,{once:!0}),e.addEventListener("error",()=>{r[n]=!1},{once:!0}),t.appendChild(e),r[n]=!0}function _(t){let e=o.getElementById("shopify-origin-trials");if(!e||r.__shopifyOriginTrialsDone){t();return}e.addEventListener("load",t,{once:!0}),e.addEventListener("error",t,{once:!0})}function i(){_(()=>r.setTimeout(f,0))}function m(){o.addEventListener("DOMContentLoaded",i,{once:!0})}p()?i():m()}s("\/\/bkconnection.com\/cdn\/shopifycloud\/storefront\/assets\/storefront\/webmcp-f1e1e155.js","sha256-86F2r\/8tANRiv732G7Azvy4FxZLwNMjSp3zeaR2BCbY=");})(); 849</script>
vendor: 1 bytes, line 849
849
850<script data-source-attribution="shopify.dynamic_checkout.dynamic.init">var Shopify=Shopify||{};Shopify.PaymentButton=Shopify.PaymentButton||{isStorefrontPortableWallets:!0,init:function(){window.Shopify.PaymentButton.init=function(){};var t=document.createElement("script");t.src="https://bkconnection.com/cdn/shopifycloud/portable-wallets/latest/portable-wallets.en.js",t.type="module",document.head.appendChild(t)}}; 851</script>
vendor: 1 bytes, line 851
851
852<script data-source-attribution="shopify.dynamic_checkout.buyer_consent"> 853 function portableWalletsHideBuyerConsent(e){var t=document.getElementById("shopify-buyer-consent"),n=document.getElementById("shopify-subscription-policy-button");t&&n&&(t.classList.add("hidden"),t.setAttribute("aria-hidden","true"),n.removeEventListener("click",e))}function portableWalletsShowBuyerConsent(e){var t=document.getElementById("shopify-buyer-consent"),n=document.getElementById("shopify-subscription-policy-button");t&&n&&(t.classList.remove("hidden"),t.removeAttribute("aria-hidden"),n.addEventListener("click",e))}window.Shopify?.PaymentButton&&(window.Shopify.PaymentButton.hideBuyerConsent=portableWalletsHideBuyerConsent,window.Shopify.PaymentButton.showBuyerConsent=portableWalletsShowBuyerConsent); 854</script>
vendor: 1 bytes, line 854
854
855<script data-source-attribution="shopify.dynamic_checkout.cart.bootstrap">document.addEventListener("DOMContentLoaded",(function(){function t(){return document.querySelector("shopify-accelerated-checkout-cart, shopify-accelerated-checkout")}if(t())Shopify.PaymentButton.init();else{new MutationObserver((function(e,n){t()&&(Shopify.PaymentButton.init(),n.disconnect())})).observe(document.body,{childList:!0,subtree:!0})}})); 856</script>
856 857<link id="shopify-accelerated-checkout-styles" rel="stylesheet" media="screen" href="https://bkconnection.com/cdn/shopifycloud/portable-wallets/latest/accelerated-checkout-backwards-compat.css" crossorigin="anonymous"> 858<style id="shopify-accelerated-checkout-cart"> 859 #shopify-buyer-consent { 860 margin-top: 1em; 861 display: inline-block; 862 width: 100%; 863} 864 865#shopify-buyer-consent.hidden { 866 display: none; 867} 868 869#shopify-subscription-policy-button { 870 background: none; 871 border: none; 872 padding: 0; 873 text-decoration: underline; 874 font-size: inherit; 875 cursor: pointer; 876} 877 878#shopify-subscription-policy-button::before { 879 box-shadow: none; 880} 881 882 </style> 883
884<script id="shopify-cfh-end">window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
884 885 <style> 886 /* Style links in blog/article content areas */ 887 .article__content a, 888 .rte a, 889 .blog-post a, 890 article a, 891 [data-section-type="article"] a, 892 .article-body a, 893 .post-body a, 894 .content a { 895 color: #4D6391 !important; 896 text-decoration: underline !important; 897 } 898 899 .article__content a:visited, 900 .rte a:visited, 901 .blog-post a:visited, 902 article a:visited, 903 [data-section-type="article"] a:visited, 904 .article-body a:visited, 905 .post-body a:visited, 906 .content a:visited { 907 color: #4D6391 !important; 908 } 909 910 .article__content a:hover, 911 .rte a:hover, 912 .blog-post a:hover, 913 article a:hover, 914 [data-section-type="article"] a:hover, 915 .article-body a:hover, 916 .post-body a:hover, 917 .content a:hover { 918 color: #4D6391 !important; 919 } 920 921 .article__content a:active, 922 .rte a:active, 923 .blog-post a:active, 924 article a:active, 925 [data-section-type="article"] a:active, 926 .article-body a:active, 927 .post-body a:active, 928 .content a:active { 929 color: #4D6391 !important; 930 } 931 932 /* Explicitly exclude header and nav links from styling */ 933 header a, 934 nav a, 935 .header a, 936 .navbar a, 937 .navigation a { 938 color: inherit !important; 939 text-decoration: none !important; 940 } 941 942 /* Reduce H1 font size in text_KnC9gL block to match H3 styling */ 943 [data-block-id="text_KnC9gL"] h1 { 944 font-size: 0.75em; 945 } 946 947 /* Hide header, announcement bar, and mobile navigation on the-art-of-the-steal page */ 948 /* Using Shopify's page handle body class format: page-handle--{handle} */ 949 body.page-handle--the-art-of-the-steal #shopify-section-sections--24498229674347__announcement-bar, 950 body.page-handle--the-art-of-the-steal #shopify-section-sections--24498229674347__header, 951 body.page-handle--the-art-of-the-steal #shopify-section-sections--24498229674347__mobile-navigation, 952 /* Alternative: using data attributes */ 953 body.page-handle--the-art-of-the-steal [data-section-id="sections--24498229674347__announcement-bar"], 954 body.page-handle--the-art-of-the-steal [data-section-id="sections--24498229674347__header"], 955 body.page-handle--the-art-of-the-steal [data-section-id="sections--24498229674347__mobile-navigation"], 956 /* Fallback: generic selectors */ 957 body.page-handle--the-art-of-the-steal .shopify-section[data-section-type="announcement-bar"], 958 body.page-handle--the-art-of-the-steal .shopify-section[data-section-type="header"], 959 body.page-handle--the-art-of-the-steal .shopify-section[data-section-type="mobile-navigation"] { 960 display: none !important; 961 visibility: hidden !important; 962 height: 0 !important; 963 overflow: hidden !important; 964 margin: 0 !important; 965 padding: 0 !important; 966 } 967</style> 968 969 970 971 <style data-shopify> 972 body { 973 /* INP mobile */ 974 touch-action: manipulation; 975 } 976 @font-face { 977 font-family: Karla; 978 font-weight: 400; 979 font-style: normal; 980 font-display: swap; 981 src: url("//bkconnection.com/cdn/fonts/karla/karla_n4.40497e07df527e6a50e58fb17ef1950c72f3e32c.woff2") format("woff2"), 982 url("//bkconnection.com/cdn/fonts/karla/karla_n4.e9f6f9de321061073c6bfe03c28976ba8ce6ee18.woff") format("woff"); 983} 984 985 </style> 986 987 988 989 <!-- BEGIN app block: shopify://apps/supadu-blocks-berrett-koehler/blocks/app-embed/2614fd4f-7b4b-4395-bbf5-cebedcc664e5 --> 990 991 992 993 994
995<script 996 type="application/json" 997 id="sf-app-embed" 998 data-settings='{"catalog_id":"berrett-koehler-publishing-uk","data_source":"v3","catalog_api_key":"","enable_search":false,"search_type":"typesense","typesense_catalog":"","typesense_api_key":"","typesense_host":"","typesense_preset":"supadu-main","algolia_search_api_key":"","algolia_application_id":"","algolia_index_name":"","sort_by_index_values":"","search_bar_mobile_layout":"detached","pinned_products_enabled":false,"pinned_products":"","enable_query_suggestions":false,"contributor_enabled":true,"format_enabled":false,"price_enabled":true,"enable_buy_button":true,"buy_button_use_availability":true,"buy_button_request_url":"https:\/\/add-to-cart.supadu.com\/add-to-cart","buy_button_show_external_link":false,"buy_button_external_link_label":"Add to Cart","buy_button_external_link_url":"","buy_button_show_digital_link":true,"buy_button_digital_link_label":"You Own This Book â Read It Now!","buy_button_show_digital_login_message":false,"buy_button_digital_login_message_text":"[Login] to avoid duplicate purchases for digital products."}' 999 data-customer-id='' 1000 1001></script>
1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011<!-- END app block --><!-- BEGIN app block: shopify://apps/seolab-seo-optimizer/blocks/app_embed/faf700f6-3b71-45c3-86d4-83ea9f7d9216 --> 1012
1013<script type="application/ld+json"> 1014 [ 1015 1016 1017 1018 { 1019 "@context": "http://schema.org", 1020 "@type": "BreadcrumbList", 1021 "itemListElement": [ 1022 { 1023 "@type": "ListItem", 1024 "position": 1, 1025 "item": { 1026 "@type": "WebSite", 1027 "@id": "https://bkconnection.com", 1028 "name": "Berrett-Koehler Publishers Home" 1029 } 1030 }, 1031 { 1032 "@type": "ListItem", 1033 "position": 2, 1034 "item": { 1035 "@type": "WebPage", 1036 "@id": "https://bkconnection.com/cart", 1037 "name": "Your Shopping Cart" 1038 } 1039 } 1040 ] 1041 } 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 ] 1062</script>
1062 1063 1064 1065
1066<script type="text/javascript"> 1067 document.addEventListener("DOMContentLoaded",function(e){var n=window.location.href;if(n.indexOf("#seotid")>-1){var t=n.split("#seotid");let p=new Headers;p.append("Content-Type","application/json");let o=new FormData;o.append("shop","berrett-koehler-publishing.myshopify.com"),o.append("tid",t[1]),o.append("type","add_traffic"),fetch("/apps/seo-lab",{method:"POST",headers:{Accept:"application/json"},body:o}).then(e=>e.json()).then(e=>{window.history.replaceState({}, '', t[0])})}else fetch(n,{method:"HEAD"}).then(e=>{if(404===e.status){var t=n.split(window.location.origin);let p=new FormData;p.append("shop","berrett-koehler-publishing.myshopify.com"),p.append("url",t[1]),p.append("type","unresolve_url_recieve"),fetch("/apps/seo-lab",{method:"POST",headers:{Accept:"application/json"},body:p}).then(e=>e.json()).then(e=>{e.success&&console.log("Added")})}})}); 1068</script>
1068 1069 1070 1071 1072 1073
1074<script type="text/javascript"> 1075 !function(){if(!window.__SC_IMAGE_LAZY_LOADING_LOADED__){window.__SC_IMAGE_LAZY_LOADING_LOADED__=!0;var e={viewportBuffer:300,skipFirstVisibleImages:2,mutationDelay:150},t="header,.shopify-section-header,.announcement-bar,.hero,.banner,.slideshow,.slide,.slider,.swiper,.splide,.product__media,.product-media,.product-gallery,.media-gallery,.cart,.cart-drawer,.drawer,[data-no-lazy],[data-sc-lazy-ignore]";"loading"===document.readyState?document.addEventListener("DOMContentLoaded",n):n()}function a(e,t){return e.className&&String(e.className).toLowerCase().indexOf(t)>-1}function r(){var r=Array.prototype.slice.call(document.images||[]),i=0;r.forEach(function(r){if(!function e(r){if(!(i=r)||!i.tagName||"img"!==i.tagName.toLowerCase()||"true"===r.dataset.scLazyHandled||r.closest("template, noscript")||r.closest(t)||a(r,"lazyload")||a(r,"lazyloaded")||a(r,"lazypreload")||r.hasAttribute("data-src")||r.hasAttribute("data-srcset")||"eager"===(r.getAttribute("loading")||"").toLowerCase()||"high"===(r.getAttribute("fetchpriority")||"").toLowerCase())return!0;var i,n=r.getAttribute("src")||"";return!n||0===n.indexOf("data:")||0===n.indexOf("blob:")}(r)){if((o=(n=r).getBoundingClientRect()).top<window.innerHeight+e.viewportBuffer&&o.bottom>-e.viewportBuffer&&++i<=e.skipFirstVisibleImages){r.hasAttribute("decoding")||r.setAttribute("decoding","async"),r.dataset.scLazyHandled="true";return}var n,o,s=(r.getAttribute("loading")||"").toLowerCase();s&&"auto"!==s||r.setAttribute("loading","lazy"),r.hasAttribute("decoding")||r.setAttribute("decoding","async"),r.dataset.scLazyHandled="true"}})}function i(e){"requestIdleCallback"in window?window.requestIdleCallback(e,{timeout:1500}):setTimeout(e,1)}function n(){var t;i(r),new MutationObserver(function(){clearTimeout(t),t=setTimeout(function(){i(r)},e.mutationDelay)}).observe(document.documentElement,{childList:!0,subtree:!0})}}(); 1076</script>
1076 1077 1078 1079
1080<script type="text/javascript"> 1081 !function(){var e;e=function(){const e=document.querySelectorAll('iframe[class*="lazyVdHide"], video[class*="lazyVdHide"]');function t(e,t="iframe"){if(e.className.includes("lazyVdHide")){if("iframe"===t)e.src=e.dataset.src;else{const t=e.querySelectorAll("source[data-src]");t.length>0?t.forEach((function(e){e.dataset.src&&(e.src=e.dataset.src)})):e.dataset.src&&(e.src=e.dataset.src),e.load()}e.classList.remove("lazyVdHide"),e.classList.add("lazyVdShow")}}if("MutationObserver"in window&&new MutationObserver((e=>{for(const n of e)for(const e of n.addedNodes){if(1!==e.nodeType)continue;const n=e.tagName;"VIDEO"!==n&&"IFRAME"!==n||t(e,"VIDEO"===n?"video":"iframe")}})).observe(document.body,{childList:!0,subtree:!0}),"IntersectionObserver"in window){const n=new IntersectionObserver((function(e,n){e.forEach((function(e){if(e.isIntersecting){const o=e.target;t(o,"VIDEO"===o.tagName?"video":"iframe"),n.unobserve(o)}}))}),{rootMargin:"0px 0px 200px 0px"});e.forEach((function(e){n.observe(e)}))}else{const n=function(){e.forEach((function(e){const n=e.getBoundingClientRect();n.top<window.innerHeight+200&&n.bottom>-200&&t(e,"VIDEO"===e.tagName?"video":"iframe")}))};window.addEventListener("scroll",n),window.addEventListener("resize",n),window.addEventListener("orientationchange",n),n()}},"loading"===document.readyState?document.addEventListener("DOMContentLoaded",e):e()}(); 1082</script>
1082 1083 1084 1085<!-- END app block --><!-- BEGIN app block: shopify://apps/amazon-reviews/blocks/product-rating-snippet-embed/88ab28f3-a438-4eb3-a83e-f1a9c62c5069 --> 1086 1087 1088 1089<!-- END app block -->
1089<script src="https://cdn.shopify.com/extensions/01a0ce4b-1d68-7554-904b-219737f14408/supadu-blocks-berrett-koehler-76/assets/loader.min.js" type="text/javascript" defer="defer"></script>
vendor: 1 bytes, line 1089
1089
1090<script src="https://cdn.shopify.com/extensions/01a0d027-6243-7586-9855-c6f857ae9fdc/forms-2592/assets/shopify-forms-loader.js" type="text/javascript" defer="defer"></script>
vendor: 1 bytes, line 1090
1090
1091<script src="https://cdn.shopify.com/extensions/01a0a94d-acd3-7100-977e-e11794a9993f/simplee-memberships-131/assets/simplee-app.js" type="text/javascript" defer="defer"></script>
1091 1092<link href="https://cdn.shopify.com/extensions/01a0a94d-acd3-7100-977e-e11794a9993f/simplee-memberships-131/assets/simplee-app.css" rel="stylesheet" type="text/css" media="all"> 1093<link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
1094<script>(function(){if ("sendBeacon" in navigator && "performance" in window) {try {var session_token_from_headers = performance.getEntriesByType('navigation')[0].serverTiming.find(x => x.name == '_s').description;} catch {var session_token_from_headers = undefined;}var session_cookie_matches = document.cookie.match(/_shopify_s=([^;]*)/);var session_token_from_cookie = session_cookie_matches && session_cookie_matches.length === 2 ? session_cookie_matches[1] : "";var session_token = session_token_from_headers || session_token_from_cookie || "";function handle_abandonment_event(e) {var entries = performance.getEntries().filter(function(entry) {return /monorail-edge.shopifysvc.com/.test(entry.name);});if (!window.abandonment_tracked && entries.length === 0) {window.abandonment_tracked = true;var currentMs = Date.now();var navigation_start = performance.timing.navigationStart;var payload = {shop_id: 89993085291,url: window.location.href,navigation_start,duration: currentMs - navigation_start,session_token,page_type: "cart"};window.navigator.sendBeacon("https://monorail-edge.shopifysvc.com/v1/produce", JSON.stringify({schema_id: "online_store_buyer_site_abandonment/1.1",payload: payload,metadata: {event_created_at_ms: currentMs,event_sent_at_ms: currentMs}}));}}window.addEventListener('pagehide', handle_abandonment_event);}}());</script>
vendor: 1 bytes, line 1094
1094
1095<script> 1096 window.__TREKKIE_SHIM_QUEUE = window.__TREKKIE_SHIM_QUEUE || []; 1097</script>
vendor: 1 bytes, line 1097
1097
1098<script>(function(){var wpmLoader=function(){"use strict";var e=/Googlebot|Storebot-Google|bingbot|Baiduspider|YandexBot|DuckDuckBot|Slurp|facebookexternalhit|Twitterbot|LinkedInBot|Applebot|AdsBot-Google|Mediapartners-Google|APIs-Google|PetalBot|SemrushBot|AhrefsBot|MJ12bot|DotBot|Acunetix|PerplexityBot|Perplexity-User/i,t=/bytedance/i;function i(){try{var e=document.cookie;if(!e||"string"!=typeof e)return;for(var t=0,i=e.split(";");t<i.length;t++){var n=i[t],r=n.indexOf("=");if(-1!==r){var o=n.slice(0,r).trim();if(o){var a=void 0;try{a=decodeURIComponent(o)}catch(e){a=o}if("_shopify_s"===a){var d=n.slice(r+1).trim();try{return decodeURIComponent(d)}catch(e){return d}}}}}return}catch(e){return}}function n(e){try{"undefined"!=typeof console&&"function"==typeof console.warn&&console.warn(e)}catch(e){}}function r(e,t){return"string"==typeof e&&e.length>0&&e.length<=t?e:void 0}function o(e){var t;switch(null==(t=null==e?void 0:e.navigation)?void 0:t.type){case 0:return"navigate";case 1:return"reload";case 2:return"back_forward";default:return}}function a(){var e,t,i;try{var n=null==(i=null==(t=null==(e=self.ShopifyAnalytics)?void 0:e.lib)?void 0:t.trekkie)?void 0:i.state;return"awaiting-consent"===n||"initialized"===n?n:void 0}catch(e){return}}return function(d,s,u,l){var c=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{};try{var p=c.trekkieShim;!0!==p&&"true"!==p||null!=window.__TREKKIE_SHIM_QUEUE||(window.__TREKKIE_SHIM_QUEUE=[])}catch(e){}var f,v,h,y,g=(v=(f={modern:/Edge?\/(1{2}[4-9]|1[2-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Firefox\/(1{2}[4-9]|1[2-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Chrom(ium|e)\/(9{2}|\d{3,})\.\d+(\.\d+|)|(Maci|X1{2}).+ Version\/(15\.\d+|(1[6-9]|[2-9]\d|\d{3,})\.\d+)([,.]\d+|)( \(\w+\)|)( Mobile\/\w+|) Safari\/|Chrome.+OPR\/(9{2}|\d{3,})\.\d+\.\d+|(CPU[ +]OS|iPhone[ +]OS|CPU[ +]iPhone|CPU IPhone OS|CPU iPad OS)[ +]+(15[._]\d+|(1[6-9]|[2-9]\d|\d{3,})[._]\d+)([._]\d+|)|Android:?[ /-](14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})(\.\d+|)(\.\d+|)|Android.+Firefox\/(15\d|1[6-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+Chrom(ium|e)\/(14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|SamsungBrowser\/([2-9]\d|\d{3,})\.\d+/,legacy:/Edge?\/(1[6-9]|[2-9]\d|\d{3,})\.\d+(\.\d+|)|Firefox\/(5[4-9]|[6-9]\d|\d{3,})\.\d+(\.\d+|)|Chrom(ium|e)\/(5[1-9]|[6-9]\d|\d{3,})\.\d+(\.\d+|)([\d.]+$|.*Safari\/(?![\d.]+ Edge\/[\d.]+$))|(Maci|X1{2}).+ Version\/(10\.\d+|(1[1-9]|[2-9]\d|\d{3,})\.\d+)([,.]\d+|)( \(\w+\)|)( Mobile\/\w+|) Safari\/|Chrome.+OPR\/(3[89]|[4-9]\d|\d{3,})\.\d+\.\d+|(CPU[ +]OS|iPhone[ +]OS|CPU[ +]iPhone|CPU IPhone OS|CPU iPad OS)[ +]+(10[._]\d+|(1[1-9]|[2-9]\d|\d{3,})[._]\d+)([._]\d+|)|Android:?[ /-](14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})(\.\d+|)(\.\d+|)|Mobile Safari.+OPR\/([89]\d|\d{3,})\.\d+\.\d+|Android.+Firefox\/(15\d|1[6-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+Chrom(ium|e)\/(14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+(UC? ?Browser|UCWEB|U3)[ /]?(15\.([5-9]|\d{2,})|(1[6-9]|[2-9]\d|\d{3,})\.\d+)\.\d+|SamsungBrowser\/(5\.\d+|([6-9]|\d{2,})\.\d+)|Android.+MQ{2}Browser\/(14(\.(9|\d{2,})|)|(1[5-9]|[2-9]\d|\d{3,})(\.\d+|))(\.\d+|)|K[Aa][Ii]OS\/(3\.\d+|([4-9]|\d{2,})\.\d+)(\.\d+|)/}).modern,h=f.legacy,(y=navigator.userAgent).match(e)?"bot":y.match(v)?"modern":y.match(h)?"legacy":y.match(t)?"bot":"unknown"),m=function(e){var t,i,n=r(e,128);try{var a=window.performance,d=null==(t=null==a?void 0:a.getEntriesByType)?void 0:t.call(a,"navigation")[0];if(!d)return{requestId:n,navigationType:o(a)};var s="type"in d?r(d.type,64):void 0,u="serverTiming"in d&&Array.isArray(d.serverTiming)?d.serverTiming:[];return{requestId:null!=n?n:r(null==(i=u.find(function(e){return"requestID"===e.name}))?void 0:i.description,128),navigationType:s}}catch(e){return{requestId:n}}}(c.requestId),w=function(e){var t=e.version,r=e.browserTarget,o=e.surface,a=e.shopId,d=e.monorailEndpoint,s=window.location.href;return{emit:function(e){var u=e.status,l=e.errorMsg,c=e.failureReason,p=e.useKeepaliveFallback,f=void 0!==p&&p,v=e.navigationType,h=e.pagehidePersisted,y=e.requestId,g=e.trekkieState;if(d){var m,w;try{var b=(new Date).getTime();m=JSON.stringify({metadata:{event_sent_at_ms:b},events:[{schema_id:"web_pixels_manager_load/3.3",payload:{version:t,bundle_target:r,page_url:s,status:u,surface:o,error_msg:l,failure_reason:c,navigation_type:v,pagehide_persisted:h,request_id:y,trekkie_state:g,shop_id:a,visit_token:i()},metadata:{event_created_at_ms:b}}]})}catch(e){return}try{if("function"==typeof window.navigator.sendBeacon&&-1===(w=window.navigator.userAgent).indexOf("iPhone; CPU iPhone OS 12_")&&-1===w.indexOf("iPad; CPU OS 12_")&&-1===w.indexOf("iPod touch; CPU iPhone OS 12_")&&window.navigator.sendBeacon.bind(window.navigator)(d,m))return}catch(e){}if(f)try{"function"==typeof window.fetch&&window.fetch(d,{method:"POST",headers:{"Content-Type":"text/plain"},body:m,keepalive:!0}
1098).catch(function(){})}catch(e){}else try{var _=new XMLHttpRequest;_.open("POST",d,!0),_.setRequestHeader("Content-Type","text/plain"),_.send(m)}catch(e){n("[Web Pixels Manager] Got an unhandled error while logging to Monorail.")}}else n("[Web Pixels Manager] No Monorail endpoint provided, skipping logging.")}}}({version:u,browserTarget:g,surface:d.surface,shopId:d.shopId,monorailEndpoint:d.monorailEndpoint});if(Boolean(null==(_=null==(b=window.Shopify)?void 0:b.analytics)?void 0:_.replayQueue))w.emit({status:"setup-skipped",errorMsg:"replay queue already initialized."});else{var b,_;w.emit({status:"setup-started"}),window.Shopify=window.Shopify||{};var S=window.Shopify;S.analytics=S.analytics||{};var P=S.analytics;P.replayQueue=[],P.publish=function(e,t,i){return P.replayQueue.push([e,t,i]),!0};try{self.performance.mark("wpm:start")}catch(e){}var k,C="modern"===g?"modern":"legacy",E=(null!=l?l:{modern:"",legacy:""})[C],I=[(k={baseUrl:s,hashVersion:u,buildTarget:C}).baseUrl,"/wpm","/b",k.hashVersion,"modern"===k.buildTarget?"m":"l",".js"].join(""),O=!1,T=!1;try{c.browserTarget=g,function(){O=!0;try{window.addEventListener("pagehide",M)}catch(e){O=!1}}(),R(function(){try{R(x)}catch(e){D(e)}}),w.emit({status:"loading",requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()})}catch(e){D(e)}}function U(){var e;if(q(),!function(){var e,t;return Boolean(null==(t=null==(e=window.Shopify)?void 0:e.analytics)?void 0:t.initialized)}()){var t,i,n;try{if("function"!=typeof(null==(e=window.webPixelsManager)?void 0:e.init))return void A();if(!(null!==(n=i=t=window.webPixelsManager.init(d))&&"function"!=typeof n&&Object(n)===n&&"publish"in i&&"function"==typeof i.publish&&"publishCustomEvent"in i&&"function"==typeof i.publishCustomEvent&&"visitor"in i&&"function"==typeof i.visitor))return void A()}catch(e){return void A(e)}var r=window.Shopify.analytics;r.replayQueue.forEach(function(e){var i=e[0],n=e[1],r=e[2];t.publishCustomEvent(i,n,r)}),r.replayQueue=[],r.publish=t.publishCustomEvent,r.visitor=t.visitor,r.initialized=!0}}function A(e){B("manager_api_unavailable",void 0===e?void 0:Q(e))}function x(){B("script_load_failed","".concat(I," has failed to load"))}function B(e,t){T||(T=!0,q(),w.emit({status:"failed",errorMsg:t,failureReason:e,requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()}))}function M(e){O&&(q(),w.emit({status:"pagehide-while-loading",useKeepaliveFallback:!0,pagehidePersisted:e.persisted,requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()}))}function q(){O=!1;try{window.removeEventListener("pagehide",M)}catch(e){}}function R(e){var t;!function(e){var t=e.src,i=e.async,n=void 0===i||i,r=e.onload,o=e.onerror,a=e.sri,d=e.scriptDataAttributes,s=void 0===d?{}:d,u=document.createElement("script"),l=document.querySelector("head"),c=document.querySelector("body");if(u.async=n,u.src=t,a&&(u.integrity=a,u.crossOrigin="anonymous"),s)for(var p in s)if(Object.prototype.hasOwnProperty.call(s,p))try{u.dataset[p]=String(s[p])}catch(e){}if(r&&u.addEventListener("load",r),o&&u.addEventListener("error",o),l)l.appendChild(u);else{if(!c)throw new Error("Did not find a head or body element to append the script");c.appendChild(u)}}({src:I,async:!0,onload:U,onerror:e,sri:(t=E,"string"==typeof t&&/^sha384-[A-Za-z0-9+/=]+$/.test(t)?E:""),scriptDataAttributes:c})}function D(e){B("script_append_failed",Q(e))}function Q(e){return e instanceof Error?e.message:"Unknown error"}}}();wpmLoader({shopId: 89993085291,storefrontBaseUrl: "https://bkconnection.com",extensionsBaseUrl: "https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager",monorailEndpoint: "https://bkconnection.com/.well-known/shopify/monorail/unstable/produce_batch",surface: "storefront-renderer",enabledBetaFlags: ["16072cab","8450a54b"],webPixelsConfigList: [{"id":"2129953131","configuration":"{\"pixel_id\":\"1726996410943377\",\"pixel_type\":\"facebook_pixel\"}","eventPayloadVersion":"v1","runtimeContext":"OPEN","scriptVersion":"96420dbe9ea96c426a1b7f364f977719","type":"APP","apiClientId":2329312,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized","enabledFlags":["9a3ed68a"]}
1098,{"id":"1301348715","configuration":"{\"accountID\":\"berrett-koehler-publishing\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"1d4c781273105676f6b02a329648437f","type":"APP","apiClientId":32196493313,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":[]},"dataSharingState":"optimized","enabledFlags":["9a3ed68a"]},{"id":"1175126379","configuration":"{\"config\":\"{\\\"google_tag_ids\\\":[\\\"G-CG94DVD68N\\\",\\\"GT-TNLHRN2W\\\"],\\\"target_country\\\":\\\"US\\\",\\\"gtag_events\\\":[{\\\"type\\\":\\\"search\\\",\\\"action_label\\\":\\\"G-CG94DVD68N\\\"},{\\\"type\\\":\\\"begin_checkout\\\",\\\"action_label\\\":\\\"G-CG94DVD68N\\\"},{\\\"type\\\":\\\"remove_from_cart\\\",\\\"action_label\\\":\\\"G-CG94DVD68N\\\"},{\\\"type\\\":\\\"view_item\\\",\\\"action_label\\\":[\\\"G-CG94DVD68N\\\",\\\"MC-9WPTNVWBQE\\\"]},{\\\"type\\\":\\\"purchase\\\",\\\"action_label\\\":[\\\"G-CG94DVD68N\\\",\\\"MC-9WPTNVWBQE\\\"]},{\\\"type\\\":\\\"add_shipping_info\\\",\\\"action_label\\\":\\\"G-CG94DVD68N\\\"},{\\\"type\\\":\\\"page_view\\\",\\\"action_label\\\":[\\\"G-CG94DVD68N\\\",\\\"MC-9WPTNVWBQE\\\"]},{\\\"type\\\":\\\"view_item_list\\\",\\\"action_label\\\":\\\"G-CG94DVD68N\\\"},{\\\"type\\\":\\\"add_payment_info\\\",\\\"action_label\\\":\\\"G-CG94DVD68N\\\"},{\\\"type\\\":\\\"add_to_cart\\\",\\\"action_label\\\":\\\"G-CG94DVD68N\\\"},{\\\"type\\\":\\\"view_cart\\\",\\\"action_label\\\":\\\"G-CG94DVD68N\\\"}],\\\"enable_monitoring_mode\\\":false}\"}","eventPayloadVersion":"v1","runtimeContext":"OPEN","scriptVersion":"a3321ca85cf5aaf6b57585fcd8d67b3a","type":"APP","apiClientId":1780363,"privacyPurposes":[],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized","enabledFlags":["9a3ed68a"]},{"id":"shopify-app-pixel","configuration":"{}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"0530","apiClientId":"shopify-pixel","type":"APP","privacyPurposes":["ANALYTICS","MARKETING"]},{"id":"shopify-custom-pixel","eventPayloadVersion":"v1","runtimeContext":"LAX","scriptVersion":"0530","apiClientId":"shopify-pixel","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING"]}],isMerchantRequest: false,initData: {"shop":{"name":"Berrett-Koehler Publishers","paymentSettings":{"currencyCode":"USD"},"myshopifyDomain":"berrett-koehler-publishing.myshopify.com","countryCode":"US","storefrontUrl":"https:\/\/bkconnection.com"},"customer":null,"cart":null,"checkout":null,"productVariants":[],"products":[{"id":"14735304917355","handle":"berrett-koehler-publishers-gift-card","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"52187461714283","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]}],"purchasingCompany":null},},"https://bkconnection.com/cdn","c8540278we853e1abpb62b2c4amde256306",{"modern":"","legacy":""},{"trekkieShim":true,"agentContext":true,"apiClientId":"580111","facebookCapiEnabled":"true","themeId":"177306042731","themeStoreId":"2048","themePublished":"true","eventMetadataId":"54eeb04d-e60c-44d1-b227-9b197639184c","pageType":"cart","shopId":"89993085291","storefrontBaseUrl":"https:\/\/bkconnection.com","extensionBaseUrl":"https:\/\/extensions.shopifycdn.com\/cdn\/shopifycloud\/web-pixels-manager","surface":"storefront-renderer","enabledBetaFlags":"[\"16072cab\", \"8450a54b\"]","isMerchantRequest":"false","hashVersion":"c8540278we853e1abpb62b2c4amde256306","publish":"custom","events":"[[\"page_viewed\",{}]]"});})();</script>
1098<script> 1099 window.ShopifyAnalytics = window.ShopifyAnalytics || {}; 1100 window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {}; 1101 window.ShopifyAnalytics.meta.currency = 'USD'; 1102 var meta = {"page":{"pageType":"cart","requestId":"ee2be3a0-dde3-442c-a44a-ba08bdb5ae33-1790234853"}}; 1103 for (var attr in meta) { 1104 window.ShopifyAnalytics.meta[attr] = meta[attr]; 1105 } 1106</script>
vendor: 1 bytes, line 1106
1106
1107<script class="analytics"> 1108 (function () { 1109 var customDocumentWrite = function(content) { 1110 var jquery = null; 1111 1112 if (window.jQuery) { 1113 jquery = window.jQuery; 1114 } else if (window.Checkout && window.Checkout.$) { 1115 jquery = window.Checkout.$; 1116 } 1117 1118 if (jquery) { 1119 jquery('body').append(content); 1120 } 1121 }; 1122 1123 var hasLoggedConversion = function(token) { 1124 if (token) { 1125 return document.cookie.indexOf('loggedConversion=' + token) !== -1; 1126 } 1127 return false; 1128 } 1129 1130 var setCookieIfConversion = function(token) { 1131 if (token) { 1132 var twoMonthsFromNow = new Date(Date.now()); 1133 twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2); 1134 1135 document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow; 1136 } 1137 } 1138 1139 var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || []; 1140 window.ShopifyAnalytics.lib.trekkie = window.trekkie; 1141 if (trekkie.integrations) { 1142 return; 1143 } 1144 trekkie.methods = [ 1145 'identify', 1146 'page', 1147 'ready', 1148 'track', 1149 'trackForm', 1150 'trackLink' 1151 ]; 1152 trekkie.factory = function(method) { 1153 return function() { 1154 var args = Array.prototype.slice.call(arguments); 1155 args.unshift(method); 1156 trekkie.push(args); 1157 if (method == 'track' || method == 'page') { 1158 try { 1159 if (window.__TREKKIE_SHIM_QUEUE == null) { 1160 window.__TREKKIE_SHIM_QUEUE = []; 1161 } 1162 window.__TREKKIE_SHIM_QUEUE.push({ 1163 from: 'trekkie-stub', 1164 method: method, 1165 args: args.slice(1) 1166 }); 1167 } catch (e) { 1168 // no-op 1169 } 1170 } 1171 return trekkie; 1172 }; 1173 }; 1174 for (var i = 0; i < trekkie.methods.length; i++) { 1175 var key = trekkie.methods[i]; 1176 trekkie[key] = trekkie.factory(key); 1177 } 1178 trekkie.load = function(config) { 1179 trekkie.config = config || {}; 1180 trekkie.config.initialDocumentCookie = document.cookie; 1181 var first = document.getElementsByTagName('script')[0]; 1182var script = document.createElement('script'); 1183script.type = 'text/javascript'; 1184script.onerror = function(e) { 1185 var scriptFallback = document.createElement('script'); 1186 scriptFallback.type = 'text/javascript'; 1187 scriptFallback.onerror = function(error) { 1188 var Monorail = { 1189 produce: function produce(monorailDomain, schemaId, payload) { 1190 var currentMs = new Date().getTime(); 1191 var event = { 1192 schema_id: schemaId, 1193 payload: payload, 1194 metadata: { 1195 event_created_at_ms: currentMs, 1196 event_sent_at_ms: currentMs 1197 } 1198 }; 1199 return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event)); 1200 }, 1201 sendRequest: function sendRequest(endpointUrl, payload) { 1202 // Try the sendBeacon API 1203 if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) { 1204 var blobData = new window.Blob([payload], { 1205 type: 'text/plain' 1206 }); 1207 1208 if (window.navigator.sendBeacon(endpointUrl, blobData)) { 1209 return true; 1210 } // sendBeacon was not successful 1211 1212 } // XHR beacon 1213 1214 var xhr = new XMLHttpRequest(); 1215 1216 try { 1217 xhr.open('POST', endpointUrl); 1218 xhr.setRequestHeader('Content-Type', 'text/plain'); 1219 xhr.send(payload); 1220 } catch (e) { 1221 console.log(e); 1222 } 1223 1224 return false; 1225 }, 1226 isIos12: function isIos12() { 1227 return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1; 1228 } 1229 }; 1230 Monorail.produce('monorail-edge.shopifysvc.com', 1231 'trekkie_storefront_load_errors/1.1', 1232 {shop_id: 89993085291, 1233 theme_id: 177306042731, 1234 app_name: "storefront", 1235 context_url: window.location.href, 1236 source_url: "//bkconnection.com/cdn/s/trekkie.storefront.f1ba865b3fecd812ad617f74ac079261075e9edb.min.js"}); 1237 1238 }; 1239 scriptFallback.async = true; 1240 scriptFallback.src = '//bkconnection.com/cdn/s/trekkie.storefront.f1ba865b3fecd812ad617f74ac079261075e9edb.min.js'; 1241 first.parentNode.insertBefore(scriptFallback, first); 1242}; 1243script.async = true; 1244script.src = '//bkconnection.com/cdn/s/trekkie.storefront.f1ba865b3fecd812ad617f74ac079261075e9edb.min.js'; 1245first.parentNode.insertBefore(script, first); 1246 1247 }; 1248 trekkie.load( 1249 {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":89993085291,"isMerchantRequest":null,"themeId":177306042731,"themeCityHash":"11249351944727281660","contentLanguage":"en","currency":"USD","eventMetadataId":"54eeb04d-e60c-44d1-b227-9b197639184c"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain","enabledBetaFlags":["764d78cb","8450a54b"]},"Session Attribution":{},"S2S":{"facebookCapiEnabled":true,"source":"trekkie-storefront-renderer","apiClientId":580111}} 1250 ); 1251 1252 var loaded = false;
1253 trekkie.ready(function() { 1254 if (loaded) return; 1255 loaded = true; 1256 1257 window.ShopifyAnalytics.lib = window.trekkie; 1258 1259 var originalDocumentWrite = document.write; 1260 document.write = customDocumentWrite; 1261 try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {}; 1262 document.write = originalDocumentWrite; 1263 1264 var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/) 1265 var token = match? match[1]: undefined; 1266 if (!hasLoggedConversion(token)) { 1267 setCookieIfConversion(token); 1268 1269 } 1270 }); 1271 1272 window.ShopifyAnalytics.lib.page(null,{"pageType":"cart","requestId":"ee2be3a0-dde3-442c-a44a-ba08bdb5ae33-1790234853","shopifyEmitted":true}); 1273 1274 var eventsListenerScript = document.createElement('script'); 1275 eventsListenerScript.async = true; 1276 eventsListenerScript.src = "//bkconnection.com/cdn/shopifycloud/storefront/assets/shop_events_listener-4e26a9ce.js"; 1277 document.getElementsByTagName('head')[0].appendChild(eventsListenerScript); 1278})();</script>
vendor: 1 bytes, line 1278
1278
1279<script 1280 defer 1281 src="https://bkconnection.com/cdn/shopifycloud/perf-kit/shopify-perf-kit-3.9.4.min.js" 1282 data-application="storefront-renderer" 1283 data-shop-id="89993085291" 1284 data-render-region="gcp-us-central1" 1285 data-page-type="cart" 1286 data-theme-instance-id="177306042731" 1287 data-theme-name="Eurus" 1288 data-theme-version="8.7.0" 1289 data-monorail-region="shop_domain" 1290 data-resource-timing-sampling-rate="10" 1291 data-shs="true" 1292 data-shs-beacon="true" 1293 data-shs-export-with-fetch="true" 1294 data-shs-logs-sample-rate="1" 1295 data-shs-beacon-endpoint="https://bkconnection.com/api/collect" 1296></script>
1296 1297<meta name="shopify-y" content="6fc6f3c1-fcb8-497e-b955-09295d6e72d2" data-expiration="1821792453000"><meta name="shopify-s" content="bc0b63ad-196e-4002-8736-df780a2b96cb" data-expiration="1790236653000"><meta name="new-cookie-storage-activated" content="t"> 1298</head> 1299 <body 1300 class="gradient scrollbar-body overflow-x-hidden text-[0.7875rem] md:text-[0.875rem]" 1301 x-data="{ runDispatch: true }" 1302 :class="($store.xPopup.open || $store.xPopup.openVideoShopping) && 'overflow-hidden padding-scrollbar'" 1303 x-init="$store.xPopup.setWidthScrollbar();" 1304 x-on:mouseover="if (runDispatch) { $dispatch('init-run'); runDispatch = false; }" 1305 x-on:touchstart="if (runDispatch) { 1306 if (event.target.parentNode.parentNode.id == 'SearchOpen' || event.target.parentNode.id == 'SearchOpen') { setTimeout(() => { document.querySelector('#SearchOpen').click() }, 200) } 1307 if (event.target.parentNode.parentNode.id == 'cart-icon' || event.target.parentNode.id == 'cart-icon') { setTimeout(() => { document.querySelector('#cart-icon').click() }, 200) } 1308 if (event.target.parentNode.id == 'mobile-navigation' || event.target.id == 'mobile-navigation') { setTimeout(() => { document.querySelector('#mobile-navigation').click() }, 200) } 1309 $dispatch('init-run'); runDispatch = false; 1310 }" 1311 ><div 1312 class="hidden" 1313 x-data='xTabAttention({ 1314 message1: "ð Psst...", 1315 message2: "Donât forget your books!", 1316 delay: 3 1317 })' 1318 > 1319 </div> 1320
1320<script src="//bkconnection.com/cdn/shop/t/4/assets/tab-attention.js?v=135415189931050011531747335364" defer></script>
1320<div 1321 x-data="{ loading: true }" 1322 x-intersect= 1323 " 1324 window.onload = () => { 1325 loading = false; 1326 setTimeout(() => { 1327 $el.remove(); 1328 }, 1000); 1329 } 1330 " 1331 x-show="loading" 1332 x-transition:leave="transition-all ease-in-out duration-1000" 1333 x-transition:leave-start="opacity-100" 1334 x-transition:leave-end="opacity-0" 1335 class="fixed top-0 left-0 w-full h-full bg-black z-[9999]" 1336 ></div><div class="main-container flex flex-col min-h-screen relative"> 1337 <a class="skip-to-content absolute -z-10 button button-solid hidden lg:block pt-2.5 pb-2.5 pl-6 pr-6 lg:pt-3 lg:pb-3 mt-0.5 ml-0.5 leading-normal justify-center cursor-pointer focus-visible:z-60" href="#MainContent"> 1338 Skip to content 1339 </a> 1340 1341 1342 <!-- BEGIN sections: header-group-puff --> 1343<div id="shopify-section-sections--24498229674347__announcement-bar" class="shopify-section shopify-section-group-header-group-puff section-announcement"><style data-shopify>#x-announcement-bar .arrow { 1344 background: transparent; 1345 border: 0; 1346 box-shadow: none; 1347 color: #ffffff; 1348 } 1349 .dark #x-announcement-bar .arrow { 1350 color: #ffffff; 1351 } 1352 .announcement-bar_container-sections--24498229674347__announcement-bar { 1353 1354 background: #4e628c; 1355 1356 1357 --colors-text-link: 255,255,255; 1358 1359 } 1360 .dark .announcement-bar_container-sections--24498229674347__announcement-bar { 1361 1362 background: #ffffff; 1363 1364--colors-text-link: 255,255,255; 1365 1366 } 1367 .announcement-bar_text { 1368 1369 color: #ffffff; 1370 --colors-line-and-border: 255,255,255; 1371 1372 } 1373 .dark .announcement-bar_text { 1374 1375 color: #ffffff; 1376 --colors-line-and-border: 255,255,255; 1377 1378 } 1379 1380 .section-announcement { 1381 position: sticky; 1382 top: 0; 1383 z-index: 30; 1384 } 1385 1386</style><div 1387 id="x-announcement" 1388 class="announcement-bar_container-sections--24498229674347__announcement-bar ltr mx-auto flex items-center lg:pl-5 lg:pr-5" 1389 1390 data-is-sticky="true" 1391 x-init='$store.xHeaderMenu.setVariableHeightHeader(true);document.documentElement.style.setProperty("--top-cart-noti", $el.offsetHeight + "px")' 1392 1393 > 1394 1395 <div id="x-slide-announcement-bar" class="disable-effect-hover grow flex-1 x-splide splide has-toolbar:lg:pr-5 has-toolbar:lg:pl-5 overflow-hidden visible relative"> 1396 <div class="splide__track x-pgw page-width mx-auto pl-0 pr-0"> 1397 <div class="splide__list w-full flex md:block"><style data-shopify>.text--promo_code_LtceAD .width-countdown { 1398 width: 7.875rem; 1399 }.text--promo_code_LtceAD, 1400 .btn--promo_code_LtceAD { 1401 font-size: 0.7875rem; 1402 } 1403 @media (min-width: 768px) { 1404 .text--promo_code_LtceAD, 1405 .btn--promo_code_LtceAD { 1406 font-size: 0.875rem; 1407 } 1408 }.icon--promo_code_LtceAD { 1409 width: 0.875rem; 1410 height: 0.875rem; 1411 } 1412 .button.text_button_announ--promo_code_LtceAD { 1413 1414 color: ; 1415 1416 1417 background: ; 1418 1419 } 1420 .dark .button.text_button_announ--promo_code_LtceAD { 1421 1422 color: ; 1423 1424 1425 background: ; 1426 1427 } 1428 @media(min-width: 768px){ 1429 .button.text_button_announ--promo_code_LtceAD { 1430 1431 color: ; 1432 1433 1434 background: ; 1435 1436 } 1437 .dark .button.text_button_announ--promo_code_LtceAD { 1438 1439 color: ; 1440 1441 1442 background: ; 1443 1444 } 1445 } 1446 .text-link-with-arrow--promo_code_LtceAD { 1447 1448 color: ; 1449 1450 } 1451 .dark .text-link-with-arrow--promo_code_LtceAD { 1452 1453 color: ; 1454 1455 } 1456 .hyperlink-circle-color--promo_code_LtceAD { 1457 1458 background-color: ; 1459 1460 } 1461 .dark .hyperlink-circle-color--promo_code_LtceAD { 1462 1463 background-color: ; 1464 1465 }</style><div x-slide-index="0" class="h-auto w-full flex items-center md:flex justify-center splide__slide x-splide-slide gradient text-center py-3 pl-5 pr-5 lg:pr-5 lg:pl-5" ><div 1466 1467 class="flex items-center flex-wrap justify-center gap-x-3 gap-y-2 ltr"> 1468 1469 <div class="text--promo_code_LtceAD announcement-bar_text flex"> 1470 <div class="flex items-center mr-2 md:mr-3">
1471 <span class="inline-block icon--promo_code_LtceAD"> 1472 1473 1474 <svg style="fill: none" width="100%" height="100%" viewBox="0 0 100 100" fill="none" xmlns="http://www.w3.org/2000/svg"> 1475 1476 <path d="M82.014 81.4682C82.9266 81.4249 83.7816 81.3819 84.5788 81.3392C89.4574 81.0791 93.3634 77.4062 93.8209 72.5421C94.3446 66.9748 94.9026 58.806 94.9883 48.7181C95.0031 46.9622 94.6465 45.2166 93.8269 43.6637C91.7033 39.6399 86.7368 31.4649 79.2625 26.5346C77.6811 25.4914 75.8067 25.0363 73.9135 24.9726C68.4795 24.7899 62.4917 24.654 56.4004 24.5537" stroke="currentColor" stroke-width="6" stroke-linecap="round" stroke-linejoin="round"/> 1477 <path d="M5.03186 52.1426C5.01116 53.301 5 54.4714 5 55.6483C5 63.1393 5.45204 69.0527 5.94076 73.257C6.46807 77.7934 10.1829 81.0538 14.7429 81.3049C15.7279 81.3592 16.8088 81.4149 17.9856 81.4706" stroke="currentColor" stroke-width="6" stroke-linecap="round" stroke-linejoin="round"/> 1478 <path fill-rule="evenodd" clip-rule="evenodd" d="M72.1487 35.3834C76.8229 38.0336 80.2299 43.139 82.2236 46.8425C83.4471 49.1154 82.0562 51.7756 79.4846 51.9976C75.9714 52.3008 72.7507 52.0781 70.4809 51.7979C68.5095 51.5542 67.1426 49.8378 67.1426 47.8514V38.4697C67.1426 36.5534 68.6959 35 70.6123 35C71.1489 35 71.6818 35.1187 72.1487 35.3834Z" stroke="currentColor" stroke-width="6" stroke-linecap="round" stroke-linejoin="round"/> 1479 <path d="M56.4286 52.1429H30.7143H5V28.5714C5 22.1924 5.20179 17.2929 5.44154 13.7231C5.74799 9.15986 9.26649 5.71865 13.8318 5.44458C17.7758 5.20779 23.3384 5 30.7143 5C38.0902 5 43.6526 5.20779 47.5968 5.44458C52.1621 5.71865 55.6805 9.15986 55.9869 13.7231C56.2267 17.2929 56.4286 22.1924 56.4286 28.5714V52.1429Z" stroke="currentColor" stroke-width="6" stroke-linecap="round" stroke-linejoin="round"/> 1480 <path d="M41.3779 82.1011C44.0901 82.1283 46.9641 82.1437 50.0001 82.1437C53.0372 82.1437 55.9121 82.1283 58.6251 82.1011" stroke="currentColor" stroke-width="6" stroke-linecap="round" stroke-linejoin="round"/> 1481 <path d="M58.5713 83.2144C58.5713 89.7236 63.8479 95.0001 70.357 95.0001C76.8661 95.0001 82.1427 89.7236 82.1427 83.2144C82.1427 76.7053 76.8661 71.4287 70.357 71.4287C63.8479 71.4287 58.5713 76.7053 58.5713 83.2144Z" stroke="currentColor" stroke-width="6" stroke-linecap="round" stroke-linejoin="round"/> 1482 <path d="M17.8564 83.2144C17.8564 89.7236 23.133 95.0001 29.6422 95.0001C36.1513 95.0001 41.4279 89.7236 41.4279 83.2144C41.4279 76.7053 36.1513 71.4287 29.6422 71.4287C23.133 71.4287 17.8564 76.7053 17.8564 83.2144Z" stroke="currentColor" stroke-width="6" stroke-linecap="round" stroke-linejoin="round"/> 1483 1484 </svg> 1485 1486 1487 1488 </span> 1489 </div> 1490 1491 1492<p class="x-announcement-bar-block-data leading-[initial]">FREE shipping on orders over $65!</p></div> 1493 <style data-shopify> 1494 .button-coupon--promo_code_LtceAD {color: #ffffff; 1495 border-color: #ffffff; 1496 } 1497 .dark .button-coupon--promo_code_LtceAD { 1498 color: var(--colors-button-hover); 1499 border-color: var(--colors-button-hover); 1500 1501 } 1502 </style> 1503 <div> 1504 <button :title="copySuccess?'Copied':'Copy code'" x-data='xCouponCode' x-on:click="copyCode()" class="button-coupon--promo_code_LtceAD border rounded-full border-dashed overflow-hidden items-center flex btn--promo_code_LtceAD none_transition empty:hidden center pl-2 pr-2 pt-1 pb-1 md:pl-3 md:pr-2.5"> 1505 <p x-ref="code_value"> 1506 FREESHIP 1507 </p> 1508 <div class="md:ml-4 ml-3 flex items-center">
1509 <span class="icon--promo_code_LtceAD inline-block" x-show="!copySuccess" 1510 x-transition:enter="transition-all absolute ease-in-out duration-300" 1511 x-transition:enter-start="opacity-0 absolute transform translate-y-full" 1512 x-transition:enter-end="opacity-100 absolute transform translate-y-0" 1513 x-transition:leave="transition-all absolute ease-in-out duration-300" 1514 x-transition:leave-end="opacity-0 transform absolute -translate-y-full"> 1515 <svg width="100%" height="100%" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none;"> 1516 <path d="M16.6154 2H3.53846C2.68879 2 2 2.68879 2 3.53846V16.6154C2 17.4651 2.68879 18.1538 3.53846 18.1538H16.6154C17.4651 18.1538 18.1538 17.4651 18.1538 16.6154V3.53846C18.1538 2.68879 17.4651 2 16.6154 2Z" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 1517 <path d="M22 6.61536V20.4615C22 20.8695 21.8378 21.2609 21.5494 21.5494C21.2609 21.8378 20.8695 22 20.4615 22H6.61536" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 1518 </svg> 1519 1520 </span> 1521 <span class="icon--promo_code_LtceAD inline-block" x-show="copySuccess" x-cloak 1522 x-transition:enter="transition-all ease-in-out duration-300" 1523 x-transition:enter-start="opacity-0 transform translate-y-full" 1524 x-transition:enter-end="opacity-100 transform translate-y-0" 1525 x-transition:leave="transition ease-in-out duration-300" 1526 x-transition:leave-end="opacity-0 transform -translate-y-full"> 1527 <svg width="100%" height="100%" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg"> 1528 <g clip-path="url(#clip0_1602_2141)"> 1529 <path fill="none" d="M20.3232 6.71851L9.32324 17.7185L4.32324 12.7185" stroke="currentcolor" stroke-width="5" stroke-linecap="square" stroke-linejoin="round"/> 1530 </g> 1531 </svg> 1532 1533 </span> 1534 </div> 1535 </button> 1536 </div> 1537
1537<script src="//bkconnection.com/cdn/shop/t/4/assets/coupon-code.js?v=99683073096863989621747335364" defer></script>
1537 1538 1539</div></div></div> 1540 </div></div> 1541 1542 1543</div> 1544</div><div id="shopify-section-sections--24498229674347__header" class="shopify-section shopify-section-group-header-group-puff section-header"> 1545 1546<style data-shopify> 1547.logo-name { 1548 font-size: 1.125rem; 1549 } 1550 .transparent-header .logo-name, 1551 .transparent-header header { 1552 1553 color: #ffffff; 1554 1555 } 1556 .dark .transparent-header .logo-name, 1557 .dark .transparent-header header { 1558 1559 color: #ffffff; 1560 1561 1562 } 1563 1564 header { 1565 grid-template-areas: "drawer heading icons"; 1566 1567 } 1568 @media (min-width: 1024px) { 1569 header { 1570 grid-template-areas: "heading navigation icons" ". . ."; 1571 grid-template-columns: 1fr 4fr 1fr; 1572 } 1573 .logo-name { 1574 font-size: 2.25rem; 1575 } 1576 .pt-header { 1577 padding-top: 12px; 1578 } 1579 .pb-header { 1580 padding-bottom: 12px; 1581 } 1582 }</style><div x-show="$store.xHeaderMenu.overlay" 1583 x-transition:enter="ease-in-out duration-300" 1584 x-transition:enter-start="opacity-0" 1585 x-transition:enter-end="opacity-100" 1586 x-transition:leave="transition-all ease-in-out duration-300" 1587 x-transition:leave-end="opacity-0" 1588 class="bg-[rgba(0,0,0,0.4)] hidden lg:flex fixed top-0 right-0 bottom-0 left-0 z-20" x-cloak> 1589</div> 1590<div 1591 id="x-header-container" 1592 class="relative text-[rgb(var(--colors-text-header))] z-50" 1593 x-init='$store.xHeaderMenu.removeStickyHeader();$store.xHeaderMenu.initSticky($el, "shopify-section-sections--24498229674347__header", "always", false); $store.xHeaderMenu.mobileHeaderLayout="center-left";' 1594 1595 x-intersect:leave="$store.xHeaderMenu.handleAlwaysSticky()" 1596 data-is-sticky="true" 1597 :class="$store.xMiniCart.open && 'z-[60]'" 1598 1599 @click.away="$store.xHeaderMenu.openHamburgerMenu = false;" 1600 1601> 1602 <div id="sticky-header" class="shopify-header text-[rgb(var(--colors-text-header))] background-header" 1603 x-intersect="$store.xHeaderMenu.setVariableHeightHeader(true)" 1604 > 1605 <div 1606 id="sticky-header-content" 1607 class="sticky-header-content z-20 w-full top-0 1608 header-full-width" 1609 :class="{ 'background-header sticky-header-active': ($store.xHeaderMenu.isSticky || $store.xHeaderMenu.overlay), 'padding-scrollbar-header': $store.xHeaderMenu.isSticky && ($store.xPopup.open || $store.xPopup.openVideoShopping), 'static': $store.xHeaderMenu.overlay, 'relative': !$store.xHeaderMenu.overlay}" 1610 1611 x-intersect.once="$store.xHeaderMenu.setTopStickyHeader()" 1612 > 1613 <header 1614 class="header lg:pb-0 pt-[16px] pb-[16px] pt-header lg:pb-0 full-width grid lg:mx-auto gap-x-2" :class="{ ' lg:pt-5': !$store.xHeaderMenu.isSticky, 'open-menu': $store.xHeaderMenu.overlay }" 1615 1616 > 1617 <div data-breakpoint="tablet" class="x-container-header-mobile-nav [grid-area:drawer] lg:hidden flex items-center w-full"> 1618 1619 1620 <style data-shopify> 1621 .mobile-navigation-modern-icon-bg{ 1622 background: rgba(var(--colors-line-header),1) 1623 } 1624 </style> 1625 <div 1626 id="mobile-navigation" 1627 @click="setTimeout(() => { $store.xMobileNav.open() }, 0)" 1628 class="relative p-2 mobile-navigation-modern-icon-bg rounded-full cursor-pointer " 1629 > 1630 <div class="w-5 h-5"><svg width="100%" height="100%" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none;"> 1631 <path d="M4 8H20" stroke="currentColor" stroke-width="2" stroke-linecap="round"/> 1632 <path d="M4 16H20" stroke="currentColor" stroke-width="2" stroke-linecap="round"/> 1633 </svg> 1634</div> 1635 </div> 1636 </div> 1637 <div class="logo-name p-break-words lg:order-2 top-4 text-center [grid-area:heading] mx-auto justify-center pb-header flex items-center lg:justify-left lg:relative lg:left-0 lg:translate-x-0 lg:mt-0 lg:top-0 lg:[grid-area:auto] lg:ml-0" 1638 > 1639 1640 1641 1642<div class="flex"> 1643 <a href="/" class="w-[150px] md:w-[200px] h-auto disable-effect inline-block"><span class="hidden dark:block h-0 dark:h-auto mx-auto md:ml-0">Berrett-Koehler Publishers</span><img 1644 src="//bkconnection.com/cdn/shop/files/BK_logo_97f0e71e-3713-4724-a586-1b199f02c873.png?v=1752261701&width=2400" 1645 alt="Berrett-Koehler Publishers" 1646 sizes="(min-width: 768px) 200px, 150px" 1647 srcset="//bkconnection.com/cdn/shop/files/BK_logo_97f0e71e-3713-4724-a586-1b199f02c873.png?v=1752261701&width=50 50w, 1648 //bkconnection.com/cdn/shop/files/BK_logo_97f0e71e-3713-4724-a586-1b199f02c873.png?v=1752261701&width=100 100w, 1649 //bkconnection.com/cdn/shop/files/BK_logo_97f0e71e-3713-4724-a586-1b199f02c873.png?v=1752261701&width=150 150w, 1650 //bkconnection.com/cdn/shop/files/BK_logo_97f0e71e-3713-4724-a586-1b199f02c873.png?v=1752261701&width=200 200w, 1651 //bkconnection.com/cdn/shop/files/BK_logo_97f0e71e-3713-4724-a586-1b199f02c873.png?v=1752261701&width=250 250w, 1652 //bkconnection.com/cdn/shop/files/BK_logo_97f0e71e-3713-4724-a586-1b199f02c873.png?v=1752261701&width=300 300w, 1653 //bkconnection.com/cdn/shop/files/BK_logo_97f0e71e-3713-4724-a586-1b199f02c873.png?v=1752261701&width=400 400w, 1654 //bkconnection.com/cdn/shop/files/BK_logo_97f0e71e-3713-4724-a586-1b199f02c873.png?v=1752261701&width=500 500w, 1655 //bkconnection.com/cdn/shop/files/BK_logo_97f0e71e-3713-4724-a586-1b199f02c873.png?v=1752261701&width=600 600w" 1656 width="2400" 1657 height="600" 1658 class="header-logo block dark:hidden dark:absolute mx-auto md:ml-0" 1659 loading="eager" 1660 fetchpriority="high" 1661 decoding="sync" 1662 /></a> 1663</div> 1664 1665 </div><div 1666 class="x-container-header-icons justify-end lg:order-4 [grid-area:icons] lg:[grid-area:auto] pb-header flex" 1667 >
1668 <div class="x-header-store-selector-container self-center md:block hidden md:mr-2.5 md:ml-3"></div><style data-shopify> 1669 1670 @media (max-width: 767px) { 1671 .mobile-center-left #SearchOpen { 1672 left: 3.5rem; 1673 } 1674 .mobile-center-right #SearchOpen { 1675 right: 3.5rem; 1676 } 1677 } 1678 1679 </style> 1680 <div class="x-header-icon-search flex items-center justify-center mobile-center-left" @init-run.window="$store.xHeaderMenu.renderAjax($el, 'header-search-block', '#ajax-loading-header-search');"> 1681 <a 1682 id="SearchOpen" 1683 href="/search" 1684 aria-label="search" 1685 class="flex items-center cursor-pointer justify-center link focus-inset bg-none" 1686 @click.prevent="setTimeout(() => { $store.xModal.setActiveElement('SearchOpen'); }, 0)"> 1687 <span class="w-11 h-10 px-3 pt-2.5 pb-2"><svg width="100%" height="100%" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none;"> 1688 <path d="M11.4545 19.6364C15.9732 19.6364 19.6363 15.9732 19.6363 11.4545C19.6363 6.93585 15.9732 3.27273 11.4545 3.27273C6.93583 3.27273 3.27271 6.93585 3.27271 11.4545C3.27271 15.9732 6.93583 19.6364 11.4545 19.6364Z" stroke="currentColor" stroke-width="2"/> 1689 <path d="M17 18L21 22" stroke="currentColor" stroke-width="2" stroke-linecap="round"/> 1690 </svg> 1691 1692</span> 1693 </a> 1694 </div> 1695 <a href="/customer_authentication/login?return_to=%2Fcart&locale=en&ui_hint=full®ion_country=US" 1696 aria-label="Log in" 1697 class="header-icon-account hidden lg:flex relative items-center justify-center"> 1698 <span class="w-11 h-10 pl-3 pr-2.5 pt-2.5 pb-2"> 1699 <svg width="100%" height="100%" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none;"> 1700 <path d="M20 21V19C20 17.9391 19.5786 16.9217 18.8284 16.1715C18.0783 15.4214 17.0609 15 16 15H7.99999C6.93913 15 5.92171 15.4214 5.17157 16.1715C4.42142 16.9217 4 17.9391 4 19V21" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 1701 <path d="M12 11C14.2092 11 16.0001 9.20914 16.0001 7C16.0001 4.79086 14.2092 3 12 3C9.79093 3 8.00006 4.79086 8.00006 7C8.00006 9.20914 9.79093 11 12 11Z" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 1702 </svg> 1703 1704 </span> 1705 </a><div class="header-icon-cart cursor-pointer relative flex items-center"> 1706 <a 1707 id="cart-icon" 1708 href="/cart" 1709 class="relative flex items-center" 1710 1711 @click.prevent="setTimeout(() => { $store.xModal.setActiveElement('cart-icon'); $store.xMiniCart.openCart(); }, 0)" 1712 :class="$store.xMiniCart.open && 'pointer-events-none'" 1713 1714 aria-controls="CartDrawer" 1715 aria-expanded="false" 1716 aria-label="icon-cart" 1717 > 1718 <span class="w-11 h-10 md:pl-3 inline-block pl-3 pr-0 md:pr-2.5 pt-2.5 pb-2"> 1719 <svg width="100%" height="100%" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill:none;"> 1720 <path d="M20.1417 19.463C20.1636 19.6573 20.1439 19.8539 20.0842 20.0401C20.0246 20.2262 19.9263 20.3976 19.7956 20.543C19.6646 20.6881 19.5042 20.804 19.3253 20.8827C19.1463 20.9615 18.9526 21.0015 18.7571 21H5.24324C5.04769 21.0015 4.85405 20.9615 4.67506 20.8827C4.49607 20.804 4.33578 20.6881 4.20477 20.543C4.07411 20.3976 3.97571 20.2262 3.91605 20.0401C3.85639 19.8539 3.83681 19.6573 3.85862 19.463L5.07708 8.5384H18.9232L20.1417 19.463Z" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 1721 <path d="M8.53864 8.53847V6.46154C8.53864 5.54349 8.90333 4.66302 9.55249 4.01386C10.2017 3.3647 11.0821 3 12.0002 3C12.9182 3 13.7987 3.3647 14.4479 4.01386C15.097 4.66302 15.4617 5.54349 15.4617 6.46154V8.53847" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 1722 </svg> 1723 </span> 1724 <div id="cart-icon-bubble" class="count_item absolute -top-0.5 1725 -right-1.5 1726 md:right-0 " data-value="0"> 1727 <div class="bg-[rgba(var(--colors-cart))] text-[rgba(var(--colors-cart-text))] font-medium h-5 w-5 rounded-full text-[10px] hidden"><span class="h-full flex items-center justify-center mt-[1px]" aria-hidden="true">0</span></div> 1728 </div> 1729 </a> 1730 </div></div> 1731 1732 1733 1734 1735 1736<style data-shopify> 1737 .svg-highlight-sections--24498229674347__header { 1738 1739 --color-highlight: #f8c000; 1740 1741 } 1742 .dark .svg-highlight-sections--24498229674347__header { 1743 1744 --color-highlight: #4d6391; 1745 1746 } 1747 1748 .x-icon-caret svg { 1749 color: var(--colors-text-header); 1750 --tw-rotate: 0deg; 1751 transform: rotate(var(--tw-rotate)); 1752 transition: transform 0.5s ease 0.1s; 1753 } 1754 1755 .clicked .x-icon-caret svg { 1756 color: var(--colors-text-link); 1757 --tw-rotate: 180deg; 1758 } 1759 1760</style><nav x-on:click.away="$store.xHeaderMenu.hideMenu($el)" class="x-container-header-nav [grid-area:navigation] w-full pb-header lg:[grid-area:auto] order-3 hidden header__inline-menu lg:flex items-center justify-center"> 1761 <ul class="duration-500 list-menu inline-flex flex-wrap items-center justify-center"> 1762<li x-data='{ active: false }' 1763 class="pr-5 simple_menu pl-5 has-dropdown" 1764 @mouseover.once="$store.xHeaderMenu.initToggleMenuHeight($el)" 1765 1766 1767 x-on:mouseover="$el.classList.add('is-focus');" 1768 @mouseleave="$el.classList.remove('is-focus');" 1769 @focusin="$el.classList.add('is-focus');" 1770 @focusout="$el.classList.remove('is-focus');" 1771 1772 > 1773 <div class="simple_menu_item relative cursor-pointer flex items-center p-break-words justify-center pt-1 pb-1 duration-200 hover-text-link transition is-focus:link-active" 1774 1775 1776 @click="$store.xHeaderMenu.clickItem($el, $event, false, false, false)" 1777 1778 1779 > 1780 <div class=" flex items-center"> 1781 <div class="relative"> 1782 <a href="#" 1783 class=" cursor-pointer flex items-center p-break-words justify-center pt-1 pb-1 duration-200 hover-text-link transition is-focus:link-active" 1784 > 1785 1786 1787 1788 1789
1790 <span>Shop</span> 1791 1792 1793 1794 </a> 1795 1796 </div><span class="x-icon-caret w-5 pl-2"><svg width="100%" height="100%" viewBox="0 0 9 7" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none;"> 1797 <path d="M0.75 1.625L4.5 5.375L8.25 1.625" stroke="currentcolor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 1798 </svg> 1799</span></div> 1800 </div><div id="menu-1"></div></li> 1801<li x-data='{ active: false }' 1802 class="pr-5 tabbed_menu pl-5 has-dropdown" 1803 1804 1805 x-on:mouseover="$el.classList.add('is-focus');" 1806 @mouseleave="$el.classList.remove('is-focus');" 1807 @focusin="$el.classList.add('is-focus');" 1808 @focusout="$el.classList.remove('is-focus');" 1809 1810 > 1811 <div class="tabbed_menu_item cursor-pointer relative hover-text-link flex items-center is-focus:link-active" 1812 1813 1814 @click="$store.xHeaderMenu.clickItem($el, $event, false, false, false)" 1815 1816 1817 > 1818 <div class=" flex items-center"> 1819 <div class="relative"> 1820 <a href="#" 1821 class=" cursor-pointer flex items-center p-break-words justify-center pt-1 pb-1 duration-200 hover-text-link transition is-focus:link-active" 1822 1823 > 1824 1825 1826 1827 1828 1829 <span>Offers</span> 1830 1831 1832 1833 </a> 1834 1835 </div><span class="x-icon-caret w-5 pl-2"><svg width="100%" height="100%" viewBox="0 0 9 7" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none;"> 1836 <path d="M0.75 1.625L4.5 5.375L8.25 1.625" stroke="currentcolor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 1837 </svg> 1838</span></div> 1839 </div> 1840 1841 <div id="menu-2"></div> 1842 1843 </li> 1844<li 1845 id="tree_menu_qnqE8m" 1846 class="pr-5 tree-menu pl-5 relative has-dropdown" 1847 1848 1849 x-on:mouseover="$el.classList.add('is-focus');" 1850 @mouseleave="$el.classList.remove('is-focus');" 1851 @focusin="$el.classList.add('is-focus');" 1852 @focusout="$el.classList.remove('is-focus');" 1853 1854 > 1855 <div class="relative cursor-pointer tree-menu-item p-break-words flex items-center justify-center pt-1 pb-1 relative duration-200 transition hover-text-link is-focus:link-active" x-data='{ active: false }' 1856 1857 1858 @click="$store.xHeaderMenu.clickItem($el, $event, false, false, false)" 1859 1860 1861 > 1862 <div class=" flex items-center"> 1863 <div class="relative"> 1864 <a 1865 href="/pages/author-services" 1866 class=" cursor-pointer tree-menu-item p-break-words flex items-center justify-center pt-1 pb-1 relative duration-200 transition hover-text-link is-focus:link-active" 1867 1868 > 1869 1870 1871 1872 1873 1874 <span>Services</span> 1875 1876 1877 1878 </a></div><span class="x-icon-caret w-5 pl-2"><svg width="100%" height="100%" viewBox="0 0 9 7" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none;"> 1879 <path d="M0.75 1.625L4.5 5.375L8.25 1.625" stroke="currentcolor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 1880 </svg> 1881</span></div> 1882 </div><div class="toggle-menu toggle-menu-hidden text-[rgba(var(--colors-text))] absolute z-50 background-header top-full w-48 xl:w-[222px] shadow-md is-focus:text-[rgba(var(--colors-text))]" > 1883 <div class="tree-menu-nav" id="menu-3"> </div> 1884 </div></li> 1885<li 1886 id="tree_menu_4jytzF" 1887 class="pr-5 tree-menu pl-5 relative has-dropdown" 1888 1889 1890 x-on:mouseover="$el.classList.add('is-focus');" 1891 @mouseleave="$el.classList.remove('is-focus');" 1892 @focusin="$el.classList.add('is-focus');" 1893 @focusout="$el.classList.remove('is-focus');" 1894 1895 > 1896 <div class="relative cursor-pointer tree-menu-item p-break-words flex items-center justify-center pt-1 pb-1 relative duration-200 transition hover-text-link
1896is-focus:link-active" x-data='{ active: false }' 1897 1898 1899 @click="$store.xHeaderMenu.clickItem($el, $event, false, false, false)" 1900 1901 1902 > 1903 <div class=" flex items-center"> 1904 <div class="relative"> 1905 <a 1906 href="#" 1907 class=" cursor-pointer tree-menu-item p-break-words flex items-center justify-center pt-1 pb-1 relative duration-200 transition hover-text-link is-focus:link-active" 1908 1909 > 1910 1911 1912 1913 1914 1915 <span>Get Published</span> 1916 1917 1918 1919 </a></div><span class="x-icon-caret w-5 pl-2"><svg width="100%" height="100%" viewBox="0 0 9 7" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none;"> 1920 <path d="M0.75 1.625L4.5 5.375L8.25 1.625" stroke="currentcolor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 1921 </svg> 1922</span></div> 1923 </div><div class="toggle-menu toggle-menu-hidden text-[rgba(var(--colors-text))] absolute z-50 background-header top-full w-48 xl:w-[222px] shadow-md is-focus:text-[rgba(var(--colors-text))]" > 1924 <div class="tree-menu-nav" id="menu-4"> </div> 1925 </div></li> 1926<li x-data='{ active: false }' 1927 class="pr-5 simple_menu pl-5 has-dropdown" 1928 @mouseover.once="$store.xHeaderMenu.initToggleMenuHeight($el)" 1929 1930 1931 x-on:mouseover="$el.classList.add('is-focus');" 1932 @mouseleave="$el.classList.remove('is-focus');" 1933 @focusin="$el.classList.add('is-focus');" 1934 @focusout="$el.classList.remove('is-focus');" 1935 1936 > 1937 <div class="simple_menu_item relative cursor-pointer flex items-center p-break-words justify-center pt-1 pb-1 duration-200 hover-text-link transition is-focus:link-active" 1938 1939 1940 @click="$store.xHeaderMenu.clickItem($el, $event, false, false, false)" 1941 1942 1943 > 1944 <div class=" flex items-center"> 1945 <div class="relative"> 1946 <a href="#" 1947 class=" cursor-pointer flex items-center p-break-words justify-center pt-1 pb-1 duration-200 hover-text-link transition is-focus:link-active" 1948 > 1949 1950 1951 1952 1953 1954 1955 1956 1957<span 1958 class="highlight relative inline-block" 1959 x-data="{ isIntersecting: false }" 1960 x-intersect.once="isIntersecting = true" 1961 :class="isIntersecting && 'highlight-anm-start'" 1962> 1963 Members 1964 1965 1966 <svg class="svg-highlight svg-highlight-sections--24498229674347__header svg-underline absolute left-0 top-auto w-full h-[30%] -bottom-[20%]" xmlns="http://www.w3.org/2000/svg" width="216" height="13" viewBox="0 0 216 13" fill="none" style="fill: none;" preserveAspectRatio="none"> 1967 <path d="M0.406646 9.68922C49.5975 4.73865 161.298 -2.39378 214.572 8.68106" vector-effect="non-scaling-stroke" stroke="var(--color-highlight)" stroke-width="2.5px"/> 1968 </svg> 1969 1970 1971</span> 1972 1973 1974 1975 </a> 1976 1977 </div><span class="x-icon-caret w-5 pl-2"><svg width="100%" height="100%" viewBox="0 0 9 7" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none;"> 1978 <path d="M0.75 1.625L4.5 5.375L8.25 1.625" stroke="currentcolor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 1979 </svg> 1980</span></div> 1981 </div><div id="menu-5"></div></li> 1982<li 1983 id="tree_menu_Kz4jcQ" 1984 class="pr-5 tree-menu pl-5 relative has-dropdown" 1985 1986 1987 x-on:mouseover="$el.classList.add('is-focus');" 1988 @mouseleave="$el.classList.remove('is-focus');" 1989 @focusin="$el.classList.add('is-focus');" 1990 @focusout="$el.classList.remove('is-focus');" 1991 1992 > 1993 <div class="relative cursor-pointer tree-menu-item p-break-words flex items-center justify-center pt-1 pb-1 relative duration-200 transition hover-text-link
1993is-focus:link-active" x-data='{ active: false }' 1994 1995 1996 @click="$store.xHeaderMenu.clickItem($el, $event, false, false, false)" 1997 1998 1999 > 2000 <div class=" flex items-center"> 2001 <div class="relative"> 2002 <a 2003 href="#" 2004 class=" cursor-pointer tree-menu-item p-break-words flex items-center justify-center pt-1 pb-1 relative duration-200 transition hover-text-link is-focus:link-active" 2005 2006 > 2007 2008 2009 2010 2011 2012 <span>About</span> 2013 2014 2015 2016 </a></div><span class="x-icon-caret w-5 pl-2"><svg width="100%" height="100%" viewBox="0 0 9 7" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none;"> 2017 <path d="M0.75 1.625L4.5 5.375L8.25 1.625" stroke="currentcolor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 2018 </svg> 2019</span></div> 2020 </div><div class="toggle-menu toggle-menu-hidden text-[rgba(var(--colors-text))] absolute z-50 background-header top-full w-48 xl:w-[222px] shadow-md is-focus:text-[rgba(var(--colors-text))]" > 2021 <div class="tree-menu-nav" id="menu-6"> </div> 2022 </div></li> 2023<template x-teleport="#menu-1"> 2024<template x-if="!runDispatch"> 2025 <div class="toggle-menu toggle-menu-hidden text-[rgba(var(--colors-text))] mega-menu-horizontal main-nav-child-right is-focus:text-[rgba(var(--colors-text))] absolute w-full background-header left-0 z-50 shadow-md ltr overflow-hidden h-fit max-h-[80vh]"> 2026 <div> 2027 <div class="x-pgw page-width mx-auto flex promotion-horizontal image-count-1 md:max-h-[80vh]"><ul class="mega-nav order-2 scrollbar-body scrollbar-visible flex-wrap relative gap-5 xl:gap-8 flex mt-7 mb-8 flex-row z-50 left-0 right-0 w-4/5 top-full"><li class="relative w-24 lg:w-48"> 2028 <div class="font-semibold"> 2029<a href="/collections/books" class="nav-link relative transition duration-200 p-break-words hover-text-link inline-block mb-3"> 2030 Subjects 2031 </a> 2032 </div><ul class="list-unstyled" role="list"><li class="flex items-center pt-1.5 pb-1.5 relative font-normal font_menu-normal"> 2033<span class="flex-1"> 2034 <a href="/collections/leadership" class="nav-link relative transition duration-200 p-break-words hover-text-link inline-block"> 2035 Leadership 2036 </a> 2037 </span> 2038 </li><li class="flex items-center pt-1.5 pb-1.5 relative font-normal font_menu-normal"> 2039<span class="flex-1"> 2040 <a href="/collections/professional-development" class="nav-link relative transition duration-200 p-break-words hover-text-link inline-block"> 2041 Professional Development 2042 </a> 2043 </span> 2044 </li><li class="flex items-center pt-1.5 pb-1.5 relative font-normal font_menu-normal"> 2045<span class="flex-1"> 2046 <a href="/collections/workplace-culture" class="nav-link relative transition duration-200 p-break-words hover-text-link inline-block"> 2047 Workplace Culture 2048 </a> 2049 </span> 2050 </li><li class="flex items-center pt-1.5 pb-1.5 relative font-normal font_menu-normal"> 2051<span class="flex-1"> 2052 <a href="/collections/diversity-inclusion" class="nav-link relative transition duration-200 p-break-words hover-text-link inline-block"> 2053 Diversity & Inclusion 2054 </a> 2055 </span> 2056 </li><li class="flex items-center pt-1.5 pb-1.5 relative font-normal font_menu-normal"> 2057<span class="flex-1"> 2058 <a href="/collections/personal-growth" class="nav-link relative transition duration-200 p-break-words hover-text-link
2058inline-block"> 2059 Personal Growth 2060 </a> 2061 </span> 2062 </li><li class="flex items-center pt-1.5 pb-1.5 relative font-normal font_menu-normal"> 2063<span class="flex-1"> 2064 <a href="/collections/social-change" class="nav-link relative transition duration-200 p-break-words hover-text-link inline-block"> 2065 Social Change 2066 </a> 2067 </span> 2068 </li></ul></li><li class="relative w-24 lg:w-48"> 2069 <div class="font-semibold"> 2070<a href="/collections" class="nav-link relative transition duration-200 p-break-words hover-text-link inline-block mb-3"> 2071 Curations 2072 </a> 2073 </div><ul class="list-unstyled" role="list"><li class="flex items-center pt-1.5 pb-1.5 relative font-normal font_menu-normal"> 2074<span class="flex-1"> 2075 <a href="/collections/new-releases" class="nav-link relative transition duration-200 p-break-words hover-text-link inline-block"> 2076 New Releases 2077 </a> 2078 </span> 2079 </li><li class="flex items-center pt-1.5 pb-1.5 relative font-normal font_menu-normal"> 2080<span class="flex-1"> 2081 <a href="/collections/coming-soon" class="nav-link relative transition duration-200 p-break-words hover-text-link inline-block"> 2082 Coming Soon 2083 </a> 2084 </span> 2085 </li><li class="flex items-center pt-1.5 pb-1.5 relative font-normal font_menu-normal"> 2086<span class="flex-1"> 2087 <a href="/collections/bestsellers" class="nav-link relative transition duration-200 p-break-words hover-text-link inline-block"> 2088 Bestsellers 2089 </a> 2090 </span> 2091 </li><li class="flex items-center pt-1.5 pb-1.5 relative font-normal font_menu-normal"> 2092<span class="flex-1"> 2093 <a href="/collections/award-winners" class="nav-link relative transition duration-200 p-break-words hover-text-link inline-block"> 2094 Award Winners 2095 </a> 2096 </span> 2097 </li><li class="flex items-center pt-1.5 pb-1.5 relative font-normal font_menu-normal"> 2098<span class="flex-1"> 2099 <a href="/collections/higher-education" class="nav-link relative transition duration-200 p-break-words hover-text-link inline-block"> 2100 Higher Education 2101 </a> 2102 </span> 2103 </li><li class="flex items-center pt-1.5 pb-1.5 relative font-normal font_menu-normal"> 2104<span class="flex-1"> 2105 <a href="/collections/essential-workbooks" class="nav-link relative transition duration-200 p-break-words hover-text-link inline-block"> 2106 Essential Workbooks 2107 </a> 2108 </span> 2109 </li><li class="flex items-center pt-1.5 pb-1.5 relative font-normal font_menu-normal"> 2110<span class="flex-1"> 2111 <a href="/collections/companion-card-decks" class="nav-link relative transition duration-200 p-break-words hover-text-link inline-block"> 2112 Companion Card Decks 2113 </a> 2114 </span> 2115 </li></ul></li><li class="relative w-24 lg:w-48"> 2116 <div class="font-semibold"> 2117<a href="/collections" class="nav-link relative transition duration-200 p-break-words hover-text-link inline-block mb-3"> 2118 Signature Collections 2119 </a> 2120 </div><ul class="list-unstyled" role="list"><li class="flex items-center pt-1.5 pb-1.5 relative font-normal font_menu-normal"> 2121<span class="flex-1"> 2122 <a href="/collections/no-kings-library" class="nav-link relative transition duration-200 p-break-words hover-text-link
2122inline-block"> 2123 No Kings Library 2124 </a> 2125 </span> 2126 </li><li class="flex items-center pt-1.5 pb-1.5 relative font-normal font_menu-normal"> 2127<span class="flex-1"> 2128 <a href="/collections/the-hidden-history-series" class="nav-link relative transition duration-200 p-break-words hover-text-link inline-block"> 2129 The Hidden History Series 2130 </a> 2131 </span> 2132 </li><li class="flex items-center pt-1.5 pb-1.5 relative font-normal font_menu-normal"> 2133<span class="flex-1"> 2134 <a href="/collections/the-ken-blanchard-library" class="nav-link relative transition duration-200 p-break-words hover-text-link inline-block"> 2135 The Ken Blanchard Library 2136 </a> 2137 </span> 2138 </li><li class="flex items-center pt-1.5 pb-1.5 relative font-normal font_menu-normal"> 2139<span class="flex-1"> 2140 <a href="/collections/the-remote-work-collection-1" class="nav-link relative transition duration-200 p-break-words hover-text-link inline-block"> 2141 The Remote Work Collection 2142 </a> 2143 </span> 2144 </li><li class="flex items-center pt-1.5 pb-1.5 relative font-normal font_menu-normal"> 2145<span class="flex-1"> 2146 <a href="/collections/black-history-collection" class="nav-link relative transition duration-200 p-break-words hover-text-link inline-block"> 2147 Black History Collection 2148 </a> 2149 </span> 2150 </li></ul></li></ul><div class="relative float-right md:right-5 lg:right-0 pt-8 pb-8 w-1/5 order-4"> 2151 <div class="mega-nav-promotions scrollbar-body scrollbar-visible overflow-y-auto flex gap-5"><style data-shopify> 2152 .image-simple_menu_qVN9bW-1 { 2153 height: 150px; 2154 } 2155 </style> 2156 2157 <div class="mega-menu-card w-full group relative background-color-simple_menu_qVN9bW-1 ltr rounded-[10px]"> 2158 2159<style data-shopify>.title-color-simple_menu_qVN9bW-1 { 2160 color: ; 2161 --colors-heading: , , ; 2162 }.text-simple_menu_qVN9bW-1 { 2163 font-size: 0.7875rem; 2164 } 2165 .sub-heading-simple_menu_qVN9bW-1 { 2166 font-size: 1.125rem; 2167 } 2168 .heading-simple_menu_qVN9bW-1 { 2169 font-size: 1.575rem; 2170 } 2171 @media (min-width: 768px) { 2172 .sub-heading-simple_menu_qVN9bW-1 { 2173 font-size: 1.305rem; 2174 } 2175 .heading-simple_menu_qVN9bW-1 { 2176 font-size: 2.25rem; 2177 } 2178 .text-simple_menu_qVN9bW-1 { 2179 font-size: 0.875rem; 2180 } 2181 }.button--simple_menu_qVN9bW-1.button-solid, 2182 .button--simple_menu_qVN9bW-1.button-solid:before {--colors-line-and-border: var(--colors-button);}.button--simple_menu_qVN9bW-1.button-outline {} 2183 2184</style><div 2185 2186 class="w-full relative z-0 before:h-0 before:block promotion-header image-simple_menu_qVN9bW-1 pb-[%] rounded-[10px] overflow-hidden" 2187 2188 > 2189 2190 2191 2192 <div 2193 class="animate_transition_card__image animate-Xpulse skeleton-image w-full h-full top-0 left-0 overflow-hidden absolute md:absolute rounded-[10px]" 2194 > 2195 2196 <img 2197 srcset="//bkconnection.com/cdn/shop/files/NavigationMenuBanners_2.png?v=1752172443&width=225 225w, 2198 //bkconnection.com/cdn/shop/files/NavigationMenuBanners_2.png?v=1752172443&width=375 375w, 2199 //bkconnection.com/cdn/shop/files/NavigationMenuBanners_2.png?v=1752172443&width=450 450w, 2200 //bkconnection.com/cdn/shop/files/NavigationMenuBanners_2.png?v=1752172443&width=750 750w, 2201 //bkconnection.com/cdn/shop/files/NavigationMenuBanners_2.png?v=1752172443&width=900 900w, 2202 //bkconnection.com/cdn/shop/files/NavigationMenuBanners_2.png?v=1752172443&width=1100 1100w, 2203 //bkconnection.com/cdn/shop/files/NavigationMenuBanners_2.png?v=1752172443&width=1500 1500w, 2204 //bkconnection.com/cdn/shop/files/NavigationMenuBanners_2.png?v=1752172443&width=1780 1780w" 2205 src="//bkconnection.com/cdn/shop/files/NavigationMenuBanners_2.png?v=1752172443&width=1780" 2206 2207 loading="lazy" 2208 2209 sizes="(min-width: 1200px) 300px, (min-width: 768px) calc(100vw/4), 100vw" 2210 alt="" 2211 width="750" 2212 height="500.0" 2213 style="object-position: 50.0% 50.0%;" 2214 class="w-full h-full object-cover z-10 image-hover rounded-[10px]" 2215 onload="this?.classList.add('active'); 2216 this.closest('.animate_transition_card__image')?.classList.remove('animate-Xpulse', 'skeleton-image'); 2217 setTimeout(() => { this.closest('.animate_transition_card__image')?.classList.add('lazy_active', 'active'); }, 250); 2218 " 2219 /> 2220 </div> 2221 2222 <span class="absolute top-0 left-0 bottom-0 right-0 pointer-events-none image-treatment-overlay opacity-0 rounded-[10px]"></span></div><div class="promotion-content background-color-simple_menu_qVN9bW-1 text-center pt-3 pb-3 pr-4 pl-4 rounded-[10px] left-0 right-0 grow"><a href="/products/berrett-koehler-publishers-gift-card" class="button button-solid mt-2 lg:mt-2.5 button--simple_menu_qVN9bW-1 pointer-events-auto inline-block empty:hidden pl-4 pr-4 lg:pl-6 lg:pr-6 pt-2.5 pb-2.5 leading-normal md:pt-3 md:pb-3 cursor-pointer p-break-words"> 2223 2224 2225 2226 <span class="button-text is-focus-button:opacity-0">BK Gift Cards</span> 2227 2228 2229 2230 </a> 2231 2232 </div> 2233 2234 2235 </div></div> 2236 </div></div> 2237 2238 </div> 2239 </div> 2240 </template></template> 2241 2242 2243 2244 <template x-teleport="#menu-2">
2245<template x-if="!runDispatch"> 2246 <div class="toggle-menu toggle-menu-hidden is-focus:text-[rgba(var(--colors-text))] absolute w-full background-header left-0 z-50 shadow-md overflow-hidden"> 2247 <div class="flex gap-x-8 mx-auto x-pgw page-width pb-5 pt-8 pb-8"><div class="mega-menu-card group section--sections--24498229674347__header w-full flex relative overflow-hidden h-[300px]"> 2248 2249 2250<style data-shopify>.text-color-banner_menu_8rp4Xy-1 { 2251 color: #ffffff; 2252 --colors-text: 255, 255, 255; 2253 --colors-heading: 255, 255, 255; 2254 }.title-color-banner_menu_8rp4Xy-1 { 2255 color: ; 2256 --colors-heading: , , ; 2257 }.text-banner_menu_8rp4Xy-1 { 2258 font-size: 0.7875rem; 2259 } 2260 .sub-heading-banner_menu_8rp4Xy-1 { 2261 font-size: 1.125rem; 2262 } 2263 .heading-banner_menu_8rp4Xy-1 { 2264 font-size: 1.575rem; 2265 } 2266 @media (min-width: 768px) { 2267 .sub-heading-banner_menu_8rp4Xy-1 { 2268 font-size: 1.305rem; 2269 } 2270 .heading-banner_menu_8rp4Xy-1 { 2271 font-size: 2.25rem; 2272 } 2273 .text-banner_menu_8rp4Xy-1 { 2274 font-size: 0.875rem; 2275 } 2276 }.button--banner_menu_8rp4Xy-1.button-solid, 2277 .button--banner_menu_8rp4Xy-1.button-solid:before {--colors-line-and-border: var(--colors-button);--colors-button-text: 255, 255, 255;--colors-button-text-hover: 255, 255, 255;}.button--banner_menu_8rp4Xy-1.button-outline {--colors-secondary-button: 255, 255, 255; 2278 --colors-line-secondary-button: 255, 255, 255; 2279 --background-secondary-button: transparent;} 2280 2281 .button--banner_menu_8rp4Xy-1.button-text-link, .button--banner_menu_8rp4Xy-1.button-text-link::after, .button--banner_menu_8rp4Xy-1.button-text-link::before { 2282 --colors-text-link: 255, 255, 255; 2283 } 2284 2285</style><div 2286 2287 class="group w-full relative text-center image-banner_menu_8rp4Xy-1 overflow-hidden promotion-header overflow-hidden rounded-[10px] overflow-hidden"> 2288 2289 2290 2291 <div 2292 class="animate_transition_card__image animate-Xpulse skeleton-image w-full h-full top-0 left-0 overflow-hidden md:absolute rounded-[10px]" 2293 > 2294 2295 <img 2296 srcset="//bkconnection.com/cdn/shop/files/1_49645d14-948f-4fa0-967d-36b29a33a128.png?v=1764876701&width=225 225w, 2297 //bkconnection.com/cdn/shop/files/1_49645d14-948f-4fa0-967d-36b29a33a128.png?v=1764876701&width=375 375w, 2298 //bkconnection.com/cdn/shop/files/1_49645d14-948f-4fa0-967d-36b29a33a128.png?v=1764876701&width=450 450w, 2299 //bkconnection.com/cdn/shop/files/1_49645d14-948f-4fa0-967d-36b29a33a128.png?v=1764876701&width=750 750w, 2300 //bkconnection.com/cdn/shop/files/1_49645d14-948f-4fa0-967d-36b29a33a128.png?v=1764876701&width=900 900w, 2301 //bkconnection.com/cdn/shop/files/1_49645d14-948f-4fa0-967d-36b29a33a128.png?v=1764876701&width=1100 1100w, 2302 //bkconnection.com/cdn/shop/files/1_49645d14-948f-4fa0-967d-36b29a33a128.png?v=1764876701&width=1500 1500w, 2303 //bkconnection.com/cdn/shop/files/1_49645d14-948f-4fa0-967d-36b29a33a128.png?v=1764876701&width=1780 1780w" 2304 src="//bkconnection.com/cdn/shop/files/1_49645d14-948f-4fa0-967d-36b29a33a128.png?v=1764876701&width=1780" 2305 2306 loading="lazy" 2307 2308 sizes="(min-width: 1200px) 400px, (min-width: 768px) calc(100vw/3), 100vw" 2309 alt="" 2310 width="2250" 2311 height="1500.0" 2312 style="object-position: 50.0% 50.0%;" 2313 class="w-full h-full object-cover z-10 image-hover rounded-[10px]" 2314 onload="this?.classList.add('active'); 2315 this.closest('.animate_transition_card__image')?.classList.remove('animate-Xpulse', 'skeleton-image'); 2316 setTimeout(() => { this.closest('.animate_transition_card__image')?.classList.add('lazy_active', 'active'); }, 250); 2317 " 2318 /> 2319 </div> 2320 2321 <span class="absolute top-0 left-0 bottom-0 right-0 pointer-events-none image-treatment-overlay opacity-60 rounded-[10px]"></span><div class="promotion-content background-color-banner_menu_8rp4Xy-1 text-center pt-3 pb-3 pr-4 pl-4 rounded-[10px] mt-2 absolute left-0 right-0 promotion-content-center mb-2 pointer-events-none text-overlay ml-2 mr-2 top-1/2 -translate-y-1/2"><div class="mb-1 leading-tight rte text-color-banner_menu_8rp4Xy-1 text-banner_menu_8rp4Xy-1 p-break-words pointer-events-auto"><p><strong>Free bookmark when you buy </strong><em><strong>Catch People Doing Things Right </strong></em>from any retailer!</p></div><a href="https://ideas.bkconnection.com/catch-people-doing-things-right-gifts" target="_blank" class="button button-solid mt-2 lg:mt-2.5 button--banner_menu_8rp4Xy-1 pointer-events-auto inline-block empty:hidden pl-4 pr-4 lg:pl-6 lg:pr-6 pt-2.5 pb-2.5 leading-normal md:pt-3 md:pb-3 cursor-pointer p-break-words"> 2322 2323 2324 2325 <span class="button-text is-focus-button:opacity-0">Learn More</span> 2326 2327 2328 2329 </a> 2330 2331 </div> 2332 2333</div> 2334 </div> 2335 2336 2337 <div class="mega-menu-card group section--sections--24498229674347__header w-full flex relative overflow-hidden h-[300px]"> 2338 2339<style data-shopify>.text-color-banner_menu_8rp4Xy-2 { 2340 color: #ffffff; 2341 --colors-text: 255, 255, 255; 2342 --colors-heading: 255, 255, 255; 2343 }.title-color-banner_menu_8rp4Xy-2 { 2344 color: ; 2345 --colors-heading: , , ; 2346 }.text-banner_menu_8rp4Xy-2 { 2347 font-size: 0.7875rem; 2348 } 2349 .sub-heading-banner_menu_8rp4Xy-2 { 2350 font-size: 1.125rem; 2351 } 2352 .heading-banner_menu_8rp4Xy-2 { 2353 font-size: 1.575rem; 2354 } 2355 @media (min-width: 768px) { 2356 .sub-heading-banner_menu_8rp4Xy-2 { 2357 font-size: 1.305rem; 2358 } 2359 .heading-banner_menu_8rp4Xy-2 { 2360 font-size: 2.25rem; 2361 } 2362 .text-banner_menu_8rp4Xy-2 { 2363 font-size: 0.875rem; 2364 } 2365 }.button--banner_menu_8rp4Xy-2.button-solid, 2366 .button--banner_menu_8rp4Xy-2.button-solid:before {--colors-line-and-border: var(--colors-button);--colors-button-text: 255, 255, 255;--colors-button-text-hover: 255, 255, 255;}.button--banner_menu_8rp4Xy-2.button-outline {--colors-secondary-button: 255, 255, 255; 2367 --colors-line-secondary-button: 255, 255, 255; 2368 --background-secondary-button: transparent;} 2369 2370 .button--banner_menu_8rp4Xy-2.button-text-link, .button--banner_menu_8rp4Xy-2.button-text-link::after, .button--banner_menu_8rp4Xy-2.button-text-link::before { 2371 --colors-text-link: 255, 255, 255; 2372 } 2373 2374</style><div 2375 2376 class="group w-full relative text-center image-banner_menu_8rp4Xy-2 overflow-hidden promotion-header overflow-hidden rounded-[10px] overflow-hidden"> 2377 2378 2379 2380 <div 2381 class="animate_transition_card__image animate-Xpulse skeleton-image w-full h-full top-0 left-0 overflow-hidden md:absolute rounded-[10px]" 2382 > 2383 2384 <img 2385 srcset="//bkconnection.com/cdn/shop/files/2_f72c7575-99be-4525-aeee-703971937bf0.png?v=1764876701&width=225 225w, 2386 //bkconnection.com/cdn/shop/files/2_f72c7575-99be-4525-aeee-703971937bf0.png?v=1764876701&width=375 375w, 2387 //bkconnection.com/cdn/shop/files/2_f72c7575-99be-4525-aeee-703971937bf0.png?v=1764876701&width=450 450w, 2388 //bkconnection.com/cdn/shop/files/2_f72c7575-99be-4525-aeee-703971937bf0.png?v=1764876701&width=750 750w, 2389 //bkconnection.com/cdn/shop/files/2_f72c7575-99be-4525-aeee-703971937bf0.png?v=1764876701&width=900 900w, 2390 //bkconnection.com/cdn/shop/files/2_f72c7575-99be-4525-aeee-703971937bf0.png?v=1764876701&width=1100 1100w, 2391 //bkconnection.com/cdn/shop/files/2_f72c7575-99be-4525-aeee-703971937bf0.png?v=1764876701&width=1500 1500w, 2392 //bkconnection.com/cdn/shop/files/2_f72c7575-99be-4525-aeee-703971937bf0.png?v=1764876701&width=1780 1780w" 2393 src="//bkconnection.com/cdn/shop/files/2_f72c7575-99be-4525-aeee-703971937bf0.png?v=1764876701&width=1780" 2394 2395 loading="lazy" 2396 2397 sizes="(min-width: 1200px) 400px, (min-width: 768px) calc(100vw/3), 100vw" 2398 alt="" 2399 width="2250" 2400 height="1500.0" 2401 style="object-position: 50.0% 50.0%;" 2402 class="w-full h-full object-cover z-10 image-hover rounded-[10px]" 2403 onload="this?.classList.add('active'); 2404 this.closest('.animate_transition_card__image')?.classList.remove('animate-Xpulse', 'skeleton-image'); 2405 setTimeout(() => { this.closest('.animate_transition_card__image')?.classList.add('lazy_active', 'active'); }, 250); 2406 " 2407 /> 2408 </div> 2409 2410 <span class="absolute top-0 left-0 bottom-0 right-0 pointer-events-none image-treatment-overlay opacity-60 rounded-[10px]"></span><div class="promotion-content background-color-banner_menu_8rp4Xy-2 text-center pt-3 pb-3 pr-4 pl-4 rounded-[10px] mt-2 absolute left-0 right-0 promotion-content-center mb-2 pointer-events-none text-overlay ml-2 mr-2 top-1/2 -translate-y-1/2"><div class="mb-1 leading-tight rte text-color-banner_menu_8rp4Xy-2 text-banner_menu_8rp4Xy-2 p-break-words pointer-events-auto"><p><strong>Free notepad and sticker when you buy </strong><em><strong>Eat That Frog!, Fourth Edition </strong></em>from any retailer!</p></div><a href="https://ideas.bkconnection.com/eat-that-frog-4-gifts" target="_blank" class="button button-solid mt-2 lg:mt-2.5 button--banner_menu_8rp4Xy-2 pointer-events-auto inline-block empty:hidden pl-4 pr-4 lg:pl-6 lg:pr-6 pt-2.5 pb-2.5 leading-normal md:pt-3 md:pb-3 cursor-pointer p-break-words"> 2411 2412 2413 2414 <span class="button-text is-focus-button:opacity-0">Learn More</span> 2415 2416 2417 2418 </a> 2419 2420 </div> 2421 2422</div> 2423 </div> 2424 2425 2426 <div class="mega-menu-card group section--sections--24498229674347__header w-full flex relative overflow-hidden h-[300px]"> 2427 2428<style data-shopify>.text-color-banner_menu_8rp4Xy-3 { 2429 color: #ffffff; 2430 --colors-text: 255, 255, 255; 2431 --colors-heading: 255, 255, 255; 2432 }.title-color-banner_menu_8rp4Xy-3 { 2433 color: ; 2434 --colors-heading: , , ; 2435 }.text-banner_menu_8rp4Xy-3 { 2436 font-size: 0.86625rem; 2437 } 2438 .sub-heading-banner_menu_8rp4Xy-3 { 2439 font-size: 1.125rem; 2440 } 2441 .heading-banner_menu_8rp4Xy-3 { 2442 font-size: 1.575rem; 2443 } 2444 @media (min-width: 768px) { 2445 .sub-heading-banner_menu_8rp4Xy-3 { 2446 font-size: 1.305rem; 2447 } 2448 .heading-banner_menu_8rp4Xy-3 { 2449 font-size: 2.25rem; 2450 } 2451 .text-banner_menu_8rp4Xy-3 { 2452 font-size: 0.9625rem; 2453 } 2454 }.button--banner_menu_8rp4Xy-3.button-solid, 2455 .button--banner_menu_8rp4Xy-3.button-solid:before {--colors-line-and-border: var(--colors-button);--colors-button-text: 255, 255, 255;--colors-button-text-hover: 255, 255, 255;}.button--banner_menu_8rp4Xy-3.button-outline {--colors-secondary-button: 255, 255, 255; 2456 --colors-line-secondary-button: 255, 255, 255; 2457 --background-secondary-button: transparent;} 2458 2459 .button--banner_menu_8rp4Xy-3.button-text-link, .button--banner_menu_8rp4Xy-3.button-text-link::after, .button--banner_menu_8rp4Xy-3.button-text-link::before { 2460 --colors-text-link: 255, 255, 255; 2461 } 2462 2463</style><div 2464 2465 class="group w-full relative text-center image-banner_menu_8rp4Xy-3 overflow-hidden promotion-header overflow-hidden rounded-[10px] overflow-hidden"> 2466 2467 2468 2469 <div 2470 class="animate_transition_card__image animate-Xpulse skeleton-image w-full h-full top-0 left-0 overflow-hidden md:absolute rounded-[10px]" 2471 > 2472 2473 <img 2474 srcset="//bkconnection.com/cdn/shop/files/Banner_Menu_Template_8.png?v=1764879884&width=225 225w, 2475 //bkconnection.com/cdn/shop/files/Banner_Menu_Template_8.png?v=1764879884&width=375 375w, 2476 //bkconnection.com/cdn/shop/files/Banner_Menu_Template_8.png?v=1764879884&width=450 450w, 2477 //bkconnection.com/cdn/shop/files/Banner_Menu_Template_8.png?v=1764879884&width=750 750w, 2478 //bkconnection.com/cdn/shop/files/Banner_Menu_Template_8.png?v=1764879884&width=900 900w, 2479 //bkconnection.com/cdn/shop/files/Banner_Menu_Template_8.png?v=1764879884&width=1100 1100w, 2480 //bkconnection.com/cdn/shop/files/Banner_Menu_Template_8.png?v=1764879884&width=1500 1500w, 2481 //bkconnection.com/cdn/shop/files/Banner_Menu_Template_8.png?v=1764879884&width=1780 1780w" 2482 src="//bkconnection.com/cdn/shop/files/Banner_Menu_Template_8.png?v=1764879884&width=1780" 2483 2484 loading="lazy" 2485 2486 sizes="(min-width: 1200px) 400px, (min-width: 768px) calc(100vw/3), 100vw" 2487 alt="" 2488 width="2250" 2489 height="1500.0" 2490 style="object-position: 50.0% 50.0%;" 2491 class="w-full h-full object-cover z-10 image-hover rounded-[10px]" 2492 onload="this?.classList.add('active'); 2493 this.closest('.animate_transition_card__image')?.classList.remove('animate-Xpulse', 'skeleton-image'); 2494 setTimeout(() => { this.closest('.animate_transition_card__image')?.classList.add('lazy_active', 'active'); }, 250); 2495 " 2496 /> 2497 </div> 2498 2499 <span class="absolute top-0 left-0 bottom-0 right-0 pointer-events-none image-treatment-overlay opacity-60 rounded-[10px]"></span><div class="promotion-content background-color-banner_menu_8rp4Xy-3 text-center pt-3 pb-3 pr-4 pl-4 rounded-[10px] mt-2 absolute left-0 right-0 promotion-content-center mb-2 pointer-events-none text-overlay ml-2 mr-2 bottom-0"><div class="mb-1 leading-tight rte text-color-banner_menu_8rp4Xy-3 text-banner_menu_8rp4Xy-3 p-break-words pointer-events-auto"><p><strong>Free signed bookplate when you buy </strong><em><strong>Fixing Fairness </strong></em>from any retailer!</p></div><a href="https://ideas.bkconnection.com/fixing-fairness-bookplate" target="_blank" class="button button-solid mt-2 lg:mt-2.5 button--banner_menu_8rp4Xy-3 pointer-events-auto inline-block empty:hidden pl-4 pr-4 lg:pl-6 lg:pr-6 pt-2.5 pb-2.5 leading-normal md:pt-3 md:pb-3 cursor-pointer p-break-words"> 2500 2501 2502 2503 <span class="button-text is-focus-button:opacity-0">Learn More</span> 2504 2505 2506 2507 </a> 2508 2509 </div> 2510 2511</div> 2512 </div> 2513 2514 2515 <div class="mega-menu-card group section--sections--24498229674347__header w-full flex relative overflow-hidden h-[300px]"> 2516 2517<style data-shopify>.text-color-banner_menu_8rp4Xy-4 { 2518 color: #ffffff; 2519 --colors-text: 255, 255, 255; 2520 --colors-heading: 255, 255, 255; 2521 }.title-color-banner_menu_8rp4Xy-4 { 2522 color: ; 2523 --colors-heading: , , ; 2524 }.text-banner_menu_8rp4Xy-4 { 2525 font-size: 0.86625rem; 2526 } 2527 .sub-heading-banner_menu_8rp4Xy-4 { 2528 font-size: 1.125rem; 2529 } 2530 .heading-banner_menu_8rp4Xy-4 { 2531 font-size: 1.575rem; 2532 } 2533 @media (min-width: 768px) { 2534 .sub-heading-banner_menu_8rp4Xy-4 { 2535 font-size: 1.305rem; 2536 } 2537 .heading-banner_menu_8rp4Xy-4 { 2538 font-size: 2.25rem; 2539 } 2540 .text-banner_menu_8rp4Xy-4 { 2541 font-size: 0.9625rem; 2542 } 2543 }.button--banner_menu_8rp4Xy-4.button-solid, 2544 .button--banner_menu_8rp4Xy-4.button-solid:before {--colors-line-and-border: var(--colors-button);--colors-button-text: 255, 255, 255;--colors-button-text-hover: 255, 255, 255;}.button--banner_menu_8rp4Xy-4.button-outline {--colors-secondary-button: 255, 255, 255; 2545 --colors-line-secondary-button: 255, 255, 255; 2546 --background-secondary-button: transparent;} 2547 2548 .button--banner_menu_8rp4Xy-4.button-text-link, .button--banner_menu_8rp4Xy-4.button-text-link::after, .button--banner_menu_8rp4Xy-4.button-text-link::before { 2549 --colors-text-link: 255, 255, 255; 2550 } 2551 2552</style><div 2553 2554 class="group w-full relative text-center image-banner_menu_8rp4Xy-4 overflow-hidden promotion-header overflow-hidden rounded-[10px] overflow-hidden"> 2555 2556 2557 2558 <div 2559 class="animate_transition_card__image animate-Xpulse skeleton-image w-full h-full top-0 left-0 overflow-hidden md:absolute rounded-[10px]" 2560 > 2561 2562 <img 2563 srcset="//bkconnection.com/cdn/shop/files/Untitled_design_32.png?v=1765232369&width=225 225w, 2564 //bkconnection.com/cdn/shop/files/Untitled_design_32.png?v=1765232369&width=375 375w, 2565 //bkconnection.com/cdn/shop/files/Untitled_design_32.png?v=1765232369&width=450 450w, 2566 //bkconnection.com/cdn/shop/files/Untitled_design_32.png?v=1765232369&width=750 750w, 2567 //bkconnection.com/cdn/shop/files/Untitled_design_32.png?v=1765232369&width=900 900w, 2568 //bkconnection.com/cdn/shop/files/Untitled_design_32.png?v=1765232369&width=1100 1100w, 2569 //bkconnection.com/cdn/shop/files/Untitled_design_32.png?v=17
256965232369&width=1500 1500w, 2570 //bkconnection.com/cdn/shop/files/Untitled_design_32.png?v=1765232369&width=1780 1780w" 2571 src="//bkconnection.com/cdn/shop/files/Untitled_design_32.png?v=1765232369&width=1780" 2572 2573 loading="lazy" 2574 2575 sizes="(min-width: 1200px) 400px, (min-width: 768px) calc(100vw/3), 100vw" 2576 alt="" 2577 width="600" 2578 height="600.0" 2579 style="object-position: 50.0% 50.0%;" 2580 class="w-full h-full object-cover z-10 image-hover rounded-[10px]" 2581 onload="this?.classList.add('active'); 2582 this.closest('.animate_transition_card__image')?.classList.remove('animate-Xpulse', 'skeleton-image'); 2583 setTimeout(() => { this.closest('.animate_transition_card__image')?.classList.add('lazy_active', 'active'); }, 250); 2584 " 2585 /> 2586 </div> 2587 2588 <span class="absolute top-0 left-0 bottom-0 right-0 pointer-events-none image-treatment-overlay opacity-60 rounded-[10px]"></span><div class="promotion-content background-color-banner_menu_8rp4Xy-4 text-center pt-3 pb-3 pr-4 pl-4 rounded-[10px] mt-2 absolute left-0 right-0 promotion-content-center mb-2 pointer-events-none text-overlay ml-2 mr-2 bottom-0"><div class="mb-1 leading-tight rte text-color-banner_menu_8rp4Xy-4 text-banner_menu_8rp4Xy-4 p-break-words pointer-events-auto"><p><strong>Free sticker pack when you buy</strong><em><strong>YOUth </strong></em>from any retailer!</p></div><a href="https://ideas.bkconnection.com/youth-free-sticker-pack" class="button button-solid mt-2 lg:mt-2.5 button--banner_menu_8rp4Xy-4 pointer-events-auto inline-block empty:hidden pl-4 pr-4 lg:pl-6 lg:pr-6 pt-2.5 pb-2.5 leading-normal md:pt-3 md:pb-3 cursor-pointer p-break-words"> 2589 2590 2591 2592 <span class="button-text is-focus-button:opacity-0">Learn More</span> 2593 2594 2595 2596 </a> 2597 2598 </div> 2599 2600</div> 2601 </div> 2602 2603 2604 </div> 2605 </div> 2606 </template></template> 2607 2608 2609 2610 2611<template x-teleport="#menu-3"> 2612<template x-if="!runDispatch"> 2613 <ul class="pt-5 pb-5"> 2614 2615<li 2616 x-data="{ openSub: false }" 2617 class="relative pl-7 pr-6" 2618 @mouseover="openSub = true; $el.classList.add('is-focus-child');" 2619 @mouseleave="$el.classList.remove('is-focus-child');" 2620 @mouseover.away="openSub = false" 2621 @focusin="openSub = true; $el.classList.add('is-focus-child');" 2622 @focusout="openSub = false; $el.classList.remove('is-focus-child');" 2623 > 2624 <div class="sub-menu flex items-center"> 2625 2626 <span class="flex-1"> 2627 <a href="/pages/author-services" class="nav-link relative p-break-words inline-block duration-200 transition hover-text-link is-focus-child:effect-inline" 2628 2629 > 2630 <span >Author Services</span></a> 2631 </span> 2632 </div></li><li 2633 x-data="{ openSub: false }" 2634 class="relative pl-7 pr-6" 2635 @mouseover="openSub = true; $el.classList.add('is-focus-child');" 2636 @mouseleave="$el.classList.remove('is-focus-child');" 2637 @mouseover.away="openSub = false" 2638 @focusin="openSub = true; $el.classList.add('is-focus-child');" 2639 @focusout="openSub = false; $el.classList.remove('is-focus-child');" 2640 > 2641 <div class="sub-menu flex items-center pt-3"> 2642 2643 <span class="flex-1"> 2644 <a href="/pages/editorial-services" class="nav-link relative p-break-words inline-block duration-200 transition hover-text-link is-focus-child:effect-inline" 2645 2646 > 2647 <span >Editorial Services</span></a> 2648 </span> 2649 </div></li><li 2650 x-data="{ openSub: false }" 2651 class="relative pl-7 pr-6" 2652 @mouseover="openSub = true; $el.classList.add('is-focus-child');" 2653 @mouseleave="$el.classList.remove('is-focus-child');" 2654 @mouseover.away="openSub = false" 2655 @focusin="openSub = true; $el.classList.add('is-focus-child');" 2656 @focusout="openSub = false; $el.classList.remove('is-focus-child');" 2657 > 2658 <div class="sub-menu flex items-center pt-3"> 2659
2660 <span class="flex-1"> 2661 <a href="/pages/marketing-services" class="nav-link relative p-break-words inline-block duration-200 transition hover-text-link is-focus-child:effect-inline" 2662 2663 > 2664 <span >Marketing Services</span></a> 2665 </span> 2666 </div></li><li 2667 x-data="{ openSub: false }" 2668 class="relative pl-7 pr-6" 2669 @mouseover="openSub = true; $el.classList.add('is-focus-child');" 2670 @mouseleave="$el.classList.remove('is-focus-child');" 2671 @mouseover.away="openSub = false" 2672 @focusin="openSub = true; $el.classList.add('is-focus-child');" 2673 @focusout="openSub = false; $el.classList.remove('is-focus-child');" 2674 > 2675 <div class="sub-menu flex items-center pt-3"> 2676 2677 <span class="flex-1"> 2678 <a href="/pages/montgomery-station-press" class="nav-link relative p-break-words inline-block duration-200 transition hover-text-link is-focus-child:effect-inline" 2679 2680 > 2681 <span >Montgomery Station Press</span></a> 2682 </span> 2683 </div></li></ul> 2684 </template></template> 2685 2686 2687<template x-teleport="#menu-4"> 2688<template x-if="!runDispatch"> 2689 <ul class="pt-5 pb-5"> 2690 2691<li 2692 x-data="{ openSub: false }" 2693 class="relative pl-7 pr-6" 2694 @mouseover="openSub = true; $el.classList.add('is-focus-child');" 2695 @mouseleave="$el.classList.remove('is-focus-child');" 2696 @mouseover.away="openSub = false" 2697 @focusin="openSub = true; $el.classList.add('is-focus-child');" 2698 @focusout="openSub = false; $el.classList.remove('is-focus-child');" 2699 > 2700 <div class="sub-menu flex items-center"> 2701 2702 <span class="flex-1"> 2703 <a href="/pages/why-bk" class="nav-link relative p-break-words inline-block duration-200 transition hover-text-link is-focus-child:effect-inline" 2704 2705 > 2706 <span >Why BK?</span></a> 2707 </span> 2708 </div></li><li 2709 x-data="{ openSub: false }" 2710 class="relative pl-7 pr-6" 2711 @mouseover="openSub = true; $el.classList.add('is-focus-child');" 2712 @mouseleave="$el.classList.remove('is-focus-child');" 2713 @mouseover.away="openSub = false" 2714 @focusin="openSub = true; $el.classList.add('is-focus-child');" 2715 @focusout="openSub = false; $el.classList.remove('is-focus-child');" 2716 > 2717 <div class="sub-menu flex items-center pt-3"> 2718 2719 <span class="flex-1"> 2720 <a href="/pages/montgomery-station-press" class="nav-link relative p-break-words inline-block duration-200 transition hover-text-link is-focus-child:effect-inline" 2721 2722 > 2723 <span >Montgomery Station Press</span></a> 2724 </span> 2725 </div></li><li 2726 x-data="{ openSub: false }" 2727 class="relative pl-7 pr-6" 2728 @mouseover="openSub = true; $el.classList.add('is-focus-child');" 2729 @mouseleave="$el.classList.remove('is-focus-child');" 2730 @mouseover.away="openSub = false" 2731 @focusin="openSub = true; $el.classList.add('is-focus-child');" 2732 @focusout="openSub = false; $el.classList.remove('is-focus-child');" 2733 > 2734 <div class="sub-menu flex items-center pt-3"> 2735 2736 <span class="flex-1"> 2737 <a href="/pages/proposals" class="nav-link relative p-break-words inline-block duration-200 transition hover-text-link is-focus-child:effect-inline" 2738 2739 > 2740 <span >Proposals</span></a> 2741 </span> 2742 </div></li></ul> 2743 </template></template> 2744 2745 2746<template x-teleport="#menu-5"> 2747<template x-if="!runDispatch"> 2748 <div class="toggle-menu toggle-menu-hidden text-[rgba(var(--colors-text))] mega-menu-horizontal main-nav-child-right is-focus:text-[rgba(var(--colors-text))] absolute w-full background-header left-0 z-50 shadow-md ltr overflow-hidden h-fit max-h-[80vh]"> 2749 <div> 2750 <div class="x-pgw page-width mx-auto flex promotion-horizontal image-count-2 md:max-h-[80vh]"><ul class="mega-nav order-2 scrollbar-body scrollbar-visible flex-wrap relative gap-5 xl:gap-8 flex mt-7 mb-8 flex-row z-50 left-0 right-0 w-1/2 top-full"><li class="relative w-24 lg:w-48"> 2751 <div class="font-semibold"> 2752<a href="/pages/bk-community" class="nav-link relative transition duration-200 p-break-words hover-text-link
2752inline-block mb-3"> 2753 Learn More 2754 </a> 2755 </div><ul class="list-unstyled" role="list"><li class="flex items-center pt-1.5 pb-1.5 relative font-normal font_menu-normal"> 2756<span class="flex-1"> 2757 <a href="/pages/bk-community" class="nav-link relative transition duration-200 p-break-words hover-text-link inline-block"> 2758 About BK Community 2759 </a> 2760 </span> 2761 </li><li class="flex items-center pt-1.5 pb-1.5 relative font-normal font_menu-normal"> 2762<span class="flex-1"> 2763 <a href="/collections/the-berrett-koehler-community" class="nav-link relative transition duration-200 p-break-words hover-text-link inline-block"> 2764 Membership Tiers 2765 </a> 2766 </span> 2767 </li></ul></li><li class="relative w-24 lg:w-48"> 2768 <div class="font-semibold"> 2769<a href="/pages/members-dashboard" class="nav-link relative transition duration-200 p-break-words hover-text-link inline-block mb-3"> 2770 Members Dashboard 2771 </a> 2772 </div><ul class="list-unstyled" role="list"><li class="flex items-center pt-1.5 pb-1.5 relative font-normal font_menu-normal"> 2773<span class="flex-1"> 2774 <a href="/pages/author-talks" class="nav-link relative transition duration-200 p-break-words hover-text-link inline-block"> 2775 Author Talks 2776 </a> 2777 </span> 2778 </li><li class="flex items-center pt-1.5 pb-1.5 relative font-normal font_menu-normal"> 2779<span class="flex-1"> 2780 <a href="/pages/book-boosters" class="nav-link relative transition duration-200 p-break-words hover-text-link inline-block"> 2781 Book Boosters 2782 </a> 2783 </span> 2784 </li><li class="flex items-center pt-1.5 pb-1.5 relative font-normal font_menu-normal"> 2785<span class="flex-1"> 2786 <a href="/blogs/bk-community" class="nav-link relative transition duration-200 p-break-words hover-text-link inline-block"> 2787 BK Community News 2788 </a> 2789 </span> 2790 </li></ul></li></ul><div class="relative float-right md:right-5 lg:right-0 pt-8 pb-8 w-1/2 order-4"> 2791 <div class="mega-nav-promotions scrollbar-body scrollbar-visible overflow-y-auto flex gap-5"><style data-shopify> 2792 .image-simple_menu_PWTKrQ-1 { 2793 height: 150px; 2794 } 2795 </style> 2796 2797 <div class="mega-menu-card w-full group relative background-color-simple_menu_PWTKrQ-1 ltr rounded-[10px]"> 2798 2799<style data-shopify>.title-color-simple_menu_PWTKrQ-1 { 2800 color: ; 2801 --colors-heading: , , ; 2802 }.text-simple_menu_PWTKrQ-1 { 2803 font-size: 0.7875rem; 2804 } 2805 .sub-heading-simple_menu_PWTKrQ-1 { 2806 font-size: 1.125rem; 2807 } 2808 .heading-simple_menu_PWTKrQ-1 { 2809 font-size: 1.575rem; 2810 } 2811 @media (min-width: 768px) { 2812 .sub-heading-simple_menu_PWTKrQ-1 { 2813 font-size: 1.305rem; 2814 } 2815 .heading-simple_menu_PWTKrQ-1 { 2816 font-size: 2.25rem; 2817 } 2818 .text-simple_menu_PWTKrQ-1 { 2819 font-size: 0.875rem; 2820 } 2821 }.button--simple_menu_PWTKrQ-1.button-outline {} 2822 2823</style><div 2824 2825 class="w-full relative z-0 before:h-0 before:block promotion-header image-simple_menu_PWTKrQ-1 pb-[%] rounded-[10px] overflow-hidden" 2826 2827 > 2828 2829 2830 2831 <div 2832 class="animate_transition_card__image animate-Xpulse skeleton-image w-full h-full top-0 left-0 overflow-hidden absolute md:absolute rounded-[10px]" 2833 > 2834 2835 <img 2836 srcset="//bkconnection.com/cdn/shop/files/Blog_Headers_for_Shopify_16.png?v=1760721286&width=225 225w, 2837 //bkconnection.com/cdn/shop/files/Blog_Headers_for_Shopify_16.png?v=1760721286&width=375 375w, 2838 //bkconnection.com/cdn/shop/files/Blog_Headers_for_Shopify_16.png?v=1760721286&width=450 450w, 2839 //bkconnection.com/cdn/shop/files/Blog_Headers_for_Shopify_16.png?v=1760721286&width=750 750w, 2840 //bkconnection.com/cdn/shop/files/Blog_Headers_for_Shopify_16.png?v=1760721286&width=900 900w, 2841 //bkconnection.com/cdn/shop/files/Blog_Headers_for_Shopify_16.png?v=1760721286&width=1100 1100w, 2842 //bkconnection.com/cdn/shop/files/Blog_Headers_for_Shopify_16.png?v=1760721286&width=1500 1500w, 2843 //bkconnection.com/cdn/shop/files/Blog_Headers_for_Shopify_16.png?v=1760721286&width=1780 1780w" 2844 src="//bkconnection.com/cdn/shop/files/Blog_Headers_for_Shopify_16.png?v=1760721286&width=1780" 2845 2846 loading="lazy" 2847 2848 sizes="(min-width: 1200px) 300px, (min-width: 768px) calc(100vw/4), 100vw" 2849 alt="" 2850 width="1200" 2851 height="450.0" 2852 style="object-position: 50.0% 50.0%;" 2853 class="w-full h-full object-cover z-10 image-hover rounded-[10px]" 2854 onload="this?.classList.add('active'); 2855 this.closest('.animate_transition_card__image')?.classList.remove('animate-Xpulse', 'skeleton-image'); 2856 setTimeout(() => { this.closest('.animate_transition_card__image')?.classList.add('lazy_active', 'active'); }, 250); 2857 " 2858 /> 2859 </div> 2860 2861 <span class="absolute top-0 left-0 bottom-0 right-0 pointer-events-none image-treatment-overlay opacity-0 rounded-[10px]"></span></div><div class="promotion-content background-color-simple_menu_PWTKrQ-1 text-center pt-3 pb-3 pr-4 pl-4 rounded-[10px] left-0 right-0 grow"><a href="/pages/bk-community" class="button button-outline mt-2 lg:mt-2.5 button--simple_menu_PWTKrQ-1 pointer-events-auto inline-block empty:hidden pl-4 pr-4 lg:pl-6 lg:pr-6 pt-2.5 pb-2.5 leading-normal md:pt-3 md:pb-3 cursor-pointer p-break-words"> 2862 2863 2864 2865 <span class="button-text is-focus-button:opacity-0">Get 25% Off</span> 2866 2867 2868 2869 </a> 2870 2871 </div> 2872 2873 2874 </div><style data-shopify> 2875 .image-simple_menu_PWTKrQ-2 { 2876 height: 150px; 2877 } 2878 </style> 2879 2880 <div class="mega-menu-card w-full group relative background-color-simple_menu_PWTKrQ-2 ltr rounded-[10px]"> 2881 2882<style data-shopify>.title-color-simple_menu_PWTKrQ-2 { 2883 color: ; 2884 --colors-heading: , , ; 2885 }.text-simple_menu_PWTKrQ-2 { 2886 font-size: 0.7875rem; 2887 } 2888 .sub-heading-simple_menu_PWTKrQ-2 { 2889 font-size: 1.125rem; 2890 } 2891 .heading-simple_menu_PWTKrQ-2 { 2892 font-size: 1.575rem; 2893 } 2894 @media (min-width: 768px) { 2895 .sub-heading-simple_menu_PWTKrQ-2 { 2896 font-size: 1.305rem; 2897 } 2898 .heading-simple_menu_PWTKrQ-2 { 2899 font-size: 2.25rem; 2900 } 2901 .text-simple_menu_PWTKrQ-2 { 2902 font-size: 0.875rem; 2903 } 2904 }.button--simple_menu_PWTKrQ-2.button-outline {} 2905 2906</style><div 2907 2908 class="w-full relative z-0 before:h-0 before:block promotion-header image-simple_menu_PWTKrQ-2 pb-[%] rounded-[10px] overflow-hidden" 2909 2910 > 2911 2912 2913 2914 <div 2915 class="animate_transition_card__image animate-Xpulse skeleton-image w-full h-full top-0 left-0 overflow-hidden absolute md:absolute rounded-[10px]" 2916 > 2917 2918 <img 2919 srcset="//bkconnection.com/cdn/shop/files/Blog_Headers_for_Shopify_11.png?v=1758311004&width=225 225w, 2920 //bkconnection.com/cdn/shop/files/Blog_Headers_for_Shopify_11.png?v=1758311004&width=375 375w, 2921 //bkconnection.com/cdn/shop/files/Blog_Headers_for_Shopify_11.png?v=1758311004&width=450 450w, 2922 //bkconnection.com/cdn/shop/files/Blog_Headers_for_Shopify_11.png?v=1758311004&width=750 750w, 2923 //bkconnection.com/cdn/shop/files/Blog_Headers_for_Shopify_11.png?v=1758311004&width=900 900w, 2924 //bkconnection.com/cdn/shop/files/Blog_Headers_for_Shopify_11.png?v=1758311004&width=1100 1100w, 2925 //bkconnection.com/cdn/shop/files/Blog_Headers_for_Shopify_11.png?v=1758311004&width=1500 1500w, 2926 //bkconnection.com/cdn/shop/files/Blog_Headers_for_Shopify_11.png?v=1758311004&width=1780 1780w" 2927 src="//bkconnection.com/cdn/shop/files/Blog_Headers_for_Shopify_11.png?v=1758311004&width=1780" 2928 2929 loading="lazy" 2930 2931 sizes="(min-width: 1200px) 300px, (min-width: 768px) calc(100vw/4), 100vw" 2932 alt="" 2933 width="1200" 2934 height="450.0" 2935 style="object-position: 50.0% 50.0%;" 2936 class="w-full h-full object-cover z-10 image-hover rounded-[10px]" 2937 onload="this?.classList.add('active'); 2938 this.closest('.animate_transition_card__image')?.classList.remove('animate-Xpulse', 'skeleton-image'); 2939 setTimeout(() => { this.closest('.animate_transition_card__image')?.classList.add('lazy_active', 'active'); }, 250); 2940 " 2941 /> 2942 </div> 2943 2944 <span class="absolute top-0 left-0 bottom-0 right-0 pointer-events-none image-treatment-overlay opacity-0 rounded-[10px]"></span></div><div class="promotion-content background-color-simple_menu_PWTKrQ-2 text-center pt-3 pb-3 pr-4 pl-4 rounded-[10px] left-0 right-0 grow"><a href="/pages/bk-community" class="button button-outline mt-2 lg:mt-2.5 button--simple_menu_PWTKrQ-2 pointer-events-auto inline-block empty:hidden pl-4 pr-4 lg:pl-6 lg:pr-6 pt-2.5 pb-2.5 leading-normal md:pt-3 md:pb-3 cursor-pointer p-break-words"> 2945 2946 2947 2948 <span class="button-text is-focus-button:opacity-0">Get Free Books</span> 2949 2950 2951 2952 </a> 2953 2954 </div> 2955 2956 2957 </div></div> 2958 </div></div> 2959 2960 </div> 2961 </div> 2962 </template></template> 2963 2964 2965<template x-teleport="#menu-6">
2966<template x-if="!runDispatch"> 2967 <ul class="pt-5 pb-5"> 2968 2969<li 2970 x-data="{ openSub: false }" 2971 class="relative pl-7 pr-6" 2972 @mouseover="openSub = true; $el.classList.add('is-focus-child');" 2973 @mouseleave="$el.classList.remove('is-focus-child');" 2974 @mouseover.away="openSub = false" 2975 @focusin="openSub = true; $el.classList.add('is-focus-child');" 2976 @focusout="openSub = false; $el.classList.remove('is-focus-child');" 2977 > 2978 <div class="sub-menu flex items-center"> 2979 2980 <span class="flex-1"> 2981 <a href="/pages/about-us" class="nav-link relative p-break-words inline-block duration-200 transition hover-text-link is-focus-child:effect-inline" 2982 2983 > 2984 <span >Our Company</span></a> 2985 </span> 2986 </div></li><li 2987 x-data="{ openSub: false }" 2988 class="relative pl-7 pr-6" 2989 @mouseover="openSub = true; $el.classList.add('is-focus-child');" 2990 @mouseleave="$el.classList.remove('is-focus-child');" 2991 @mouseover.away="openSub = false" 2992 @focusin="openSub = true; $el.classList.add('is-focus-child');" 2993 @focusout="openSub = false; $el.classList.remove('is-focus-child');" 2994 > 2995 <div class="sub-menu flex items-center pt-3"> 2996 2997 <span class="flex-1"> 2998 <a href="/pages/team" class="nav-link relative p-break-words inline-block duration-200 transition hover-text-link is-focus-child:effect-inline" 2999 3000 > 3001 <span >Our Team</span></a> 3002 </span> 3003 </div></li><li 3004 x-data="{ openSub: false }" 3005 class="relative pl-7 pr-6" 3006 @mouseover="openSub = true; $el.classList.add('is-focus-child');" 3007 @mouseleave="$el.classList.remove('is-focus-child');" 3008 @mouseover.away="openSub = false" 3009 @focusin="openSub = true; $el.classList.add('is-focus-child');" 3010 @focusout="openSub = false; $el.classList.remove('is-focus-child');" 3011 > 3012 <div class="sub-menu flex items-center pt-3"> 3013 3014 <span class="flex-1"> 3015 <a href="https://apply.workable.com/berrett-koehler-publishers-3/" class="nav-link relative p-break-words inline-block duration-200 transition hover-text-link is-focus-child:effect-inline" 3016 3017 > 3018 <span >Careers</span></a> 3019 </span> 3020 </div></li><li 3021 x-data="{ openSub: false }" 3022 class="relative pl-7 pr-6" 3023 @mouseover="openSub = true; $el.classList.add('is-focus-child');" 3024 @mouseleave="$el.classList.remove('is-focus-child');" 3025 @mouseover.away="openSub = false" 3026 @focusin="openSub = true; $el.classList.add('is-focus-child');" 3027 @focusout="openSub = false; $el.classList.remove('is-focus-child');" 3028 > 3029 <div class="sub-menu flex items-center pt-3"> 3030 3031 <span class="flex-1"> 3032 <a href="/pages/faq" class="nav-link relative p-break-words inline-block duration-200 transition hover-text-link is-focus-child:effect-inline" 3033 3034 > 3035 <span >FAQ</span></a> 3036 </span> 3037 </div></li><li 3038 x-data="{ openSub: false }" 3039 class="relative pl-7 pr-6" 3040 @mouseover="openSub = true; $el.classList.add('is-focus-child');" 3041 @mouseleave="$el.classList.remove('is-focus-child');" 3042 @mouseover.away="openSub = false" 3043 @focusin="openSub = true; $el.classList.add('is-focus-child');" 3044 @focusout="openSub = false; $el.classList.remove('is-focus-child');" 3045 > 3046 <div class="sub-menu flex items-center pt-3"> 3047 3048 <span class="flex-1"> 3049 <a href="/blogs/the-bk-exchange" class="nav-link relative p-break-words inline-block duration-200 transition hover-text-link
3049is-focus-child:effect-inline" 3050 3051 > 3052 <span >Blog</span></a> 3053 </span> 3054 </div></li><li 3055 x-data="{ openSub: false }" 3056 class="relative pl-7 pr-6" 3057 @mouseover="openSub = true; $el.classList.add('is-focus-child');" 3058 @mouseleave="$el.classList.remove('is-focus-child');" 3059 @mouseover.away="openSub = false" 3060 @focusin="openSub = true; $el.classList.add('is-focus-child');" 3061 @focusout="openSub = false; $el.classList.remove('is-focus-child');" 3062 > 3063 <div class="sub-menu flex items-center pt-3"> 3064 3065 <span class="flex-1"> 3066 <a href="/pages/contact" class="nav-link relative p-break-words inline-block duration-200 transition hover-text-link is-focus-child:effect-inline" 3067 3068 > 3069 <span >Contact Us</span></a> 3070 </span> 3071 </div></li></ul> 3072 </template></template> 3073 3074</ul> 3075</nav> 3076 </header> 3077 3078 3079 </div> 3080 3081 </div> 3082</div>
3083<script src="//bkconnection.com/cdn/shop/t/4/assets/search-prompts.js?v=123663537316562764691747335364" defer></script>
3083
3084<script type="application/ld+json"> 3085 { 3086 "@context": "http://schema.org", 3087 "@type": "Organization", 3088 "name": "Berrett-Koehler Publishers", 3089 3090 "logo": "https:\/\/bkconnection.com\/cdn\/shop\/files\/BK_logo_97f0e71e-3713-4724-a586-1b199f02c873.png?v=1752261701\u0026width=2400", 3091 3092 "sameAs": [ 3093 "", 3094 "https:\/\/www.facebook.com\/BerrettKoehler", 3095 "", 3096 "https:\/\/www.instagram.com\/bkpub", 3097 "https:\/\/www.tiktok.com\/@bkpub", 3098 "", 3099 "", 3100 "https:\/\/www.youtube.com\/berrettkoehler", 3101 "" 3102 ], 3103 "url": "https:\/\/bkconnection.com" 3104 } 3105</script>
3105<script src="//bkconnection.com/cdn/shop/t/4/assets/store-selector.js?v=36088188951445041851747335364" defer="defer"></script>
3105 3106 3107</div><div id="shopify-section-sections--24498229674347__mobile-navigation" class="shopify-section shopify-section-group-header-group-puff section-mobile-navigation"><style data-shopify>#mobile-navigation * {border-color: #f2f2f2;} 3108 .dark #mobile-navigation * {border-color: #313131;} 3109 #mobile-navigation .text-color, 3110 #mobile-navigation .background-header {background: #ffffff;--colors-heading: 0, 0, 0; 3111 color: #000000; 3112 --colors-text-header: 0, 0, 0; 3113 --colors-text-link: 77, 99, 145; 3114 3115 } 3116 .dark #mobile-navigation .text-color, 3117 .dark #mobile-navigation .background-header {background: #202020;--colors-heading: 255, 255, 255; 3118 color: #ffffff; 3119 --colors-text-header: 255, 255, 255; 3120 --colors-text-link: 255, 255, 255; 3121 --colors-text-link: 77, 99, 145; 3122 3123 } 3124 3125</style><div 3126 class="z-[60] fixed top-0 h-full w-full opacity-60 bg-black" 3127 x-show="$store.xMobileNav.show" 3128 x-cloak 3129 @click="setTimeout(() => { $store.xMobileNav.close() }, 0)" 3130></div> 3131<template x-if="!runDispatch"> 3132 <div 3133 id="mobile-navigation" 3134 :class="{ 'menu-opening': $store.xMobileNav.show }" 3135 class="menu-drawer fixed z-[60] top-0 bottom-0 w-10/12 max-w-sm motion-reduce overflow-x-hidden ltr left-0 -translate-x-full rounded-r-[10px]" 3136 > 3137 <div class="x-container-mobile-nav background-header gradient menu-drawer duration-300 ease-in-out pt-5 overflow-hidden h-full flex flex-col"> 3138 <div class="x-block-mobile-nav-close h-10 w-full px-2 text-right" 3139 aria-label="Close" 3140 > 3141 <span 3142 class="cursor-pointer w-11 h-8 inline-block p-2" 3143 @click="setTimeout(() => { $store.xMobileNav.close() }, 0)" 3144 ><svg width="100%" height="100%" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none;"> 3145 <path fill="currentColor" fill-rule="evenodd" clip-rule="evenodd" d="M3.29289 3.29289C3.68342 2.90237 4.31658 2.90237 4.70711 3.29289L12 10.5858L19.2929 3.29289C19.6834 2.90237 20.3166 2.90237 20.7071 3.29289C21.0976 3.68342 21.0976 4.31658 20.7071 4.70711L13.4142 12L20.7071 19.2929C21.0976 19.6834 21.0976 20.3166 20.7071 20.7071C20.3166 21.0976 19.6834 21.0976 19.2929 20.7071L12 13.4142L4.70711 20.7071C4.31658 21.0976 3.68342 21.0976 3.29289 20.7071C2.90237 20.3166 2.90237 19.6834 3.29289 19.2929L10.5858 12L3.29289 4.70711C2.90237 4.31658 2.90237 3.68342 3.29289 3.29289Z"/> 3146 </svg> 3147</span> 3148 </div> 3149 <div 3150 id="menu-navigation" 3151 class="h-full flex-1 overflow-x-hidden scrollbar-body" 3152 :class="$store.xMobileNav.currentMenuLinks.length == 0 ? ' overflow-y-auto' : 'overflow-hidden'"> 3153 <ul 3154 id="menu-level-0" 3155 role="list" 3156 class="menu-parent relative h-full w-full" 3157 > 3158 <li class="block-mobile-navigation x-header-store-selector-container pl-5 pr-5 pb-5"></li> 3159 <li> 3160 <span class="flex border-t ml-5 mr-5"></span> 3161 3162<div 3163 class="flex items-center mr-4 ml-4 border-b pl-[5px] pr-[3px] rtl:pr-[5px] rtl:pl-[3px]" 3164 > 3165 3166 <a href="/" class="flex-1 pt-2.5 pb-2.5 gap-2.5 flex items-center disable-effect"> 3167 3168 3169 3170 <span class="p-break-words"> 3171 3172 3173 <span>Home</span> 3174 3175 </span> 3176 </a> 3177</div><div @click="$store.xMobileNav.scrollTop($el); $store.xMobileNav.setActiveLink('-2')" 3178 class="flex items-center mr-4 ml-4 border-b pl-[5px] pr-[3px] rtl:pr-[5px] rtl:pl-[3px]" 3179 > 3180 3181 <span class="flex-1 pt-2.5 pb-2.5 flex gap-2.5 items-center disable-effect"> 3182 3183 3184 3185 <span class="p-break-words"> 3186 3187 3188 <span>Shop</span> 3189 3190 </span> 3191 </span> 3192<span 3193 class="icon-caret-mobile h-4 w-4 pr-px pl-px block pt-1 min-w-[1rem] -rotate-90" 3194 ><svg width="100%" height="100%" viewBox="0 0 9 7" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none;"> 3195 <path d="M0.75 1.625L4.5 5.375L8.25 1.625" stroke="currentcolor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3196 </svg> 3197</span></div><div 3198 class="menu-drawer duration-300 ease-in-out top-0 left-0 absolute background-header w-full h-full z-30 invisible translate-x-full" 3199 :class="{ 'menu-opening': $store.xMobileNav.currentMenuLinks.includes('-2')}" 3200 > 3201 <div class="overflow-x-hidden scrollbar-body absolute top-0 z-30 w-full h-full" 3202 :class="$store.xMobileNav.currentMenuLinks.length == 2 ? 'overflow-hidden' : 'overflow-y-auto'" 3203 > 3204 <div class="flex items-center justify-between ml-4 mr-4 pl-[3px] pr-[5px] rtl:pr-[3px] rtl:pl-[5
3204px] border-y text-left"> 3205 <span class="h-11 w-8 pt-4 block rotate-90 pl-2 pr-2.5 mr-4" 3206 @click="$store.xMobileNav.removeActiveLink('-2'); " 3207 > 3208 <svg width="100%" height="100%" viewBox="0 0 9 7" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none;"> 3209 <path d="M0.75 1.625L4.5 5.375L8.25 1.625" stroke="currentcolor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3210 </svg> 3211 3212 </span> 3213 <a href="/collections/all" class="pt-4 pb-4 flex-1 font-semibold disable-effect"> 3214 <span class="p-break-words">Shop</span> 3215 </a> 3216 </div> 3217 <ul 3218 id="menu-level-1" 3219 class="background-header w-full px-4" 3220 ><li class="border-b"> 3221 3222 <div 3223 class="flex items-center justify-between h-full pr-[3px] pl-[5px] rtl:pr-[5px] rtl:pl-[3px]" 3224 @click="$store.xMobileNav.scrollTop($el); $store.xMobileNav.setActiveLink('-2-1');" 3225 > 3226 3227 <span class="p-break-words flex gap-2.5 h-full flex-1 pt-2.5 pb-2.5 disable-effect items-center"> 3228 3229 3230 3231 <span class="flex justify-between items-center w-full gap-2"> 3232 Subjects 3233 3234 </span> 3235 </span> 3236 3237 <span class="icon-caret-mobile h-4 w-4 pr-px pl-px block pt-1 min-w-[1rem] -rotate-90"> 3238 <svg width="100%" height="100%" viewBox="0 0 9 7" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none;"> 3239 <path d="M0.75 1.625L4.5 5.375L8.25 1.625" stroke="currentcolor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3240 </svg> 3241 3242 </span> 3243 3244</div><div 3245 class="menu-drawer duration-300 ease-in-out top-0 left-0 absolute background-header w-full h-full z-30 invisible translate-x-full" 3246 :class="{ 'menu-opening': $store.xMobileNav.currentMenuLinks.includes('-2-1')} " 3247 > 3248 <div class="overflow-x-hidden scrollbar-body absolute top-0 z-30 w-full h-full" 3249 :class="$store.xMobileNav.currentMenuLinks.length == 3 ? 'overflow-hidden' : 'overflow-y-auto'" 3250 > 3251 <div class="flex items-center justify-between ml-4 mr-4 border-y pl-[5px] pr-[5px] text-right"> 3252 <span 3253 class="h-11 w-8 pt-4 block rotate-90 pl-2 pr-2.5 mr-4" 3254 @click="$store.xMobileNav.removeActiveLink('-2-1')" 3255 ><svg width="100%" height="100%" viewBox="0 0 9 7" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none;"> 3256 <path d="M0.75 1.625L4.5 5.375L8.25 1.625" stroke="currentcolor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3257 </svg> 3258</span> 3259 <a href="/collections" class="p-break-words pt-4 pb-4 flex-1 font-semibold disable-effect"> 3260 Subjects 3261 </a> 3262 </div> 3263 <ul 3264 id="menu-level-2" 3265 class="w-full background-header px-4" 3266 ><li > 3267 <a 3268 href="/collections/leadership" 3269 class="p-break-words border-b pt-2.5 pb-2.5 pl-[5px] pr-[5px] h-full disable-effect flex gap-2.5 items-center" 3270 3271 > 3272 3273 3274 <span>Leadership</span> 3275 </a> 3276 </li><li > 3277 <a 3278 href="/collections/professional-development" 3279 class="p-break-words border-b pt-2.5 pb-2.5 pl-[5px] pr-[5px] h-full disable-effect flex gap-2.5 items-center" 3280 3281 > 3282 3283
3284 <span>Professional Development</span> 3285 </a> 3286 </li><li > 3287 <a 3288 href="/collections/workplace-culture" 3289 class="p-break-words border-b pt-2.5 pb-2.5 pl-[5px] pr-[5px] h-full disable-effect flex gap-2.5 items-center" 3290 3291 > 3292 3293 3294 <span>Workplace Culture</span> 3295 </a> 3296 </li><li > 3297 <a 3298 href="/collections/diversity-inclusion" 3299 class="p-break-words border-b pt-2.5 pb-2.5 pl-[5px] pr-[5px] h-full disable-effect flex gap-2.5 items-center" 3300 3301 > 3302 3303 3304 <span>Diversity & Inclusion</span> 3305 </a> 3306 </li><li > 3307 <a 3308 href="/collections/personal-growth" 3309 class="p-break-words border-b pt-2.5 pb-2.5 pl-[5px] pr-[5px] h-full disable-effect flex gap-2.5 items-center" 3310 3311 > 3312 3313 3314 <span>Personal Growth</span> 3315 </a> 3316 </li><li > 3317 <a 3318 href="/collections/social-change" 3319 class="p-break-words border-b pt-2.5 pb-2.5 pl-[5px] pr-[5px] h-full disable-effect flex gap-2.5 items-center" 3320 3321 > 3322 3323 3324 <span>Social Change</span> 3325 </a> 3326 </li></ul> 3327 </div> 3328 </div></li><li class="border-b"> 3329 3330 <div 3331 class="flex items-center justify-between h-full pr-[3px] pl-[5px] rtl:pr-[5px] rtl:pl-[3px]" 3332 @click="$store.xMobileNav.scrollTop($el); $store.xMobileNav.setActiveLink('-2-2');" 3333 > 3334 3335 <span class="p-break-words flex gap-2.5 h-full flex-1 pt-2.5 pb-2.5 disable-effect items-center"> 3336 3337 3338 3339 <span class="flex justify-between items-center w-full gap-2"> 3340 Curations 3341 3342 </span> 3343 </span> 3344 3345 <span class="icon-caret-mobile h-4 w-4 pr-px pl-px block pt-1 min-w-[1rem] -rotate-90"> 3346 <svg width="100%" height="100%" viewBox="0 0 9 7" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none;"> 3347 <path d="M0.75 1.625L4.5 5.375L8.25 1.625" stroke="currentcolor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3348 </svg> 3349 3350 </span> 3351 3352</div><div 3353 class="menu-drawer duration-300 ease-in-out top-0 left-0 absolute background-header w-full h-full z-30 invisible translate-x-full" 3354 :class="{ 'menu-opening': $store.xMobileNav.currentMenuLinks.includes('-2-2')} " 3355 > 3356 <div class="overflow-x-hidden scrollbar-body absolute top-0 z-30 w-full h-full" 3357 :class="$store.xMobileNav.currentMenuLinks.length == 3 ? 'overflow-hidden' : 'overflow-y-auto'" 3358 > 3359 <div class="flex items-center justify-between ml-4 mr-4 border-y pl-[5px] pr-[5px] text-right"> 3360 <span 3361 class="h-11 w-8 pt-4 block rotate-90 pl-2 pr-2.5 mr-4" 3362 @click="$store.xMobileNav.removeActiveLink('-2-2')" 3363 ><svg width="100%" height="100%" viewBox="0 0 9 7" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none;"> 3364 <path d="M0.75 1.625L4.5 5.375L8.25 1.625" stroke="currentcolor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3365 </svg> 3366</span> 3367 <a href="/collections" class="p-break-words pt-4 pb-4 flex-1 font-semibold disable-effect"> 3368 Curations 3369 </a> 3370 </div> 3371 <ul 3372 id="menu-level-2" 3373 class="w-full background-header px-4" 3374 ><li > 3375 <a 3376 href="/collections/new-releases" 3377 class="p-break-words border-b pt-2.5 pb-2.5 pl-[5px] pr-[5px] h-full disable-effect flex gap-2.5 items-center" 3378 3379 > 3380 3381
3382 <span>New Releases</span> 3383 </a> 3384 </li><li > 3385 <a 3386 href="/collections/coming-soon" 3387 class="p-break-words border-b pt-2.5 pb-2.5 pl-[5px] pr-[5px] h-full disable-effect flex gap-2.5 items-center" 3388 3389 > 3390 3391 3392 <span>Coming Soon</span> 3393 </a> 3394 </li><li > 3395 <a 3396 href="/collections/bestsellers" 3397 class="p-break-words border-b pt-2.5 pb-2.5 pl-[5px] pr-[5px] h-full disable-effect flex gap-2.5 items-center" 3398 3399 > 3400 3401 3402 <span>Bestsellers</span> 3403 </a> 3404 </li><li > 3405 <a 3406 href="/collections/award-winners" 3407 class="p-break-words border-b pt-2.5 pb-2.5 pl-[5px] pr-[5px] h-full disable-effect flex gap-2.5 items-center" 3408 3409 > 3410 3411 3412 <span>Award Winners</span> 3413 </a> 3414 </li><li > 3415 <a 3416 href="/collections/higher-education" 3417 class="p-break-words border-b pt-2.5 pb-2.5 pl-[5px] pr-[5px] h-full disable-effect flex gap-2.5 items-center" 3418 3419 > 3420 3421 3422 <span>Higher Education</span> 3423 </a> 3424 </li></ul> 3425 </div> 3426 </div></li><li class="border-b"> 3427 3428 <div 3429 class="flex items-center justify-between h-full pr-[3px] pl-[5px] rtl:pr-[5px] rtl:pl-[3px]" 3430 @click="$store.xMobileNav.scrollTop($el); $store.xMobileNav.setActiveLink('-2-3');" 3431 > 3432 3433 <span class="p-break-words flex gap-2.5 h-full flex-1 pt-2.5 pb-2.5 disable-effect items-center"> 3434 3435 3436 3437 <span class="flex justify-between items-center w-full gap-2"> 3438 Signature Collections 3439 3440 </span> 3441 </span> 3442 3443 <span class="icon-caret-mobile h-4 w-4 pr-px pl-px block pt-1 min-w-[1rem] -rotate-90"> 3444 <svg width="100%" height="100%" viewBox="0 0 9 7" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none;"> 3445 <path d="M0.75 1.625L4.5 5.375L8.25 1.625" stroke="currentcolor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3446 </svg> 3447 3448 </span> 3449 3450</div><div 3451 class="menu-drawer duration-300 ease-in-out top-0 left-0 absolute background-header w-full h-full z-30 invisible translate-x-full" 3452 :class="{ 'menu-opening': $store.xMobileNav.currentMenuLinks.includes('-2-3')} " 3453 > 3454 <div class="overflow-x-hidden scrollbar-body absolute top-0 z-30 w-full h-full" 3455 :class="$store.xMobileNav.currentMenuLinks.length == 3 ? 'overflow-hidden' : 'overflow-y-auto'" 3456 > 3457 <div class="flex items-center justify-between ml-4 mr-4 border-y pl-[5px] pr-[5px] text-right"> 3458 <span 3459 class="h-11 w-8 pt-4 block rotate-90 pl-2 pr-2.5 mr-4" 3460 @click="$store.xMobileNav.removeActiveLink('-2-3')" 3461 ><svg width="100%" height="100%" viewBox="0 0 9 7" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none;"> 3462 <path d="M0.75 1.625L4.5 5.375L8.25 1.625" stroke="currentcolor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3463 </svg> 3464</span> 3465 <a href="/collections" class="p-break-words pt-4 pb-4 flex-1 font-semibold disable-effect"> 3466 Signature Collections 3467 </a> 3468 </div> 3469 <ul 3470 id="menu-level-2" 3471 class="w-full background-header px-4" 3472 ><li > 3473 <a 3474 href="/collections/no-kings-library" 3475 class="p-break-words border-b pt-2.5 pb-2.5 pl-[5px] pr-[5px] h-full disable-effect flex gap-2.5 items-center" 3476 3477 > 3478 3479
3480 <span>No Kings Library</span> 3481 </a> 3482 </li><li > 3483 <a 3484 href="/collections/the-hidden-history-series" 3485 class="p-break-words border-b pt-2.5 pb-2.5 pl-[5px] pr-[5px] h-full disable-effect flex gap-2.5 items-center" 3486 3487 > 3488 3489 3490 <span>The Hidden History Series</span> 3491 </a> 3492 </li><li > 3493 <a 3494 href="/collections/the-ken-blanchard-library" 3495 class="p-break-words border-b pt-2.5 pb-2.5 pl-[5px] pr-[5px] h-full disable-effect flex gap-2.5 items-center" 3496 3497 > 3498 3499 3500 <span>The Ken Blanchard Library</span> 3501 </a> 3502 </li><li > 3503 <a 3504 href="/collections/the-remote-work-collection-1" 3505 class="p-break-words border-b pt-2.5 pb-2.5 pl-[5px] pr-[5px] h-full disable-effect flex gap-2.5 items-center" 3506 3507 > 3508 3509 3510 <span>The Remote Work Collection</span> 3511 </a> 3512 </li></ul> 3513 </div> 3514 </div></li><li class="border-b"> 3515 3516 <div 3517 class="flex items-center justify-between h-full pr-[3px] pl-[5px] rtl:pr-[5px] rtl:pl-[3px]" 3518 3519 > 3520 3521 <a href="/products/berrett-koehler-publishers-gift-card" class="p-break-words h-full flex gap-2.5 flex-1 pt-2.5 pb-2.5 disable-effect items-center"> 3522 3523 3524 3525 <span class="flex justify-between items-center w-full gap-2"> 3526 Gift Cards 3527 3528 </span> 3529 </a> 3530</div></li></ul> 3531 </div> 3532 </div><div 3533 class="flex items-center mr-4 ml-4 border-b pl-[5px] pr-[3px] rtl:pr-[5px] rtl:pl-[3px]" 3534 > 3535 3536 <a href="/pages/author-services" class="flex-1 pt-2.5 pb-2.5 gap-2.5 flex items-center disable-effect"> 3537 3538 3539 3540 <span class="p-break-words"> 3541 3542 3543 <span>Services</span> 3544 3545 </span> 3546 </a> 3547</div><div @click="$store.xMobileNav.scrollTop($el); $store.xMobileNav.setActiveLink('-4')" 3548 class="flex items-center mr-4 ml-4 border-b pl-[5px] pr-[3px] rtl:pr-[5px] rtl:pl-[3px]" 3549 > 3550 3551 <span class="flex-1 pt-2.5 pb-2.5 flex gap-2.5 items-center disable-effect"> 3552 3553 3554 3555 <span class="p-break-words"> 3556 3557 3558 <span>Get Published</span> 3559 3560 </span> 3561 </span> 3562<span 3563 class="icon-caret-mobile h-4 w-4 pr-px pl-px block pt-1 min-w-[1rem] -rotate-90" 3564 ><svg width="100%" height="100%" viewBox="0 0 9 7" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none;"> 3565 <path d="M0.75 1.625L4.5 5.375L8.25 1.625" stroke="currentcolor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3566 </svg> 3567</span></div><div 3568 class="menu-drawer duration-300 ease-in-out top-0 left-0 absolute background-header w-full h-full z-30 invisible translate-x-full" 3569 :class="{ 'menu-opening': $store.xMobileNav.currentMenuLinks.includes('-4')}" 3570 > 3571 <div class="overflow-x-hidden scrollbar-body absolute top-0 z-30 w-full h-full" 3572 :class="$store.xMobileNav.currentMenuLinks.length == 2 ? 'overflow-hidden' : 'overflow-y-auto'" 3573 > 3574 <div class="flex items-center justify-between ml-4 mr-4 pl-[3px] pr-[5px] rtl:pr-[3px] rtl:pl-[5px] border-y text-left"> 3575 <span class="h-11 w-8 pt-4 block rotate-90 pl-2 pr-2.5 mr-4" 3576 @click="$store.xMobileNav.removeActiveLink('-4'); " 3577 >
3578 <svg width="100%" height="100%" viewBox="0 0 9 7" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none;"> 3579 <path d="M0.75 1.625L4.5 5.375L8.25 1.625" stroke="currentcolor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3580 </svg> 3581 3582 </span> 3583 <a href="/pages/why-bk" class="pt-4 pb-4 flex-1 font-semibold disable-effect"> 3584 <span class="p-break-words">Get Published</span> 3585 </a> 3586 </div> 3587 <ul 3588 id="menu-level-1" 3589 class="background-header w-full px-4" 3590 ><li class="border-b"> 3591 3592 <div 3593 class="flex items-center justify-between h-full pr-[3px] pl-[5px] rtl:pr-[5px] rtl:pl-[3px]" 3594 3595 > 3596 3597 <a href="/pages/why-bk" class="p-break-words h-full flex gap-2.5 flex-1 pt-2.5 pb-2.5 disable-effect items-center"> 3598 3599 3600 3601 <span class="flex justify-between items-center w-full gap-2"> 3602 Why BK? 3603 3604 </span> 3605 </a> 3606</div></li><li class="border-b"> 3607 3608 <div 3609 class="flex items-center justify-between h-full pr-[3px] pl-[5px] rtl:pr-[5px] rtl:pl-[3px]" 3610 3611 > 3612 3613 <a href="/pages/montgomery-station-press" class="p-break-words h-full flex gap-2.5 flex-1 pt-2.5 pb-2.5 disable-effect items-center"> 3614 3615 3616 3617 <span class="flex justify-between items-center w-full gap-2"> 3618 Montgomery Station Press 3619 3620 </span> 3621 </a> 3622</div></li><li class="border-b"> 3623 3624 <div 3625 class="flex items-center justify-between h-full pr-[3px] pl-[5px] rtl:pr-[5px] rtl:pl-[3px]" 3626 3627 > 3628 3629 <a href="/pages/proposals" class="p-break-words h-full flex gap-2.5 flex-1 pt-2.5 pb-2.5 disable-effect items-center"> 3630 3631 3632 3633 <span class="flex justify-between items-center w-full gap-2"> 3634 Proposals 3635 3636 </span> 3637 </a> 3638</div></li></ul> 3639 </div> 3640 </div><div @click="$store.xMobileNav.scrollTop($el); $store.xMobileNav.setActiveLink('-5')" 3641 class="flex items-center mr-4 ml-4 border-b pl-[5px] pr-[3px] rtl:pr-[5px] rtl:pl-[3px]" 3642 > 3643 3644 <span class="flex-1 pt-2.5 pb-2.5 flex gap-2.5 items-center disable-effect"> 3645 3646 3647 3648 <span class="p-break-words"> 3649 3650 3651 <span>About Us</span> 3652 3653 </span> 3654 </span> 3655<span 3656 class="icon-caret-mobile h-4 w-4 pr-px pl-px block pt-1 min-w-[1rem] -rotate-90" 3657 ><svg width="100%" height="100%" viewBox="0 0 9 7" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none;"> 3658 <path d="M0.75 1.625L4.5 5.375L8.25 1.625" stroke="currentcolor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3659 </svg> 3660</span></div><div 3661 class="menu-drawer duration-300 ease-in-out top-0 left-0 absolute background-header w-full h-full z-30 invisible translate-x-full" 3662 :class="{ 'menu-opening': $store.xMobileNav.currentMenuLinks.includes('-5')}" 3663 > 3664 <div class="overflow-x-hidden scrollbar-body absolute top-0 z-30 w-full h-full" 3665 :class="$store.xMobileNav.currentMenuLinks.length == 2 ? 'overflow-hidden' : 'overflow-y-auto'" 3666 > 3667 <div class="flex items-center justify-between ml-4 mr-4 pl-[3px] pr-[5px] rtl:pr-[3px] rtl:pl-[5px] border-y text-left"> 3668 <span class="h-11 w-8 pt-4 block rotate-90 pl-2 pr-2.5 mr-4" 3669 @click="$store.xMobileNav.removeActiveLink('-5'); " 3670 > 3671 <svg width="100%" height="100%" viewBox="0 0 9 7" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none;"> 3672 <path d="M0.75 1.625L4.5 5.375L8.25 1.625" stroke="currentcolor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3673 </svg> 3674 3675 </span> 3676 <a href="/pages/about-us" class="pt-4 pb-4 flex-1 font-semibold disable-effect">
3677 <span class="p-break-words">About Us</span> 3678 </a> 3679 </div> 3680 <ul 3681 id="menu-level-1" 3682 class="background-header w-full px-4" 3683 ><li class="border-b"> 3684 3685 <div 3686 class="flex items-center justify-between h-full pr-[3px] pl-[5px] rtl:pr-[5px] rtl:pl-[3px]" 3687 3688 > 3689 3690 <a href="/pages/about-us" class="p-break-words h-full flex gap-2.5 flex-1 pt-2.5 pb-2.5 disable-effect items-center"> 3691 3692 3693 3694 <span class="flex justify-between items-center w-full gap-2"> 3695 Our Company 3696 3697 </span> 3698 </a> 3699</div></li><li class="border-b"> 3700 3701 <div 3702 class="flex items-center justify-between h-full pr-[3px] pl-[5px] rtl:pr-[5px] rtl:pl-[3px]" 3703 3704 > 3705 3706 <a href="/pages/team" class="p-break-words h-full flex gap-2.5 flex-1 pt-2.5 pb-2.5 disable-effect items-center"> 3707 3708 3709 3710 <span class="flex justify-between items-center w-full gap-2"> 3711 Our Team 3712 3713 </span> 3714 </a> 3715</div></li><li class="border-b"> 3716 3717 <div 3718 class="flex items-center justify-between h-full pr-[3px] pl-[5px] rtl:pr-[5px] rtl:pl-[3px]" 3719 3720 > 3721 3722 <a href="https://apply.workable.com/berrett-koehler-publishers-3/" class="p-break-words h-full flex gap-2.5 flex-1 pt-2.5 pb-2.5 disable-effect items-center"> 3723 3724 3725 3726 <span class="flex justify-between items-center w-full gap-2"> 3727 Careers 3728 3729 </span> 3730 </a> 3731</div></li><li class="border-b"> 3732 3733 <div 3734 class="flex items-center justify-between h-full pr-[3px] pl-[5px] rtl:pr-[5px] rtl:pl-[3px]" 3735 3736 > 3737 3738 <a href="/blogs/the-bk-exchange" class="p-break-words h-full flex gap-2.5 flex-1 pt-2.5 pb-2.5 disable-effect items-center"> 3739 3740 3741 3742 <span class="flex justify-between items-center w-full gap-2"> 3743 Blog 3744 3745 </span> 3746 </a> 3747</div></li><li class="border-b"> 3748 3749 <div 3750 class="flex items-center justify-between h-full pr-[3px] pl-[5px] rtl:pr-[5px] rtl:pl-[3px]" 3751 3752 > 3753 3754 <a href="/pages/faq" class="p-break-words h-full flex gap-2.5 flex-1 pt-2.5 pb-2.5 disable-effect items-center"> 3755 3756 3757 3758 <span class="flex justify-between items-center w-full gap-2"> 3759 FAQ 3760 3761 </span> 3762 </a> 3763</div></li><li class="border-b"> 3764 3765 <div 3766 class="flex items-center justify-between h-full pr-[3px] pl-[5px] rtl:pr-[5px] rtl:pl-[3px]" 3767 3768 > 3769 3770 <a href="/pages/contact" class="p-break-words h-full flex gap-2.5 flex-1 pt-2.5 pb-2.5 disable-effect items-center"> 3771 3772 3773 3774 <span class="flex justify-between items-center w-full gap-2"> 3775 Contact Us 3776 3777 </span> 3778 </a> 3779</div></li></ul> 3780 </div> 3781 </div><div @click="$store.xMobileNav.scrollTop($el); $store.xMobileNav.setActiveLink('-6')" 3782 class="flex items-center mr-4 ml-4 border-b pl-[5px] pr-[3px] rtl:pr-[5px] rtl:pl-[3px]" 3783 > 3784 3785 <span class="flex-1 pt-2.5 pb-2.5 flex gap-2.5 items-center disable-effect"> 3786 3787 3788
3789 <span class="p-break-words"> 3790 3791 3792 <span>Members</span> 3793 3794 </span> 3795 </span> 3796<span 3797 class="icon-caret-mobile h-4 w-4 pr-px pl-px block pt-1 min-w-[1rem] -rotate-90" 3798 ><svg width="100%" height="100%" viewBox="0 0 9 7" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none;"> 3799 <path d="M0.75 1.625L4.5 5.375L8.25 1.625" stroke="currentcolor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3800 </svg> 3801</span></div><div 3802 class="menu-drawer duration-300 ease-in-out top-0 left-0 absolute background-header w-full h-full z-30 invisible translate-x-full" 3803 :class="{ 'menu-opening': $store.xMobileNav.currentMenuLinks.includes('-6')}" 3804 > 3805 <div class="overflow-x-hidden scrollbar-body absolute top-0 z-30 w-full h-full" 3806 :class="$store.xMobileNav.currentMenuLinks.length == 2 ? 'overflow-hidden' : 'overflow-y-auto'" 3807 > 3808 <div class="flex items-center justify-between ml-4 mr-4 pl-[3px] pr-[5px] rtl:pr-[3px] rtl:pl-[5px] border-y text-left"> 3809 <span class="h-11 w-8 pt-4 block rotate-90 pl-2 pr-2.5 mr-4" 3810 @click="$store.xMobileNav.removeActiveLink('-6'); " 3811 > 3812 <svg width="100%" height="100%" viewBox="0 0 9 7" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none;"> 3813 <path d="M0.75 1.625L4.5 5.375L8.25 1.625" stroke="currentcolor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3814 </svg> 3815 3816 </span> 3817 <a href="/pages/bk-community" class="pt-4 pb-4 flex-1 font-semibold disable-effect"> 3818 <span class="p-break-words">Members</span> 3819 </a> 3820 </div> 3821 <ul 3822 id="menu-level-1" 3823 class="background-header w-full px-4" 3824 ><li class="border-b"> 3825 3826 <div 3827 class="flex items-center justify-between h-full pr-[3px] pl-[5px] rtl:pr-[5px] rtl:pl-[3px]" 3828 3829 > 3830 3831 <a href="/pages/bk-community" class="p-break-words h-full flex gap-2.5 flex-1 pt-2.5 pb-2.5 disable-effect items-center"> 3832 3833 3834 3835 <span class="flex justify-between items-center w-full gap-2"> 3836 Learn More 3837 3838 </span> 3839 </a> 3840</div></li><li class="border-b"> 3841 3842 <div 3843 class="flex items-center justify-between h-full pr-[3px] pl-[5px] rtl:pr-[5px] rtl:pl-[3px]" 3844 3845 > 3846 3847 <a href="/pages/members-dashboard" class="p-break-words h-full flex gap-2.5 flex-1 pt-2.5 pb-2.5 disable-effect items-center"> 3848 3849 3850 3851 <span class="flex justify-between items-center w-full gap-2"> 3852 Members Dashboard 3853 3854 </span> 3855 </a> 3856</div></li></ul> 3857 </div> 3858 </div></li><li class="x-block-login block-mobile-navigation pl-5 pr-5" ><a href="https://bkconnection.com/customer_authentication/redirect?locale=en®ion_country=US" 3859 class="pt-3.5 pb-3.5 flex items-center border-b disable-effect" 3860 data-no-instant 3861 aria-label="Log in" 3862 > 3863 <span class="w-5 mr-4"> 3864 <svg width="100%" height="100%" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none;"> 3865 <path d="M20 21V19C20 17.9391 19.5786 16.9217 18.8284 16.1715C18.0783 15.4214 17.0609 15 16 15H7.99999C6.93913 15 5.92171 15.4214 5.17157 16.1715C4.42142 16.9217 4 17.9391 4 19V21" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 3866 <path d="M12 11C14.2092 11 16.0001 9.20914 16.0001 7C16.0001 4.79086 14.2092 3 12 3C9.79093 3 8.00006 4.79086 8.00006 7C8.00006 9.20914 9.79093 11 12 11Z" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 3867 </svg> 3868 3869 </span>Log in</a> 3870 </li><li class="x-block-social block-mobile-navigation pl-5 pr-5" > 3871 <div class="pt-2 pb-2 pl-0.5 pr-0.5 flex items-center justify-center opacity-70 border-b"> 3872 3873<div id="selector-social" class=" flex lg:items-center lg:justify-end relative py-1.5"> 3874 3875 <ul class="social-list flex flex-wrap opacity-70" role="list"> 3876<li> 3877 <a href="https://www.facebook.com/BerrettKoehler" target="blank" aria-label="Facebook" class="flex disable-effect hover-text-link w-11 h-11 pt-3 pr-3 pb-3 pl-3">
3877<svg width="100%" height="100%" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none"> 3878 <path d="M17.2788 13.2489L17.8494 9.63111H14.2846V7.28444C14.2846 6.29333 14.7822 5.32889 16.3797 5.32889H18V2.24444C18 2.24444 16.5303 2 15.1199 2C12.1851 2 10.2635 3.73333 10.2635 6.87111V9.63111H7V13.2489H10.2635V22H14.2801V13.2489H17.2788Z" fill="currentColor"/> 3879 </svg> 3880</a> 3881 </li><li> 3882 <a href="https://www.instagram.com/bkpub" target="blank" aria-label="Instagram" class="flex disable-effect hover-text-link w-11 h-11 pt-3 pr-3 pb-3 pl-3"><svg width="100%" height="100%" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none"> 3883 <path d="M12.0059 3.80184C14.6793 3.80184 14.9959 3.81356 16.0473 3.86046C17.0244 3.90346 17.5521 4.06762 17.9038 4.20442C18.369 4.38421 18.7051 4.60309 19.053 4.95095C19.4047 5.30272 19.6197 5.63494 19.7995 6.10006C19.9363 6.45183 20.1004 6.98339 20.1434 7.95661C20.1903 9.01192 20.2021 9.32851 20.2021 11.998C20.2021 14.6715 20.1903 14.9881 20.1434 16.0395C20.1004 17.0166 19.9363 17.5443 19.7995 17.896C19.6197 18.3612 19.4008 18.6973 19.053 19.0451C18.7012 19.3969 18.369 19.6119 17.9038 19.7917C17.5521 19.9285 17.0205 20.0926 16.0473 20.1356C14.992 20.1825 14.6754 20.1943 12.0059 20.1943C9.33242 20.1943 9.01583 20.1825 7.96443 20.1356C6.9873 20.0926 6.45964 19.9285 6.10788 19.7917C5.64276 19.6119 5.30662 19.393 4.95876 19.0451C4.607 18.6934 4.39203 18.3612 4.21223 17.896C4.07543 17.5443 3.91128 17.0127 3.86828 16.0395C3.82138 14.9842 3.80965 14.6676 3.80965 11.998C3.80965 9.3246 3.82138 9.00801 3.86828 7.95661C3.91128 6.97948 4.07543 6.45183 4.21223 6.10006C4.39203 5.63494 4.6109 5.29881 4.95876 4.95095C5.31053 4.59918 5.64276 4.38421 6.10788 4.20442C6.45964 4.06762 6.99121 3.90346 7.96443 3.86046C9.01583 3.81356 9.33242 3.80184 12.0059 3.80184ZM12.0059 2C9.28943 2 8.94938 2.01173 7.88235 2.05863C6.81923 2.10553 6.08833 2.27751 5.45515 2.52374C4.79461 2.78171 4.23569 3.12175 3.68067 3.68067C3.12175 4.23568 2.78171 4.79461 2.52374 5.45124C2.27751 6.08833 2.10553 6.81532 2.05863 7.87844C2.01173 8.94938 2 9.28943 2 12.0059C2 14.7223 2.01173 15.0623 2.05863 16.1294C2.10553 17.1925 2.27751 17.9234 2.52374 18.5566C2.78171 19.2171 3.12175 19.776 3.68067 20.3311C4.23569 20.8861 4.79461 21.23 5.45124 21.4841C6.08833 21.7303 6.81532 21.9023 7.87844 21.9492C8.94548 21.9961 9.28552 22.0078 12.002 22.0078C14.7184 22.0078 15.0584 21.9961 16.1255 21.9492C17.1886 21.9023 17.9195 21.7303 18.5527 21.4841C19.2093 21.23 19.7682 20.8861 20.3232 20.3311C20.8782 19.776 21.2222 19.2171 21.4763 18.5605C21.7225 17.9234 21.8945 17.1964 21.9414 16.1333
3883C21.9883 15.0663 22 14.7262 22 12.0098C22 9.29334 21.9883 8.95329 21.9414 7.88626C21.8945 6.82314 21.7225 6.09224 21.4763 5.45906C21.23 4.79461 20.89 4.23568 20.3311 3.68067C19.776 3.12566 19.2171 2.78171 18.5605 2.52765C17.9234 2.28141 17.1964 2.10944 16.1333 2.06254C15.0623 2.01173 14.7223 2 12.0059 2Z" fill="currentColor"/> 3884 <path d="M12.0058 6.86618C9.16822 6.86618 6.86609 9.16831 6.86609 12.0059C6.86609 14.8435 9.16822 17.1456 12.0058 17.1456C14.8434 17.1456 17.1455 14.8435 17.1455 12.0059C17.1455 9.16831 14.8434 6.86618 12.0058 6.86618ZM12.0058 15.3399C10.1649 15.3399 8.67183 13.8468 8.67183 12.0059C8.67183 10.165 10.1649 8.67193 12.0058 8.67193C13.8467 8.67193 15.3398 10.165 15.3398 12.0059C15.3398 13.8468 13.8467 15.3399 12.0058 15.3399Z" fill="currentColor"/> 3885 <path d="M18.5488 6.66291C18.5488 7.32736 18.0094 7.86283 17.3488 7.86283C16.6844 7.86283 16.1489 7.32345 16.1489 6.66291C16.1489 5.99845 16.6883 5.46298 17.3488 5.46298C18.0094 5.46298 18.5488 6.00236 18.5488 6.66291Z" fill="currentColor"/> 3886 </svg> 3887</a> 3888 </li><li> 3889 <a href="https://www.tiktok.com/@bkpub" target="blank" aria-label="TikTok" class="flex disable-effect hover-text-link w-11 h-11 pt-3 pr-3 pb-3 pl-3"><svg width="100%" height="100%" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none"> 3890 <path d="M16.0604 2H12.6898V15.6232C12.6898 17.2464 11.3935 18.5797 9.78022 18.5797C8.16695 18.5797 6.87057 17.2464 6.87057 15.6232C6.87057 14.029 8.13814 12.7246 9.69381 12.6667V9.24639C6.2656 9.30433 3.5 12.1159 3.5 15.6232C3.5 19.1594 6.32321 22 9.80904 22C13.2948 22 16.118 19.1304 16.118 15.6232V8.63767C17.3856 9.56522 18.9412 10.1159 20.5833 10.1449V6.72464C18.0482 6.63768 16.0604 4.55072 16.0604 2Z" fill="currentColor"/> 3891 </svg> 3892</a> 3893 </li><li> 3894 <a href="https://www.youtube.com/berrettkoehler" target="blank" aria-label="YouTube" class="flex disable-effect hover-text-link w-11 h-11 pt-3 pr-3 pb-3 pl-3"><svg width="100%" height="100%" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none"> 3895 <path d="M23.0226 7.45237C23.0226 7.45237 22.8005 5.88392 22.1162 5.19522C21.2498 4.28881 20.2812 4.28437 19.8369 4.23105C16.6555 4 11.8791 4 11.8791 4H11.8702C11.8702 4 7.09372 4 3.91239 4.23105C3.46806 4.28437 2.49944 4.28881 1.63302 5.19522C0.948764 5.88392 0.731047 7.45237 0.731047 7.45237C0.731047 7.45237 0.5 9.29631 0.5 11.1358V12.8598C0.5 14.6992 0.726604 16.5432 0.726604 16.5432C0.726604 16.5432 0.948764 18.1116 1.62858 18.8003C2.495 19.7067 3.63246 19.6756 4.13899 19.7734C5.96071 19.9467 11.8746 20 11.8746 20C11.8746 20 16.6555 19.9911 19.8369 19.7645C20.2812 19.7112 21.2498 19.7067 22.1162 18.8003C22.8005 18.1116 23.0226 16.5432 23.0226 16.5432C23.0226 16.5432 23.2492 14.7037 23.2492 12.8598V11.1358C23.2492 9.29631 23.0226 7.45237 23.0226 7.45237ZM9.52416 14.9525V8.55873L15.6691 11.7667L9.52416 14.9525Z" fill="currentColor"/> 3896 </svg> 3897</a> 3898 </li><li> 3899 <a href="https://www.linkedin.com/company/berrett-koehler-publishers/" target="blank" aria-label="Linkedin" class="flex disable-effect hover-text-link w-11 h-11 pt-3 pr-3 pb-3 pl-3"><svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" class="w-full h-full" viewBox="0 0 24 24" style="enable-background:new 0 0 24 24;" xml:space="preserve"> 3900 <path d="M16.5,8.8c-0.8,0-1.5,0.2-2.2,0.6c-0.1-0.3-0.5-0.6-0.8-0.6H10c-0.5,0-0.9,0.4-0.9,0.9c0,0,0,0,0,0v10.4 c0,0.5,0.4,0.9,0.9,0.9c0,0,0,0,0,0h3.5c0.5,0,0.9-0.4,0.9-0.9c0,0,0,0,0,0v-4.8c0-0.5,0.4-0.9,0.9-0.9s0.9,0.4,0.9,0.9v4.8 c0,0.5,0.4,0.9,0.9,0.9c0,0,0,0,0,0h3.5c0.5,0,0.9-0.4,0.9-0.9c0,0,0,0,0,0v-6.5C21.3,10.9,19.2,8.8,16.5,8.8z M19.6,19.2h-1.7v-3.9 c0-1.4-1.2-2.6-2.6-2.6s-2.6,1.2-2.6,2.6v3.9h-1.7v-8.7h1.7v0.6c0,0.5,0.4,0.9,0.9,0.9c0.3,0,0.5-0.1,0.7-0.3c1-1.3,2.9-1.5,4.2-0.5 c0.7,0.6,1.2,1.5,1.2,2.4V19.2z M7.4,8.8H3.9c-0.5,0-0.9,0.4-0.9,0.9c0,0,0,0,0,0v10.4c0,0.5,0.4,0.9,0.9,0.9c0,0,0,0,0,0h3.5 c0.5,0,0.9-0.4,0.9-0.9c0,0,0,0,0,0V9.7C8.3,9.2,7.9,8.8,7.4,8.8C7.4,8.8,7.4,8.8,7.4,8.8z M6.5,19.2H4.8v-8.7h1.7V19.2z M5.7,2.3 C4.1,2.2,2.8,3.4,2.7,5c-0.1,1.5,1.1,2.9,2.6,3c0.1,0,0.2,0,0.3,0h0c1.5,0.1,2.9-1.1,3-2.6S7.5,2.4,6,2.3C5.9,2.3,5.8,2.3,5.7,2.3 L5.7,2.3z M5.7,6.2L5.7,6.2C5,6.3,4.5,5.8,4.4,5.3c0,0,0-0.1,0-0.1c0-0.6,0.5-1.1,1.2-1.1C6.3,4,6.8,4.4,6.9,5c0,0,0,0.1,0,0.1 C6.9,5.8,6.4,6.2,5.7,6.2z"/> 3901 </svg> 3902</a> 3903 </li></ul>
3904 </div> 3905 </div> 3906 </li> 3907 </ul> 3908 </div><div class="x-container-mobile-nav-language pt-1.5 pb-1.5 pl-5 pr-5 lg:flex lg:items-center z-50 background-header justify-center lg:justify-end bottom-0 left-0 max-w-sm border-t"> 3909</div></div> 3910 </div> 3911</template> 3912</div> 3913<!-- END sections: header-group-puff --> 3914 3915 3916 3917 <!-- BEGIN sections: aside-group-puff --> 3918<div id="shopify-section-sections--24498229346667__product-labels-and-badges" class="shopify-section shopify-section-group-aside-group-puff section-product-labels-and-badges"><style data-shopify>.x-badge-text_label_AqTJe4 .x-badge-content.x-badge-text{ 3919 background-color:#DCE6F3; 3920 color:#545152; 3921 3922 } 3923 .dark .x-badge-text_label_AqTJe4 .x-badge-content.x-badge-text{ 3924 background-color:#DCE6F3; 3925 color:#ffffff; 3926 3927 border-width: 0; 3928 3929 }.x-badge-text_label_AqTJe4 { 3930 --font-size-scale: 0.9rem; 3931 3932 } 3933 @media (min-width: 768px) { 3934 .x-badge-text_label_AqTJe4 { 3935 --font-size-scale: 0.9rem; 3936 3937 } 3938 }</style><div class="x-badges-block-data" x-badges-block-data='{ 3939 "id": "text_label_AqTJe4", 3940 "enable": true, 3941 "type": "text-label", 3942 "settings": { 3943 "show_on_product_card": true, 3944 "show_on_product_page": true, 3945 "applied_to": "", 3946 "applied_products": [], 3947 "applied_collections": [], 3948 "content": "{custom.format2}", 3949 "type": "round", 3950 "background_color": "#DCE6F3", 3951 "text_color": "#545152", 3952 "image": null, 3953 "image_alt": "", 3954 "image_aspect_ratio": 0, 3955 "size": 2, 3956 "size_mobile": 2, 3957 "opacity": 100, 3958 "position": "below-image", 3959 "horizontal_position": 5, 3960 "vertical_position": 5, 3961 "schedule_enabled": false, 3962 "timezone": -4, 3963 "start_year": 2023, 3964 "start_month": 1, 3965 "start_day": 1, 3966 "start_hour": 0, 3967 "start_minute": 0, 3968 "end_year": 2023, 3969 "end_month": 1, 3970 "end_day": 1, 3971 "end_hour": 0, 3972 "end_minute": 0, 3973 "day_since": "none", 3974 "number_show": 30 3975 } 3976 }' x-badges-icon=''></div>
3976<script src="//bkconnection.com/cdn/shop/t/4/assets/labels-and-badges.js?v=31298988695393774671747335364" defer></script>
3976 3977</div><div id="shopify-section-sections--24498229346667__cookie-banner" class="shopify-section shopify-section-group-aside-group-puff section-cookie-banner"><style data-shopify> 3978 .color-heading--sections--24498229346667__cookie-banner { 3979 --colors-heading: 247, 247, 247; 3980 } 3981 3982 .dark .color-heading--sections--24498229346667__cookie-banner { 3983 3984 --colors-heading: 40, 41, 40; 3985 3986 } 3987 /* button accept */ 3988 .button-accept { 3989 3990 color: #000000; 3991 3992 3993 background-color: #f7f7f7; 3994 border-color: #f7f7f7; 3995 3996 } 3997 .dark .button-accept { 3998 3999 color: #f7f7f7; 4000 4001 4002 background-color: #282928; 4003 border-color: #282928; 4004 4005 } 4006 /* button decline */ 4007 .button-decline { 4008 4009 border-color: #f7f7f7; 4010 color: #f7f7f7; 4011 4012 border: 1px solid; 4013 } 4014 .dark .button-decline { 4015 4016 border-color: #282928; 4017 color: #282928; 4018 4019 border: 1px solid; 4020 } 4021 /* bacnkground and color of section */ 4022 .bg-cookie-banner { 4023 4024 color: #f7f7f7; 4025 4026 background: #282928; 4027 } 4028 .dark .bg-cookie-banner { 4029 4030 color: #282928; 4031 4032 background: #ffffff; 4033 }</style><div 4034 id="cookies-banner" 4035 x-data="xCookieBanner(4)" x-show="show" 4036 x-cloak 4037 x-transition:enter="transition-all ease-in-out duration-500" 4038 x-transition:enter-start="opacity-0 transform translate-y-full" 4039 x-transition:enter-end="opacity-100 transform translate-y-0" 4040 x-transition:leave="transition-all ease-in-out duration-500" 4041 x-transition:leave-end="opacity-0 transform translate-y-full" 4042 class="w-full fixed bottom-0 left-0 right-0 z-50 bg-cookie-banner color-heading--sections--24498229346667__
4042cookie-banner" 4043 > 4044 <div class="x-pgw page-width mx-auto flex flex-wrap lg:flex-nowrap lg:justify-between"> 4045 <div class="rte py-3 w-full lg:py-4 lg:w-auto text- md:flex md:items-center md:justify-start"> 4046 <span><p>We use cookies and similar technologies to provide the best experience on our website. </p></span> 4047 </div> 4048 <div class="flex items-center pb-3 lg:pb-0 lg:ml-7 justify-center md:justify-start gap-2 w-full md:w-auto"><button class="button w-auto button-decline px-10 py-4 lg:my-4 empty:hidden whitespace-nowrap" @click="handleDecline()"> 4049 Decline 4050 </button><button class="button button-accept w-auto px-10 py-4 mr-2.5 lg:my-4 empty:hidden whitespace-nowrap" @click="handleAccept()"> 4051 Got it! 4052 </button></div> 4053 </div> 4054 </div>
4054<script src="//bkconnection.com/cdn/shop/t/4/assets/cookie-banner.js?v=135863105119365794521747335364" defer></script>
4054 4055 4056</div> 4057<!-- END sections: aside-group-puff --> 4058 4059 4060 <main id="MainContent" class="content-for-layout focus-none outline-none grow theme-template-cart theme-template-suffix-none" role="main" tabindex="-1"> 4061 4062 4063 <div id="shopify-section-template--24498228658539__cart-items" class="shopify-section x-section-main-cart-items"> 4064<div 4065 id="main-cart-items" 4066 class="x-pgw page-width mx-auto pt-[36px] md:pt-[44px] pb-[36px] md:pb-[44px]" 4067 x-intersect.once="$store.xCartAnalytics.viewCart()"><div class="block items-center justify-center text-center pb-9"> 4068 <h1 class="h2 block mt-6 mb-6">Your cart is empty</h1> 4069 <a class="disable-effect button button-solid inline-block leading-normal py-2.5 lg:py-3 px-6" href="/collections/all"> 4070 4071 4072 <span class="button-text is-focus-button:opacity-0">Continue shopping</span> 4073 4074 4075 4076 </a><div class="mt-10"> 4077 <p class="block mb-4 text-medium">Have an account?</p> 4078 <p class="my-2 leading-tight"> 4079 <a href="https://bkconnection.com/customer_authentication/redirect?locale=en®ion_country=US" class="nav-link relative effect-inline">Log in</a> to check out faster. 4080 </p> 4081 </div></div></div> 4082</div><section id="shopify-section-template--24498228658539__rich_text_jNgTd6" class="shopify-section section section-rich-text x-section"><style data-shopify>#shopify-section-template--24498228658539__rich_text_jNgTd6{ 4083 4084 --background-color: 255,255,255; 4085 background: #ffffff; 4086 4087 } 4088 .dark #shopify-section-template--24498228658539__rich_text_jNgTd6{background: #202020; 4089 --background-color: 32,32,32;} 4090 .section--template--24498228658539__rich_text_jNgTd6 { 4091 4092 4093 } 4094 .dark .section--template--24498228658539__rich_text_jNgTd6 { 4095 4096 --colors-text: 255, 255, 255; 4097 4098 4099 --colors-heading: 255, 255, 255; 4100 4101 }</style> 4102 4103<div class="section--template--24498228658539__rich_text_jNgTd6 relative x-pgw page-width mx-auto pt-[28px] md:pt-[28px] pb-[28px] md:pb-[28px]"> 4104 <div class="md:flex justify-center"> 4105 <div class="x-container-rich-text w-full text-center md:text-center"><div 4106 x-intersect.once="$el.classList.add('is-visible')" 4107 class="x-block-text p-break-words rte pt-2 pb-2 leading-tight text-[rgb(var(--colors-text))] anm-fade-element" 4108 4109 > 4110 4111 <div class="rte"><h6><strong>Add discount codes at checkout.</strong></h6></div> 4112</div> 4113 4114 </div> 4115 </div> 4116</div> 4117 4118</section><div id="shopify-section-template--24498228658539__cart-footer" class="shopify-section cart__footer-wrapper"> 4119 <div 4120 id="main-cart-footer" 4121 class="x-pgw page-width mx-auto grid md:grid-cols-2 lg:grid-cols-3 md:gap-6 lg:gap-14 pt-[40px] md:pt-[40px] pb-[48px] md:pb-[44px]" 4122 ></div> 4123</div><div id="shopify-section-template--24498228658539__cart-upsell" class="shopify-section main-cart-upsell"><div id="main-cart-upsell"></div> 4124 4125</div> 4126 4127 </main> 4128 4129 4130 <!-- BEGIN sections: footer-group-puff --> 4131<div id="shopify-section-sections--24498229510507__footer" class="shopify-section shopify-section-group-footer-group-puff section-footer"> 4132<div class="section-footer relative background-footer sticky-footer selection:bg-[rgba(var(--colors-text-footer),0.2)] pt-[0px] md:pt-[0px] pb-[32px] md:pb-[32px]"><div class="flex items-center"> 4133 4134<div id="selector-social" class=" flex lg:items-center lg:justify-end relative py-1.5 mx-auto"> 4135 4136 <ul class="social-list flex flex-wrap opacity-70" role="list"> 4137<li> 4138 <a href="https://www.facebook.com/BerrettKoehler" target="blank" aria-label="Facebook" class="flex disable-effect hover-text-link w-11 h-11 pt-3 pr-3 pb-3 pl-3"><svg width="100%" height="100%" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none"> 4139 <path d="M17.2788 13.2489L17.8494 9.63111H14.2846V7.28444C14.2846 6.29333 14.7822 5.32889 16.3797 5.32889H18V2.24444C18 2.24444 16.5303 2 15.1199 2C12.1851 2 10.2635 3.73333 10.2635 6.87111V9.63111H7V13.2489H10.2635V22H14.2801V13.2489H17.2788Z" fill="currentColor"/> 4140 </svg> 4141</a> 4142 </li><li> 4143 <a href="https://www.instagram.com/bkpub" target="blank" aria-label="Instagram" class="flex disable-effect hover-text-link w-11 h-11 pt-3 pr-3 pb-3 pl-3">
4143<svg width="100%" height="100%" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none"> 4144 <path d="M12.0059 3.80184C14.6793 3.80184 14.9959 3.81356 16.0473 3.86046C17.0244 3.90346 17.5521 4.06762 17.9038 4.20442C18.369 4.38421 18.7051 4.60309 19.053 4.95095C19.4047 5.30272 19.6197 5.63494 19.7995 6.10006C19.9363 6.45183 20.1004 6.98339 20.1434 7.95661C20.1903 9.01192 20.2021 9.32851 20.2021 11.998C20.2021 14.6715 20.1903 14.9881 20.1434 16.0395C20.1004 17.0166 19.9363 17.5443 19.7995 17.896C19.6197 18.3612 19.4008 18.6973 19.053 19.0451C18.7012 19.3969 18.369 19.6119 17.9038 19.7917C17.5521 19.9285 17.0205 20.0926 16.0473 20.1356C14.992 20.1825 14.6754 20.1943 12.0059 20.1943C9.33242 20.1943 9.01583 20.1825 7.96443 20.1356C6.9873 20.0926 6.45964 19.9285 6.10788 19.7917C5.64276 19.6119 5.30662 19.393 4.95876 19.0451C4.607 18.6934 4.39203 18.3612 4.21223 17.896C4.07543 17.5443 3.91128 17.0127 3.86828 16.0395C3.82138 14.9842 3.80965 14.6676 3.80965 11.998C3.80965 9.3246 3.82138 9.00801 3.86828 7.95661C3.91128 6.97948 4.07543 6.45183 4.21223 6.10006C4.39203 5.63494 4.6109 5.29881 4.95876 4.95095C5.31053 4.59918 5.64276 4.38421 6.10788 4.20442C6.45964 4.06762 6.99121 3.90346 7.96443 3.86046C9.01583 3.81356 9.33242 3.80184 12.0059 3.80184ZM12.0059 2C9.28943 2 8.94938 2.01173 7.88235 2.05863C6.81923 2.10553 6.08833 2.27751 5.45515 2.52374C4.79461 2.78171 4.23569 3.12175 3.68067 3.68067C3.12175 4.23568 2.78171 4.79461 2.52374 5.45124C2.27751 6.08833 2.10553 6.81532 2.05863 7.87844C2.01173 8.94938 2 9.28943 2 12.0059C2 14.7223 2.01173 15.0623 2.05863 16.1294C2.10553 17.1925 2.27751 17.9234 2.52374 18.5566C2.78171 19.2171 3.12175 19.776 3.68067 20.3311C4.23569 20.8861 4.79461 21.23 5.45124 21.4841C6.08833 21.7303 6.81532 21.9023 7.87844 21.9492C8.94548 21.9961 9.28552 22.0078 12.002 22.0078C14.7184 22.0078 15.0584 21.9961 16.1255 21.9492C17.1886 21.9023 17.9195 21.7303 18.5527 21.4841C19.2093 21.23 19.7682 20.8861 20.3232 20.3311C20.8782 19.776 21.2222 19.2171 21.4763 18.5605C21.7225 17.9234 21.8945 17.1964 21.9414 16.1333
4144C21.9883 15.0663 22 14.7262 22 12.0098C22 9.29334 21.9883 8.95329 21.9414 7.88626C21.8945 6.82314 21.7225 6.09224 21.4763 5.45906C21.23 4.79461 20.89 4.23568 20.3311 3.68067C19.776 3.12566 19.2171 2.78171 18.5605 2.52765C17.9234 2.28141 17.1964 2.10944 16.1333 2.06254C15.0623 2.01173 14.7223 2 12.0059 2Z" fill="currentColor"/> 4145 <path d="M12.0058 6.86618C9.16822 6.86618 6.86609 9.16831 6.86609 12.0059C6.86609 14.8435 9.16822 17.1456 12.0058 17.1456C14.8434 17.1456 17.1455 14.8435 17.1455 12.0059C17.1455 9.16831 14.8434 6.86618 12.0058 6.86618ZM12.0058 15.3399C10.1649 15.3399 8.67183 13.8468 8.67183 12.0059C8.67183 10.165 10.1649 8.67193 12.0058 8.67193C13.8467 8.67193 15.3398 10.165 15.3398 12.0059C15.3398 13.8468 13.8467 15.3399 12.0058 15.3399Z" fill="currentColor"/> 4146 <path d="M18.5488 6.66291C18.5488 7.32736 18.0094 7.86283 17.3488 7.86283C16.6844 7.86283 16.1489 7.32345 16.1489 6.66291C16.1489 5.99845 16.6883 5.46298 17.3488 5.46298C18.0094 5.46298 18.5488 6.00236 18.5488 6.66291Z" fill="currentColor"/> 4147 </svg> 4148</a> 4149 </li><li> 4150 <a href="https://www.tiktok.com/@bkpub" target="blank" aria-label="TikTok" class="flex disable-effect hover-text-link w-11 h-11 pt-3 pr-3 pb-3 pl-3"><svg width="100%" height="100%" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none"> 4151 <path d="M16.0604 2H12.6898V15.6232C12.6898 17.2464 11.3935 18.5797 9.78022 18.5797C8.16695 18.5797 6.87057 17.2464 6.87057 15.6232C6.87057 14.029 8.13814 12.7246 9.69381 12.6667V9.24639C6.2656 9.30433 3.5 12.1159 3.5 15.6232C3.5 19.1594 6.32321 22 9.80904 22C13.2948 22 16.118 19.1304 16.118 15.6232V8.63767C17.3856 9.56522 18.9412 10.1159 20.5833 10.1449V6.72464C18.0482 6.63768 16.0604 4.55072 16.0604 2Z" fill="currentColor"/> 4152 </svg> 4153</a> 4154 </li><li> 4155 <a href="https://www.youtube.com/berrettkoehler" target="blank" aria-label="YouTube" class="flex disable-effect hover-text-link w-11 h-11 pt-3 pr-3 pb-3 pl-3"><svg width="100%" height="100%" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none"> 4156 <path d="M23.0226 7.45237C23.0226 7.45237 22.8005 5.88392 22.1162 5.19522C21.2498 4.28881 20.2812 4.28437 19.8369 4.23105C16.6555 4 11.8791 4 11.8791 4H11.8702C11.8702 4 7.09372 4 3.91239 4.23105C3.46806 4.28437 2.49944 4.28881 1.63302 5.19522C0.948764 5.88392 0.731047 7.45237 0.731047 7.45237C0.731047 7.45237 0.5 9.29631 0.5 11.1358V12.8598C0.5 14.6992 0.726604 16.5432 0.726604 16.5432C0.726604 16.5432 0.948764 18.1116 1.62858 18.8003C2.495 19.7067 3.63246 19.6756 4.13899 19.7734C5.96071 19.9467 11.8746 20 11.8746 20C11.8746 20 16.6555 19.9911 19.8369 19.7645C20.2812 19.7112 21.2498 19.7067 22.1162 18.8003C22.8005 18.1116 23.0226 16.5432 23.0226 16.5432C23.0226 16.5432 23.2492 14.7037 23.2492 12.8598V11.1358C23.2492 9.29631 23.0226 7.45237 23.0226 7.45237ZM9.52416 14.9525V8.55873L15.6691 11.7667L9.52416 14.9525Z" fill="currentColor"/> 4157 </svg> 4158</a> 4159 </li><li> 4160 <a href="https://www.linkedin.com/company/berrett-koehler-publishers/" target="blank" aria-label="Linkedin" class="flex disable-effect hover-text-link w-11 h-11 pt-3 pr-3 pb-3 pl-3"><svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" class="w-full h-full" viewBox="0 0 24 24" style="enable-background:new 0 0 24 24;" xml:space="preserve"> 4161 <path d="M16.5,8.8c-0.8,0-1.5,0.2-2.2,0.6c-0.1-0.3-0.5-0.6-0.8-0.6H10c-0.5,0-0.9,0.4-0.9,0.9c0,0,0,0,0,0v10.4 c0,0.5,0.4,0.9,0.9,0.9c0,0,0,0,0,0h3.5c0.5,0,0.9-0.4,0.9-0.9c0,0,0,0,0,0v-4.8c0-0.5,0.4-0.9,0.9-0.9s0.9,0.4,0.9,0.9v4.8 c0,0.5,0.4,0.9,0.9,0.9c0,0,0,0,0,0h3.5c0.5,0,0.9-0.4,0.9-0.9c0,0,0,0,0,0v-6.5C21.3,10.9,19.2,8.8,16.5,8.8z M19.6,19.2h-1.7v-3.9 c0-1.4-1.2-2.6-2.6-2.6s-2.6,1.2-2.6,2.6v3.9h-1.7v-8.7h1.7v0.6c0,0.5,0.4,0.9,0.9,0.9c0.3,0,0.5-0.1,0.7-0.3c1-1.3,2.9-1.5,4.2-0.5 c0.7,0.6,1.2,1.5,1.2,2.4V19.2z M7.4,8.8H3.9c-0.5,0-0.9,0.4-0.9,0.9c0,0,0,0,0,0v10.4c0,0.5,0.4,0.9,0.9,0.9c0,0,0,0,0,0h3.5 c0.5,0,0.9-0.4,0.9-0.9c0,0,0,0,0,0V9.7C8.3,9.2,7.9,8.8,7.4,8.8C7.4,8.8,7.4,8.8,7.4,8.8z M6.5,19.2H4.8v-8.7h1.7V19.2z M5.7,2.3 C4.1,2.2,2.8,3.4,2.7,5c-0.1,1.5,1.1,2.9,2.6,3c0.1,0,0.2,0,0.3,0h0c1.5,0.1,2.9-1.1,3-2.6S7.5,2.4,6,2.3C5.9,2.3,5.8,2.3,5.7,2.3 L5.7,2.3z M5.7,6.2L5.7,6.2C5,6.3,4.5,5.8,4.4,5.3c0,0,0-0.1,0-0.1c0-0.6,0.5-1.1,1.2-1.1C6.3,4,6.8,4.4,6.9,5c0,0,0,0.1,0,0.1 C6.9,5.8,6.4,6.2,5.7,6.2z"/> 4162 </svg> 4163</a> 4164 </li></ul>
4165 </div> 4166 </div><div class="flex-wrap md:mb-5 md:border-b md:border-b-solid md:pt-12 md:pb-7"><div class="pt-6 md:pt-0 md:flex justify-center md:m-auto md:pr-0 rtl:md:pr-5 rtl:md:pl-0 x-pgw page-width flex-wrap"><div class="footer-col--1 md:pr-5 md:first:pl-0 md:mb-7 md:pl-0 w-full md:w-1/5 ltr" ><div x-data="{ open: false }" class="py-4 border-b md:border-none"><div @click="open = ! open" class="relative pr-5 cursor-pointer md:cursor-default duration-200 transition"> 4167 <p class="h6 text-[115%]">SHOP</p> 4168 <span class="md:hidden absolute w-2.5 h-2.5 top-1/2 -translate-y-1/2 flex right-3.5" :class="open ? 'rotate-180' : ''"><svg width="100%" height="100%" viewBox="0 0 9 7" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none;"> 4169 <path d="M0.75 1.625L4.5 5.375L8.25 1.625" stroke="currentcolor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 4170 </svg> 4171</span> 4172 </div><ul class="mt-6" :class="open ? 'block' : 'hidden md:block'"><li class="mb-1 first:pt-0 pt-2"> 4173 <a href="/collections/books" class="hover-text-link nav-link relative block lg:inline-block"> 4174 Subjects 4175 </a> 4176 </li><li class="mb-1 first:pt-0 pt-2"> 4177 <a href="/collections" class="hover-text-link nav-link relative block lg:inline-block"> 4178 Collections 4179 </a> 4180 </li><li class="mb-1 first:pt-0 pt-2"> 4181 <a href="/pages/request-an-exam-copy" class="hover-text-link nav-link relative block lg:inline-block"> 4182 Request an Exam Copy 4183 </a> 4184 </li><li class="mb-1 first:pt-0 pt-2"> 4185 <a href="https://share.hsforms.com/1Y5Y-XVDOQty9gUnWt54xVA1s9tp?hsCtaAttrib=184994081100" class="hover-text-link nav-link relative block lg:inline-block"> 4186 Newsletters 4187 </a> 4188 </li><li class="mb-1 first:pt-0 pt-2"> 4189 <a href="/pages/bk-community" class="hover-text-link nav-link relative block lg:inline-block"> 4190 Membership 4191 </a> 4192 </li></ul></div></div><div class="footer-col--2 md:pr-5 md:first:pl-0 md:mb-7 md:pl-10 w-full md:w-1/5 ltr" ><div x-data="{ open: false }" class="py-4 border-b md:border-none"><div @click="open = ! open" class="relative pr-5 cursor-pointer md:cursor-default duration-200 transition"> 4193 <p class="h6 text-[115%]">AUTHORS</p> 4194 <span class="md:hidden absolute w-2.5 h-2.5 top-1/2 -translate-y-1/2 flex right-3.5" :class="open ? 'rotate-180' : ''"><svg width="100%" height="100%" viewBox="0 0 9 7" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none;"> 4195 <path d="M0.75 1.625L4.5 5.375L8.25 1.625" stroke="currentcolor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 4196 </svg> 4197</span> 4198 </div><ul class="mt-6" :class="open ? 'block' : 'hidden md:block'"><li class="mb-1 first:pt-0 pt-2"> 4199 <a href="/pages/why-bk" class="hover-text-link nav-link relative block lg:inline-block"> 4200 Why BK? 4201 </a> 4202 </li><li class="mb-1 first:pt-0 pt-2"> 4203 <a href="/pages/montgomery-station-press" class="hover-text-link nav-link relative block lg:inline-block"> 4204 Montgomery Station Press 4205 </a> 4206 </li><li class="mb-1 first:pt-0 pt-2"> 4207 <a href="/pages/proposals" class="hover-text-link nav-link relative block lg:inline-block"> 4208 Proposals 4209 </a> 4210 </li><li class="mb-1 first:pt-0 pt-2"> 4211 <a href="/pages/author-services" class="hover-text-link nav-link relative block lg:inline-block"> 4212 Author Services 4213 </a> 4214 </li></ul></div></div><div class="footer-col--3 md:pr-5 md:first:pl-0 md:mb-7 md:pl-10 w-full md:w-1/5 ltr" ><div x-data="{ open: false }" class="py-4 border-b md:border-none"><div @click="open = ! open" class="relative pr-5 cursor-pointer md:cursor-default duration-200 transition"> 4215 <p class="h6 text-[115%]">SUPPORT</p>
4216 <span class="md:hidden absolute w-2.5 h-2.5 top-1/2 -translate-y-1/2 flex right-3.5" :class="open ? 'rotate-180' : ''"><svg width="100%" height="100%" viewBox="0 0 9 7" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none;"> 4217 <path d="M0.75 1.625L4.5 5.375L8.25 1.625" stroke="currentcolor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 4218 </svg> 4219</span> 4220 </div><ul class="mt-6" :class="open ? 'block' : 'hidden md:block'"><li class="mb-1 first:pt-0 pt-2"> 4221 <a href="/pages/faq" class="hover-text-link nav-link relative block lg:inline-block"> 4222 FAQ 4223 </a> 4224 </li><li class="mb-1 first:pt-0 pt-2"> 4225 <a href="/pages/bookshelf" class="hover-text-link nav-link relative block lg:inline-block"> 4226 Ebooks 4227 </a> 4228 </li><li class="mb-1 first:pt-0 pt-2"> 4229 <a href="/pages/contact" class="hover-text-link nav-link relative block lg:inline-block"> 4230 Contact us 4231 </a> 4232 </li><li class="mb-1 first:pt-0 pt-2"> 4233 <a href="/pages/returns" class="hover-text-link nav-link relative block lg:inline-block"> 4234 Returns 4235 </a> 4236 </li><li class="mb-1 first:pt-0 pt-2"> 4237 <a href="/pages/bulk-discounts" class="hover-text-link nav-link relative block lg:inline-block"> 4238 Bulk Discounts 4239 </a> 4240 </li></ul></div></div><div class="footer-col--4 md:pr-5 md:first:pl-0 md:mb-7 md:pl-10 w-full md:w-1/5 ltr" ><div x-data="{ open: false }" class="py-4 border-b md:border-none"><div @click="open = ! open" class="relative pr-5 cursor-pointer md:cursor-default duration-200 transition"> 4241 <p class="h6 text-[115%]">POLICIES</p> 4242 <span class="md:hidden absolute w-2.5 h-2.5 top-1/2 -translate-y-1/2 flex right-3.5" :class="open ? 'rotate-180' : ''"><svg width="100%" height="100%" viewBox="0 0 9 7" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none;"> 4243 <path d="M0.75 1.625L4.5 5.375L8.25 1.625" stroke="currentcolor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 4244 </svg> 4245</span> 4246 </div><ul class="mt-6" :class="open ? 'block' : 'hidden md:block'"><li class="mb-1 first:pt-0 pt-2"> 4247 <a href="/policies/refund-policy" class="hover-text-link nav-link relative block lg:inline-block"> 4248 Refund Policy 4249 </a> 4250 </li><li class="mb-1 first:pt-0 pt-2"> 4251 <a href="/policies/shipping-policy" class="hover-text-link nav-link relative block lg:inline-block"> 4252 Shipping Policy 4253 </a> 4254 </li><li class="mb-1 first:pt-0 pt-2"> 4255 <a href="/policies/privacy-policy" class="hover-text-link nav-link relative block lg:inline-block"> 4256 Privacy Policy 4257 </a> 4258 </li><li class="mb-1 first:pt-0 pt-2"> 4259 <a href="/pages/accessibility" class="hover-text-link nav-link relative block lg:inline-block"> 4260 Accessibility 4261 </a> 4262 </li></ul></div></div></div></div><div class="x-pgw page-width text-center lg:text-center pt-5 md:pt-3.5 md:pb-3 pb-2 change-position-popup"> 4263 4264 4265
4265<script defer="defer" async type="module" src="https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.shop-follow-button.en.esm.js"></script>
vendor: 1 bytes, line 4265
4265
4266<script type="module"> 4267 await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.shop-follow-button.en.esm.js"); 4268 4269 4270</script>
4270 4271 4272<shop-follow-button ux-mode="windoid" return-uri="https://bkconnection.com/account/redirect" proxy="true"></shop-follow-button> 4273 4274 4275 </div><div class="additional-footer ltr mx-5" 4276 > 4277 <div class="flex flex-col"><div class="flex flex-col items-center lg:mt-2 order-last"> 4278 <div class="mt-4 md:mt-4 base-link text-center lg:mt-0 p-break-words"><p class="inline-block">© 2026, </p> 4279 <a href="/" title="">Berrett-Koehler Publishers</a>.<div class="ml-1 inline-block"> 4280 <p>Powered by <a href="https://supadu.com" target="_blank">Supadu.</a></p> 4281 </div> 4282 </div> 4283 </div></div> 4284 </div> 4285</div> 4286</div> 4287<!-- END sections: footer-group-puff --> 4288 4289 4290 <div id="eurus-popup" class="fixed duration-500 inset-0 z-[100] md:z-60 pointer-events-none md:block flex flex-col-reverse h-fit top-[unset] md:h-full md:top-0" x-cloak></div><div id="popup-minimal-right" class="fixed z-50 bottom-4 md:bottom-8 right-4 md:right-8 pl-4 md:pl-8 pointer-events-auto flex flex-col items-end"></div> 4291 4292 4293 <div class="scroll-to-top"> 4294 <style data-shopify> 4295 .scroll_top { 4296 bottom: 40px; 4297 } 4298 @media(min-width: 768px) { 4299 .scroll_top { 4300 bottom: 40px; 4301 } 4302 } 4303 </style> 4304 <div 4305 x-data="xScrollTop" 4306 @init-run.window="scrollFunction()" 4307 @scroll.window="scrollFunction()" 4308 class="hidden md:block" 4309 > 4310 <button 4311 x-show="show" x-cloak 4312 @click="scrollTop()" 4313 class="scroll_top fixed z-50 pl-3 pr-3 pb-3 pt-3 w-11 h-11 md:w-14 md:h-14 md:pl-4 md:pt-4 md:pr-4 md:pb-4 border-0 rounded-full right-5 -rotate-90 button button-action" 4314 x-transition:enter="transition-all ease-in-out duration-500" 4315 x-transition:enter-start="opacity-0 transform translate-y-1/3" 4316 x-transition:enter-end="opacity-100 translate-y-0" 4317 x-transition:leave="transition-all ease-in-out duration-500" 4318 x-transition:leave-end="opacity-0 transform translate-y-1/3" 4319 aria-label="scroll top" 4320 > 4321 4322 <svg width="100%" height="100%" class=" w-full h-full" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" style="fill: none;"> 4323 <path d="M14.6998 17.7577L20 12.3788L14.6998 7M4 12.3789H18.9697" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 4324 </svg> 4325 4326 4327 </button> 4328 </div> 4329 4330
4330<script> 4331 requestAnimationFrame(() => { 4332 document.addEventListener('alpine:init', () => { 4333 Alpine.data('xScrollTop', () => ({ 4334 show: false, 4335 scrollTop() { 4336 window.scrollTo({top: 0, behavior: 'smooth'}); 4337 }, 4338 scrollFunction() { 4339 const position = window.innerWidth < 1025 ? 300 : 900; 4340 this.show = (document.body.scrollTop > position || document.documentElement.scrollTop > position) 4341 ? true : false; 4342 } 4343 })); 4344 }); 4345 }); 4346 </script>
4346 4347</div> 4348 4349 4350 4351 </div> 4352 <ul hidden> 4353 <li id="a11y-refresh-page-message">Choosing a selection results in a full page refresh. 4354 </li> 4355 <li id="a11y-new-window-message">Opens in a new window. 4356 </li> 4357 </ul> 4358
4358<script> 4359 window.Eurus = { 4360 sliderScript: '//bkconnection.com/cdn/shop/t/4/assets/splide4.1.3.js?v=75458750262329959491747335364', 4361 cart_error: `There was an error while updating your cart. Please try again.`, 4362 cart_quantity_error_html: `You can only add [quantity] of this item to your cart.`, 4363 loadedScript: [], 4364 cart_add_url: '/cart/add' 4365 }; 4366 </script>
4366 4367 4368 4369 4370
4370<script src="//bkconnection.com/cdn/shop/t/4/assets/product-recommendations.js?v=34614423222916566501747335364" defer></script>
4370 4371
4372<script src="//bkconnection.com/cdn/shop/t/4/assets/cart-countdown-timer.js?v=136257643267519206061747335364" defer></script>
4372<script src="//bkconnection.com/cdn/shop/t/4/assets/theme.js?v=54686740836025028391747335364" defer></script>
4372 4373
4373<script src="//bkconnection.com/cdn/shop/t/4/assets/vendors.js?v=21726020999429958561747335364" defer></script>
4373 4374
4374<script> 4375 window.addEventListener("load", (event) => { 4376 deferScriptLoad('instant.page', '//bkconnection.com/cdn/shop/t/4/assets/instant.page.v5.1.1.js?v=43232110432331176871747335364', () => {}, true); 4377 }); 4378 </script>
4378 4379<!-- Start of HubSpot Embed Code -->
4380<script type="text/javascript" id="hs-script-loader" async defer src="//js.hs-scripts.com/2998717.js"></script>
4380 4381<!-- End of HubSpot Embed Code --> 4382 <style> .vitalsource-ebook-link {color: rgb(var(--colors-secondary-button)); box-shadow: inset 0 0 0 1px rgba(var(--colors-line-secondary-button), 0.5); background: rgba(var(--background-secondary-button), 0.7); display: block; padding: 0.875rem; text-align: center;} .add_to_cart_button {justify-content: center;} </style> 4383<div id="shopify-block-AZFd6aGFnS21FS1hVa__13768625480086291342" class="shopify-block shopify-app-block">
4383<script> 4384 window['ShopifyForms'] = { 4385 ...window['ShopifyForms'], 4386 currentPageType: "cart" 4387 }; 4388</script>
4388 4389 4390 4391</div><div id="shopify-block-AbHdwMnZWWDI2eGg1d__12331707899451543273" class="shopify-block shopify-app-block"><div style="display: none;" hidden> 4392 Powerx - Function creator (Fixed) 4393</div> 4394
4395<script> 4396// Global state management to prevent race conditions 4397let isUpdating = false; 4398let updateQueue = []; 4399 4400// Debounced update function to prevent multiple simultaneous requests 4401async function safeUpdateCartAttributes() { 4402 if (isUpdating) { 4403 // If already updating, queue this request 4404 return new Promise((resolve) => { 4405 updateQueue.push(resolve); 4406 }); 4407 } 4408 4409 isUpdating = true; 4410 4411 try { 4412 await updateAllCartAttributes(); 4413 4414 // Resolve any queued promises 4415 const queuedPromises = [...updateQueue]; 4416 updateQueue = []; 4417 queuedPromises.forEach(resolve => resolve()); 4418 4419 } catch (error) { 4420 console.error('Error in safeUpdateCartAttributes:', error); 4421 } finally { 4422 isUpdating = false; 4423 } 4424} 4425 4426// Check if cart is ready and accessible 4427async function isCartReady() { 4428 try { 4429 const response = await fetch('/cart.js'); 4430 return response.ok; 4431 } catch (error) { 4432 console.error('Cart not ready:', error); 4433 return false; 4434 } 4435} 4436 4437// Combined function to update all cart attributes in a single request 4438async function updateAllCartAttributes() { 4439 try { 4440 // Wait for cart to be ready 4441 if (!(await isCartReady())) { 4442 console.warn('Cart not ready, skipping update'); 4443 return; 4444 } 4445 4446 // Fetch the latest cart data 4447 const cartResponse = await fetch('/cart.js'); 4448 if (!cartResponse.ok) { 4449 console.error('Failed to fetch cart data:', cartResponse.status); 4450 return; 4451 } 4452 const cart = await cartResponse.json(); 4453 4454 // Prepare all attributes in one object 4455 const allAttributes = {}; 4456 const existingAttributes = cart.attributes || {}; 4457 4458 // 1. Update discount tracking 4459 let newPowerxDiscount = ''; 4460 if (cart.total_discount > 0) { 4461 const discountTitles = new Set(); 4462 // Collect cart-level discount titles 4463 if (cart.cart_level_discount_applications) { 4464 cart.cart_level_discount_applications.forEach(app => { 4465 if (app.title) discountTitles.add(app.title); 4466 }); 4467 } 4468 // Collect line-level discount titles 4469 if (cart.items) { 4470 cart.items.forEach(item => { 4471 if (item.line_level_discount_allocations) { 4472 item.line_level_discount_allocations.forEach(alloc => { 4473 if (alloc.discount_application && alloc.discount_application.title) { 4474 discountTitles.add(alloc.discount_application.title); 4475 } 4476 }); 4477 } 4478 }); 4479 } 4480 newPowerxDiscount = Array.from(discountTitles).map(t => t.toLowerCase()).join(','); 4481 } 4482 4483 const currentPowerxDiscount = (cart.attributes && cart.attributes._powerx_discount) || ''; 4484 if (currentPowerxDiscount !== newPowerxDiscount) { 4485 allAttributes._powerx_discount = newPowerxDiscount; 4486 } 4487 4488 // 2. Handle URL parameters and removals 4489 await addUrlParameterAttributes(allAttributes, existingAttributes); 4490 4491 // 3. Handle expired attributes 4492 await addExpiredAttributeRemovals(allAttributes, existingAttributes); 4493 4494 // Nothing changed: never POST. A no-op cart update makes themes that 4495 // listen for /cart/update re-render or reload on every page view. 4496 if (Object.keys(allAttributes).length === 0) { 4497 return true; 4498 } 4499 4500 // 4. Add timestamp alongside the real changes 4501 allAttributes._powerx_datetime = Math.floor(Date.now() / 1000); 4502 4503 // Single update request for all attributes 4504 const response = await fetch('/cart/update.js', { 4505 method: 'POST', 4506 headers: { 'Content-Type': 'application/json' }, 4507 body: JSON.stringify({ attributes: allAttributes }) 4508 }); 4509 4510 if (!response.ok) { 4511 console.error('Failed to update cart attributes:', response.status); 4512 return false;
4513 } 4514 4515 // Update localStorage only after successful cart update 4516 await updateLocalStorage(allAttributes); 4517 return true; 4518 } catch (error) { 4519 console.error('Error updating cart attributes:', error); 4520 return false; 4521 } 4522} 4523 4524// Handle URL parameter attributes 4525async function addUrlParameterAttributes(allAttributes, existingAttributes = {}) { 4526 try { 4527 // Get settings from schema 4528 const trackedParametersRaw = "powerx_attr"; 4529 const trackedParameters = trackedParametersRaw 4530 ? trackedParametersRaw.split(',').map(param => param.trim()).filter(param => param) 4531 : ['powerx_attr']; 4532 const removeParameterRaw = "powerx_rm_attr"; 4533 const removeParameter = removeParameterRaw ? removeParameterRaw.trim() : 'powerx_rm_attr'; 4534 4535 // Parse URL parameters 4536 const urlParams = new URLSearchParams(window.location.search); 4537 4538 // Collect attributes to set from URL 4539 for (const [key, value] of urlParams) { 4540 if (trackedParameters.includes(key) && existingAttributes[key] !== value) { 4541 allAttributes[key] = value; 4542 } 4543 } 4544 4545 // Collect attributes to remove manually via remove_parameter 4546 if (removeParameter) { 4547 const removeValues = urlParams.getAll(removeParameter); 4548 for (const value of removeValues) { 4549 const attrs = value.split(',').map(attr => attr.trim()).filter(attr => attr); 4550 for (const attr of attrs) { 4551 // Only remove what is actually set, otherwise every page load 4552 // would send an identical no-op cart update 4553 if (existingAttributes[attr]) { 4554 allAttributes[attr] = ''; // Empty string removes the attribute 4555 } 4556 } 4557 } 4558 } 4559 } catch (error) { 4560 console.error('Error processing URL parameters:', error); 4561 } 4562} 4563 4564// Handle expired attributes 4565async function addExpiredAttributeRemovals(allAttributes, existingAttributes = {}) { 4566 try { 4567 const expireAfterHoursRaw = 5; 4568 const expireAfterHours = expireAfterHoursRaw ? parseInt(expireAfterHoursRaw, 10) : 0; 4569 4570 if (expireAfterHours > 0) { 4571 const now = Date.now(); 4572 const attributesToRemoveExpired = []; 4573 4574 for (let i = 0; i < localStorage.length; i++) { 4575 const key = localStorage.key(i); 4576 if (key && key.startsWith('powerx_attr_')) { 4577 try { 4578 const data = JSON.parse(localStorage.getItem(key)); 4579 const attrName = key.replace('powerx_attr_', ''); 4580 const expirationTime = data.timestamp + (expireAfterHours * 60 * 60 * 1000); 4581 if (now > expirationTime) { 4582 attributesToRemoveExpired.push(attrName); 4583 } 4584 } catch (parseError) { 4585 console.warn('Invalid localStorage data for key:', key); 4586 // Remove invalid localStorage entry 4587 localStorage.removeItem(key); 4588 } 4589 } 4590 } 4591 4592 // Add expired attributes to removal list 4593 for (const attr of attributesToRemoveExpired) { 4594 if (existingAttributes[attr]) { 4595 allAttributes[attr] = ''; // Empty string removes the attribute 4596 } else { 4597 // Already gone from the cart, just drop the stale local record 4598 localStorage.removeItem(`powerx_attr_${attr}`); 4599 } 4600 } 4601 } 4602 } catch (error) { 4603 console.error('Error processing expired attributes:', error); 4604 } 4605} 4606 4607// Update localStorage after successful cart update 4608async function updateLocalStorage(updatedAttributes) { 4609 try { 4610 const trackedParametersRaw = "powerx_attr"; 4611 const trackedParameters = trackedParametersRaw 4612 ? trackedParametersRaw.split(',').map(param => param.trim()).filter(param => param) 4613 : ['powerx_attr']; 4614 4615 const now = Date.now(); 4616 4617 for (const [key, value] of Object.entries(updatedAttributes)) { 4618 if (trackedParameters.includes(key) && value && value !== '') { 4619 // Store tracked parameters with timestamp 4620 localStorage.setItem(`powerx_attr_${key}`, JSON.stringify({ 4621 value, 4622 timestamp: now 4623 })); 4624 } else if (value === '') { 4625 // Remove attributes that were set to empty string 4626 localStorage.removeItem(`powerx_attr_${key}`); 4627 } 4628 } 4629 } catch (error) { 4630 console.error('Error updating localStorage:', error); 4631 } 4632} 4633 4634// Initialize with proper timing and error handling 4635async function initializePowerxEmbed() { 4636 try { 4637 // Wait longer for cart operations to complete 4638 await new Promise(resolve => setTimeout(resolve, 2000)); 4639 4640 // Check if we have any work to do 4641 const trackedParametersRaw = "powerx_attr"; 4642 const trackedParameters = trackedParametersRaw 4643 ? trackedParametersRaw.split(',').map(param => param.trim()).filter(param => param) 4644 : ['powerx_attr']; 4645 const removeParameterRaw = "powerx_rm_attr"; 4646 const removeParameter = removeParameterRaw ? removeParameterRaw.trim() : 'powerx_rm_attr'; 4647 4648 // Exit if no parameters to track and no removal parameter 4649 if (trackedParameters.length === 0 && !removeParameter) { 4650 return; 4651 } 4652 4653 // Perform the update 4654 await safeUpdateCartAttributes(); 4655 4656 } catch (error) { 4657 console.error('Error initializing PowerX embed:', error); 4658 } 4659} 4660 4661// Event listeners with debouncing 4662let cartUpdateTimeout; 4663function handleCartUpdate() { 4664 // Clear existing timeout to debounce rapid cart updates 4665 if (cartUpdateTimeout) {
4666 clearTimeout(cartUpdateTimeout); 4667 } 4668 4669 // Set a new timeout to handle the update after a brief delay 4670 cartUpdateTimeout = setTimeout(() => { 4671 safeUpdateCartAttributes(); 4672 }, 500); // 500ms delay to allow cart operations to settle 4673} 4674 4675// // Listen for cart updates with proper debouncing 4676// document.addEventListener('cart:updated', handleCartUpdate); 4677 4678// // Also listen for other common cart events 4679// document.addEventListener('cart:added', handleCartUpdate); 4680// document.addEventListener('cart:changed', handleCartUpdate); 4681 4682// Initialize the embed 4683initializePowerxEmbed(); 4684 4685</script>
4685 4686 4687</div><div id="shopify-block-AR3JYQXBkSHBtRUJsW__1923486770171284578" class="shopify-block shopify-app-block"> 4688 4689 4690 4691
4692<script> 4693 (function simpleePreventDuplicates() { 4694 if (window.simpleePreventDuplicatesActive) return; 4695 window.simpleePreventDuplicatesActive = true; 4696 function fixMembershipQuantities() { 4697 fetch('/cart.js') 4698 .then(r => r.json()) 4699 .then(cart => { 4700 if (!cart || !cart.items) return; 4701 let updates = {}; 4702 let needsUpdate = false; 4703 cart.items.forEach(item => { 4704 if (item.selling_plan_allocation && item.quantity > 1) { 4705 updates[item.key] = 1; 4706 needsUpdate = true; 4707 } 4708 }); 4709 if (needsUpdate) { 4710 fetch('/cart/update.js', { 4711 method: 'POST', 4712 headers: { 'Content-Type': 'application/json' }, 4713 body: JSON.stringify({ updates: updates }) 4714 }).then(() => { 4715 window.location.reload(); 4716 }).catch(err => console.error('Simplee Cart Update Error:', err)); 4717 } 4718 }) 4719 .catch(err => console.error('Simplee Cart Fetch Error:', err)); 4720 } 4721 fixMembershipQuantities(); 4722 const _origFetch = window.fetch; 4723 window.fetch = async function(...args) { 4724 const url = typeof args[0] === 'string' ? args[0] : (args[0] && args[0].url) || ''; 4725 const resp = await _origFetch.apply(this, args); 4726 if (resp.status === 422 && url.includes('/cart/')) { 4727 fixMembershipQuantities(); 4728 } 4729 return resp; 4730 }; 4731 const _origXHR = window.XMLHttpRequest; 4732 window.XMLHttpRequest = function() { 4733 const xhr = new _origXHR(); 4734 xhr.addEventListener('load', function() { 4735 if (xhr.status === 422 && xhr.responseURL && xhr.responseURL.includes('/cart/')) { 4736 fixMembershipQuantities(); 4737 } 4738 }); 4739 return xhr; 4740 }; 4741 4742 document.addEventListener('submit', function(e) { 4743 if (e.defaultPrevented) return; 4744 var form = e.target; 4745 if (form && form.action && form.action.includes('/cart/add')) { 4746 var hasSellingPlan = form.querySelector('[name="selling_plan"]'); 4747 if (hasSellingPlan && hasSellingPlan.value) { 4748 e.preventDefault(); 4749 fetch('/cart/add.js', { 4750 method: 'POST', 4751 body: new FormData(form) 4752 }) 4753 .then(res => res.json()) 4754 .then(data => { 4755 if (data.status === 422) { 4756 alert(data.description || 'A duplicate membership was removed from your cart. Only one membership is allowed.'); 4757 } 4758 window.location.href = '/cart'; 4759 }) 4760 .catch(() => { 4761 window.location.href = '/cart'; 4762 }); 4763 } 4764 } 4765 }); 4766 })(); 4767</script>
4767 4768 4769 4770 4771 <div class="simplee-div"> 4772 <!-- BEGIN app snippet: simplee --> 4773<!-- END app snippet --> 4774 </div> 4775 4776 4777 4778 4779 4780 4781 4782 4783 4784</div>
4784<script src="https://cdn.shopify.com/storefront/standard-actions.js" type="module" data-source-attribution="shopify.standard_actions"></script>
4784 4785</body> 4786</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.