:root {
  --card-bg: rgba(255, 255, 255, 0.7);
  --bluegray: #b2bfcd;
  --lightbluegray: #f6f9fc;
  --toolbar-bg: white;
  --success-border: var(--success);
  --info-border: var(--info);
  --warning-border: var(--warning);
  --danger-border: var(--danger);
  --border: #ced4da;
  --white: white;
  --white-offset: #fefefe;
  --focus: #39f;
  --focus-shadow: 0 0 0 0.2rem #eaeaea;
  --toggle-color: white;
  --template-sidebar-bg: var(--template-bg-dark-80);
  --template-sidebar-font-color: white;
  --template-sidebar-link-color: white;
  --template-bg-light: hsl(198.58823529, 40%, 95%);
  --template-text-light: white;
  --template-special-color: #132f53;
  --template-link-color: #2a69b8;
  --template-link-hover-color: #173a65;
  --template-contrast: #2a69b8;
  --template-bg-dark: hsl(198.58823529, 40%, 20%);
  --template-bg-dark-3: hsl(198.58823529, 40%, 97%);
  --template-bg-dark-5: hsl(198.58823529, 40%, 95%);
  --template-bg-dark-7: hsl(198.58823529, 40%, 93%);
  --template-bg-dark-10: hsl(198.58823529, 40%, 90%);
  --template-bg-dark-15: hsl(198.58823529, 40%, 85%);
  --template-bg-dark-20: hsl(198.58823529, 40%, 80%);
  --template-bg-dark-30: hsl(198.58823529, 40%, 70%);
  --template-bg-dark-40: hsl(198.58823529, 40%, 60%);
  --template-bg-dark-50: hsl(198.58823529, 40%, 50%);
  --template-bg-dark-60: hsl(198.58823529, 40%, 40%);
  --template-bg-dark-65: hsl(198.58823529, 40%, 35%);
  --template-bg-dark-70: hsl(198.58823529, 40%, 30%);
  --template-bg-dark-75: hsl(198.58823529, 40%, 25%);
  --template-bg-dark-80: hsl(198.58823529, 40%, 20%);
  --template-bg-dark-90: hsl(198.58823529, 40%, 10%);
  --primary: #00b0ff;
  --secondary: #333333;
  --success: #4CAF50;
  --info: #30638d;
  --warning: #FFC107;
  --danger: #DD2C00;
  --light: #f9fafb;
  --dark: #353b41;
  --font-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
}
.autoComplete_wrapper {
  /* display: inline-block;
    position: relative; */
}
.autoComplete_wrapper > input {
  /* height: 3rem;
    width: 370px;
    margin: 0;
    padding: 0 2rem 0 3.2rem;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    font-size: 1rem;
    text-overflow: ellipsis;
    color: rgba(255, 122, 122, 0.3);
    outline: none;
    border-radius: 10rem;
    border: 0.05rem solid rgba(255, 122, 122, 0.5);
    background-image: url(./images/search.svg);
    background-size: 1.4rem;
    background-position: left 1.05rem top 0.8rem;
    background-repeat: no-repeat;
    background-origin: border-box;
    background-color: #fff;
    transition: all 0.4s ease;
    -webkit-transition: all -webkit-transform 0.4s ease; */
}
.autoComplete_wrapper > input::placeholder {
  /* color: rgba(255, 122, 122, 0.5);
    transition: all 0.3s ease;
    -webkit-transition: all -webkit-transform 0.3s ease; */
}
.autoComplete_wrapper > input:hover::placeholder {
  /* color: rgba(255, 122, 122, 0.6);
    transition: all 0.3s ease;
    -webkit-transition: all -webkit-transform 0.3s ease; */
}
.autoComplete_wrapper > input:focus::placeholder {
  /* padding: 0.1rem 0.6rem;
    font-size: 0.95rem;
    color: rgba(255, 122, 122, 0.4); */
}
.autoComplete_wrapper > input:focus::selection {
  /* background-color: rgba(255, 122, 122, 0.15); */
}
.autoComplete_wrapper > input::selection {
  /* background-color: rgba(255, 122, 122, 0.15); */
}
.autoComplete_wrapper > input:hover {
  /* color: rgba(255, 122, 122, 0.8);
    transition: all 0.3s ease;
    -webkit-transition: all -webkit-transform 0.3s ease; */
}
.autoComplete_wrapper > input:focus {
  /* color: rgba(255, 122, 122, 1);
    border: 0.06rem solid rgba(255, 122, 122, 0.8); */
}
.autoComplete_wrapper > ul {
  position: absolute;
  max-height: 326px;
  overflow-y: auto;
  box-sizing: border-box;
  left: 0;
  right: 0;
  /* margin: 0.5rem 0 0 0; */
  margin: 0.2rem 0 0 0;
  padding: 0;
  /* z-index: 1; */
  z-index: 20;
  list-style: none;
  border-radius: 0.4rem;
  background-color: #fff;
  /* border: 1px solid rgba(33, 33, 33, 0.07); */
  border: none;
  box-shadow: 0 3px 6px rgba(149, 157, 165, 0.15);
  outline: none;
  min-width: 250px;
  /* transition: opacity 0.15s ease-in-out;
    -moz-transition: opacity 0.15s ease-in-out;
    -webkit-transition: opacity 0.15s ease-in-out; */
}
.autoComplete_wrapper > ul[hidden],
.autoComplete_wrapper > ul:empty {
  display: block;
  opacity: 0;
  transform: scale(0);
}
.autoComplete_wrapper > ul > li {
  margin: 0.3rem;
  padding: 0.3rem 0.5rem;
  border-bottom: 0.05rem solid #e3e3e3;
  text-align: left;
  /* font-size: 1rem; */
  /* color: #212121; */
  /* border-radius: 0.35rem; */
  border-radius: 0.2rem;
  background-color: #ffffff;
  /* white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis; */
  /* transition: all 0.2s ease; */
}
.autoComplete_wrapper > ul > li:last-child {
  border: none;
}
.autoComplete_wrapper > ul > li mark {
  background-color: transparent;
  /* color: rgba(255, 122, 122, 1); */
  /* font-weight: bold; */
  font-weight: 700;
  color: #00b0ff;
  padding: 0;
}
.autoComplete_wrapper > ul > li:hover {
  cursor: pointer;
  /* background-color:  desaturate(lighten(@global-primary-background, 50%), 50%); */
  background-color: #f2f2f2;
}
.autoComplete_wrapper > ul > li[aria-selected="true"] {
  background-color: rgba(255, 122, 122, 0.15);
}
@media only screen and (max-width: 600px) {
  .autoComplete_wrapper > input {
    /* width: 18rem; */
  }
}
div.bookingstate_0 {
  background-color: orange;
  width: 30px;
  height: 30px;
}
div.bookingstate_1 {
  background-color: orange;
  width: 24px;
  height: 24px;
  border: solid 3px green;
}
div.bookingstate_2 {
  background-color: green;
  width: 30px;
  height: 30px;
}
div.bookingstate_3 {
  background-color: red;
  width: 30px;
  height: 30px;
}
div.bookingstate_4 {
  background-color: orange;
  width: 24px;
  height: 24px;
  border: solid 3px red;
}
div[class*=bookingstate] {
  border-radius: 4px;
}
/* ### .b01-picker ########################################################### */
.b01-picker {
  cursor: pointer;
}
.b01-picker:hover {
  border-color: #a6a6a6;
}
/* *********************      b01-calendar > objects vacancy list */
.b01-calendar {
  position: relative;
  font-size: 13px;
  display: grid;
}
.b01-calendar div {
  box-sizing: border-box;
}
.b01-calendar > div.rowhead {
  top: 73px;
  width: 180px;
  border-top: 1px solid #cacaca;
  border-bottom: 0px solid;
  background-color: #fff;
  position: absolute;
  z-index: 1001;
}
.b01-calendar > div.rowhead > div {
  padding: 2px 4px;
  height: 28px;
  border-bottom: 1px solid #cacaca;
  display: flex;
  align-items: center;
}
.b01-calendar > div.rowhead > div > a {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 13px;
  transition: all 0.3s ease;
}
.b01-calendar > div.rowhead > div > a:hover {
  overflow: visible;
  background-color: #fff;
  padding: 0 4px;
  text-decoration: none;
  border-radius: 3px;
}
.b01-calendar > div.data {
  overflow-x: auto;
  margin-left: 180px;
}
.b01-calendar > div.data > div.colhead {
  display: flex;
  flex-wrap: wrap;
  /*  flex-flow: column;*/
}
.b01-calendar > div.data > div.colhead > div.months,
.b01-calendar > div.data > div.colhead > div.weeks {
  display: flex;
  flex-wrap: nowrap;
  background-color: #f2f2f2;
}
.b01-calendar > div.data > div.colhead > div.months {
  border-bottom: 1px solid #cacaca;
  background-color: transparent;
}
.b01-calendar > div.data > div.colhead > div.months > div {
  display: flex;
  align-items: center;
  height: 28px;
  /*background-color: #fff;		*/
  flex: 0 0 auto;
  justify-content: center;
}
.b01-calendar > div.data > div.colhead > div.months > div:not(:first-child) {
  border-left: 1px solid #cacaca;
}
.b01-calendar > div.data > div.colhead > div.weeks > div {
  display: flex;
  align-items: center;
  align-items: flex-start;
  height: 44px;
  width: 22px;
  overflow: hidden;
  border-right: 1px solid #cacaca;
  border-bottom: 0px solid;
  background-color: #fff;
  flex: 0 0 auto;
  line-height: 14px;
  font-size: 13px;
}
.b01-calendar > div.data > div.colhead > div.weeks > div > div {
  display: table-row;
  width: 100%;
  height: 100%;
  text-align: center;
}
.b01-calendar > div.data > div.colhead > div > div {
  /*padding-left: 4px;*/
  font-size: 13px;
}
.b01-calendar > div.data > div.cols > div {
  display: flex;
  flex-wrap: nowrap;
  background-color: #f2f2f2;
}
.b01-calendar > div.data > div.cols > div > div {
  height: 28px;
  flex: 0 0 auto;
  background-color: #f2f2f2;
  transition: all 0.3s ease;
  cursor: pointer;
  border-right: 1px solid rgba(0, 0, 0, 0.12);
  border-top: 1px solid #cacaca;
  border-bottom: 0px solid;
  width: 22px;
}
.b01-calendar > div.data > div.cols > div > div.sa {
  background-color: #fffdeb;
}
.b01-calendar > div.data > div.cols > div > div.so {
  background-color: #fffbd0;
}
.b01-calendar > div.data > div.cols > div > div.today {
  background-color: #c6f1c9;
}
.b01-calendar > div.data > div.cols > div div.b {
  background-color: #138216;
}
.b01-calendar > div.data > div.cols > div > div.free {
  background-color: #d7ffcf;
}
.b01-calendar > div.data > div.cols > div > div.occ {
  background-color: #c20a0a;
}
.b01-calendar > div.data > div.cols > div > div.arrival {
  border-bottom: solid 1px #6679ff;
}
.b01-calendar > div.data > div.cols > div > div.closed {
  background: #6b6b6b;
}
.b01-calendar > div.data > div.cols > div > div.undefined {
  background: #f2f2f2;
}
.b01-calendar > div.data > div.cols > div > div.onrequest {
  background-color: #FFFF00;
}
.b01-calendar > div.data > div.cols > div > div:not(.bs):hover {
  background-color: #ccc;
}
.b01-calendar > div.data > div.cols > div > div:hover > div {
  background-color: #d2ffd5;
}
.b01-calendar > div.data > div.cols > div a {
  text-decoration: none;
}
.b01-calendar div.bs {
  position: relative;
}
.b01-calendar div.bs > div {
  position: absolute;
  color: #484848;
  background-color: #f0f0f0;
  border-radius: 3px;
  top: 2px;
  bottom: 2px;
  z-index: 1000;
  left: 8px;
  display: flex;
  align-items: center;
}
.b01-calendar div.bs > div > a {
  display: inline-block;
  padding: 1px 6px;
  white-space: nowrap;
}
.b01-calendar-legend {
  display: inline-flex;
  flex-wrap: nowrap;
  background-color: #f2f2f2;
  border: 1px solid rgba(0, 0, 0, 0.12);
  flex-flow: column;
}
.b01-calendar-legend > div {
  height: 28px;
  flex: 0 0 auto;
  background-color: #f2f2f2;
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
  width: 22px;
  font-size: 13px;
}
.b01-calendar-legend > div > span {
  padding-left: 30px;
  white-space: nowrap;
}
.b01-calendar-legend > div.closed {
  background: #6b6b6b;
}
.b01-calendar-legend > div.onrequest {
  background-color: #FFFF00;
}
.b01-calendar-legend > div.occ {
  background-color: #c20a0a;
}
.b01-calendar-legend > div.sa {
  background-color: #fffdeb;
}
.b01-calendar-legend > div.so {
  background-color: #fffbd0;
}
.b01-calendar-legend > div.today {
  background-color: #c6f1c9;
}
.b01-calendar-legend > div.arrival {
  border-bottom: solid 1px #6679ff;
}
.d-none {
  display: none !important;
}
.b01-input-upload {
  border: 2px dashed #d9d9d9 !important;
}
/* ### Group Radio ########################################################### */
.btn-group label {
  border-radius: 0;
}
.btn-group .btn:not(:first-child),
.btn-group label:not(:first-child) {
  margin-left: -1px;
}
.btn-group > .btn:nth-child(n+3),
.btn-group > :not(.btn-check) + .btn,
.btn-group > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group > .btn-group:not(:last-child) > .btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
/* ### UIkit Components ########################################################### */
.calendar-container a {
  color: #666 !important;
}
/* ### B01 Mosaik Menu ########################################################### */
.b01-mosaicmenu .b01-overlay,
.b01-mosaicmenu .b01-card-body {
  padding-top: 24px;
  padding-bottom: 24px;
}
.form-check.form-switch {
  display: block;
  min-height: 1.5rem;
  padding-left: 1.5em;
  margin-bottom: 0.125rem;
  padding-left: 2.5em;
}
.form-check.form-switch .form-check-input {
  float: left;
  margin-left: -1.5em;
}
.form-check.form-switch .form-check-input {
  width: 1em;
  height: 1em;
  margin-top: 0.25em;
  vertical-align: top;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  border: 1px solid rgba(0, 0, 0, 0.25);
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-print-color-adjust: exact;
  color-adjust: exact;
}
.form-check.form-switch .form-check-input[type=radio] {
  border-radius: 50%;
}
.form-check.form-switch .form-check-input:active {
  -webkit-filter: brightness(90%);
  filter: brightness(90%);
}
.form-check.form-switch .form-check-input:focus {
  border-color: #95b4db;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(42, 105, 183, 0.25);
}
.form-check.form-switch .form-check-input:checked {
  background-color: #00b0ff;
  border-color: #00b0ff;
}
.form-check.form-switch .form-check-input[type=checkbox]:indeterminate {
  background-color: #00b0ff;
  border-color: #00b0ff;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e");
}
.form-check.form-switch .form-check-input:disabled {
  pointer-events: none;
  -webkit-filter: none;
  filter: none;
  opacity: 0.5;
}
.form-check.form-switch .form-check-input[disabled] ~ .form-check-label,
.form-check.form-switch .form-check-input:disabled ~ .form-check-label {
  opacity: 0.5;
}
.form-check.form-switch .form-check-input {
  width: 2em;
  margin-left: -2.5em;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e");
  background-position: left center;
  border-radius: 2em;
  transition-property: background-position;
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.18, 1, 0.46, 1.16);
}
@media (prefers-reduced-motion: reduce) {
  .form-check.form-switch .form-check-input {
    transition: none;
  }
}
.form-check.form-switch .form-check-input:checked {
  background-position: right center;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
}
.form-check.form-switch .form-check-label {
  display: inline-block;
}
/* ######## Pricerange #######	 */
#rangeflow {
  transition: transform 0.6s ease-in-out;
}
#rangecontainer {
  scroll-behavior: smooth;
}
#rangecontainer canvas {
  background-color: #f3f3f3;
  display: block;
  width: auto;
  max-width: none;
}
#rangecontainer h2 {
  position: absolute;
  font-size: 80px;
  font-weight: 600;
  color: #dedede;
  line-height: 80px;
  margin: 0;
}
/* ########################################## FEWO LIST #######	 */
.fli div[class*="inspected-badge-"] {
  display: block;
  width: 66px;
  height: 86px;
  position: relative;
}
.fli .inspected {
  position: absolute;
  z-index: 100;
  margin-top: -24px;
  margin-left: 8px;
}
.fli .inspected > div:first-child {
  right: 0;
  bottom: 0;
  top: 0px;
  position: absolute;
  left: 70px;
  white-space: nowrap;
}
.fli .inspected + .fli-item > .fli-title {
  padding-left: 80px !important;
}
.fli span.active[b01-icon='star'] svg polygon {
  fill: #fff;
}
.fli div.rating span.active[b01-icon*='star'] svg polygon {
  fill: #00b0ff;
  stroke: #00b0ff;
}
.fli .fli-title {
  padding: 8px 16px;
  color: #fff;
  background-color: #00b0ff;
}
.fli .fli-item.premium {
  background: #f7d36e;
}
.fli .fli-item.premium:hover {
  background: #f8da86;
}
.fli .b01-slidelink {
  top: 0;
  margin: 0;
  left: 0;
  right: 0;
  margin-left: 55px;
  margin-right: 55px;
  margin-left: 0px;
  margin-right: 0px;
}
.fli .b01-mapclick {
  z-index: 1;
  position: relative;
}
.fli .thumb {
  position: relative;
  overflow: hidden;
}
.fli .b01listgrid:not(.b01-grid-stack) .thumb {
  box-shadow: 1px 0px 1px rgba(0, 0, 0, 0.1);
}
.fli .b01-grid-stack .thumb {
  box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.1);
}
.fli div.list-crown {
  margin: 10px 12px 0;
  position: absolute;
  z-index: 10;
  top: 0;
  right: 0;
  color: #f7d36e;
  text-align: center;
  background: #48b748;
  padding: 2px 8px;
  border-radius: 5px;
}
.fli div.list-crown svg {
  height: 25px;
  width: 25px;
}
.fli > div:nth-child(1n+2) {
  margin-top: 20px;
}
.fli > div[class*="inspected"]:nth-child(1n+1) {
  margin-top: 35px;
}
.fli span.thumbicons {
  position: absolute;
  z-index: 100;
  bottom: 0;
  color: #fff;
  padding: 1px 4px;
  text-shadow: 1px 1px 0px rgba(0, 0, 0, 0.71), 1px 0px 1px #000000;
}
.fli span.externid {
  position: absolute;
  z-index: 100;
  bottom: 0;
  right: 0;
  color: #fff;
  padding: 1px 6px;
  text-shadow: 1px 1px 0px rgba(0, 0, 0, 0.71), 1px 0px 1px #000000;
}
.fli .th {
  display: block;
}
.ribbon {
  background-color: #00b0ff;
  overflow: hidden;
  white-space: nowrap;
  position: absolute;
  left: -40px;
  top: 16px;
  z-index: 9;
  width: 160px;
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.ribbon.full {
  transform: rotate(0deg);
  left: 0;
  right: 0;
  width: 100%;
  top: 0;
  bottom: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 1;
  background-color: rgba(64, 152, 191, 0.3);
}
.ribbon.full span {
  font-size: 2.6rem;
}
.ribbon.verkauft {
  background-color: rgba(0, 176, 255, 0.5);
}
.ribbon360 {
  background-color: #00b0ff;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  position: absolute;
  right: -52px;
  top: -20px;
  z-index: 9;
  width: 160px;
  height: 85px;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}
.ribbon360 span,
.ribbon span {
  color: #fff;
  display: block;
  font: bold 88% 'Helvetica Neue', Helvetica, Arial, sans-serif;
  padding: 15px 0px;
  text-align: center;
  text-decoration: none;
}
.ribbon360 span {
  width: 90px;
  transform: translateZ(0);
}
ul.obj-icons {
  display: block;
  list-style-type: none;
  margin: 0;
  padding: 0;
  z-index: 1;
  position: relative;
}
ul.obj-icons li {
  display: inline-block;
}
ul.obj-icons li > svg {
  fill: #00b0ff;
  width: 25px;
  height: 25px;
  transition: all 0.2s ease;
}
ul.obj-icons li:hover > svg {
  fill: #009ee6;
}
/* ########################################## Cluster #######	 */
a.b01-clusterslide {
  text-align: center;
  position: absolute;
  left: 0;
  top: 50%;
  border-radius: 0 5px 5px 0;
  line-height: 100px;
  z-index: 100;
  width: 30px;
  color: #fff;
  height: 100px;
  transition: all 0.1s;
  background: #00b0ff;
  background: linear-gradient(to left, #00b0ff 65%, #007bb3 100%);
  z-index: 500;
}
a:hover.b01-clusterslide {
  width: 34px;
  color: #fff;
  background: #00b0ff;
  background: linear-gradient(to left, #00b0ff 65%, #005880 100%);
}
.b01-clusterslide > span {
  transition: transform 0.3s;
  transform: rotate(180deg);
  pointer-events: none;
}
.b01-clusterslide.b01-active > span {
  transform: rotate(0deg);
}
div[data-init="Cluster"] {
  z-index: 0;
  overflow: hidden;
  position: relative;
}
.infoBox {
  font-size: 13px;
  line-height: 18px;
}
.infoBox > img {
  position: absolute !important;
  right: 8px;
  z-index: 40;
  transition: transform 0.3s;
  top: 8px;
  width: 30px;
  height: 30px;
  min-width: 30px;
}
.infoBox .b01-slideshow > li > div {
  display: flex;
}
.infoBox .b01-panel-teaser h2 {
  padding: 0 6px;
}
.infoBox .b01-panel-teaser h2,
.infoBox .b01-panel-teaser {
  color: #fff;
  text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.7), 0px 0px 3px rgba(0, 0, 0, 0.5);
  position: relative;
  font-size: 20px;
  line-height: 24px;
}
.infoBox > img:hover {
  transform: scale(1.1);
}
/* ########################################## Customer Area  #######	 */
.layout-customer .table-responsive {
  overflow: unset;
}
/* ########################################## Expose  #######	 */
.fewo-item {
  position: relative;
}
.fewo-item a[class*="inspected-badge-"] {
  display: block;
  width: 66px;
  height: 86px;
  position: relative;
}
.fewo-item .b01-sticky.b01-active > ul {
  border-bottom: 3px solid #00b0ff;
  box-shadow: 0 5px 3px -3px rgba(0, 0, 0, 0.1);
  padding: 10px 0;
  margin: 0;
  background: #fff;
}
.fewo-item span.active[b01-icon*='star'] svg polygon {
  fill: #00b0ff;
}
.fewo-item span.dtv {
  font-size: 0;
  display: inline-flex;
  margin-left: 10px;
}
.fewo-item.premium {
  border-top: 5px solid #f7d36e;
  border-radius: 8px 8px 0 0;
  margin-top: 50px;
}
.fewo-item.premium .item-crown {
  text-align: center;
  color: #f7d36e;
  position: absolute;
  top: calc(15px - 38px);
  background: #48b748;
  padding: 0 26px;
  border-radius: 6px;
  transform: translateX(-50%);
  left: 50%;
  background: linear-gradient(to bottom, #48b748 0%, #3a923a 100%);
}
.fewo-item.premium .item-crown > span {
  line-height: 38px;
  text-transform: uppercase;
}
.fewo-item.premium .item-crown > svg {
  height: 40px;
  width: 40px;
  position: absolute;
  transform: translateX(-50%);
  left: 50%;
  top: -25px;
}
.fewo-item.premium .item-crown + div {
  margin-top: 50px !important;
}
.fewo-item .inspected {
  position: absolute;
  top: -37px;
  right: 40px;
}
.fewo-item .inspected svg {
  filter: brightness(0.85);
}
.fewo-item .inspected .badge {
  display: block;
  width: 68px;
  height: 95px;
  position: relative;
  padding: 0;
}
.fewo-item .inspected .badge {
  background-repeat: no-repeat;
  background: transparent;
  position: relative;
}
.fewo-item .inspected .badge > span {
  color: #fff;
  display: flex;
  justify-content: center;
  font-size: 24px;
  text-align: center;
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
}
.fewo-item .inspected a.badge-big {
  width: 92px;
  height: 116px;
  background-size: contain;
  transition: all 0.2s ease;
}
.fewo-item .inspected a.badge-big > span {
  position: absolute;
  top: 30px;
  font-size: 30px;
}
.fewo-item .inspected a:hover.badge-big {
  transform: scale(1.05);
}
.fewo-item div.sustainability > *:first-child {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' xml:space='preserve'%3E%3Cpath fill='%23333333' d='M509.6 205.6c-1-41-11.4-79.8-31-115.6-18.5-34-45-64-76.8-86.4-7-5-16.4-4.8-23.2.5-28.4 22.4-52 51-68.7 83a257.9 257.9 0 0 0-102.6-33.2c-8.5-.8-16.5 4-19.8 12a257.9 257.9 0 0 0-19 106c-36-.4-72.4 7-105.5 21.6a19.3 19.3 0 0 0-11.4 20.2 257.9 257.9 0 0 0 35.7 101.6 257.9 257.9 0 0 0-81.2 70.9 19.3 19.3 0 0 0 0 23C29.4 440.6 60 466.4 94.5 484c36.3 18.6 75.4 28 116.4 28s80.1-9.4 116.3-28a257.7 257.7 0 0 0 86.9-72.7c29.7-23.8 54-54.4 70.5-88.6 17.6-36.7 26-76.1 25-117zM218.1 94.4a216 216 0 0 1 76.5 28.3c-9.7 28.4-14.2 58.1-13.5 88.7a252.6 252.6 0 0 0 52.5 148.7 215.1 215.1 0 0 1-95.7-85.8c-33-55-40-119.7-19.8-180zm-45.3 116a253.1 253.1 0 0 0 32 83.8 252.6 252.6 0 0 0 118.9 103.6c-43 3.8-86.5-5.4-125.5-27.5a214.8 214.8 0 0 1-106-146.9 216 216 0 0 1 80.6-13zm38 263a214.8 214.8 0 0 1-164.4-75.7 216 216 0 0 1 63.6-51c19.4 23 42.5 42.1 69.1 57.2a252.7 252.7 0 0 0 154.5 31.5c-35.5 24.6-78 38-122.7 38zm208.8-121v-108a19.3 19.3 0 0 0-38.6 0v111.7c-38-38.8-59.8-90.1-61.2-145.7C318 146.4 344 86.5 391.2 44c49.3 40 78.2 98.5 79.8 162.6 1.3 54.3-17 105.6-51.4 145.8z'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat;
  padding-left: 40px;
}
/* ########################################## Inspected  #######	 */
*[class*="inspected-badge-"] {
  background-repeat: no-repeat;
  position: relative;
}
*[class*="inspected-badge-"] > span {
  color: #fff;
  display: flex;
  justify-content: center;
  font-size: 24px;
  line-height: 18px;
  text-align: center;
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  top: 20px;
  z-index: 10;
}
.inspected-badge-1 svg > path {
  fill: #48b748 !important;
}
.inspected-badge-2 svg > path {
  fill: #406bb2 !important;
}
.inspected-badge-3 svg > path {
  fill: #d12e21 !important;
}
svg.item-dtvstar {
  height: 25px;
  width: 25px;
  vertical-align: text-top;
}
svg.list-dtvstar {
  height: 20px;
  width: 20px;
  vertical-align: text-top;
}
.b01-card-body.b01-requestprice {
  border-color: #9E9E9E;
}
.b01-card-body.b01-requestprice .b01-input,
.b01-card-body.b01-requestprice .b01-select,
.b01-card-body.b01-requestprice .b01-textarea {
  border-color: #9E9E9E;
}
.fewo-item .pinfobox > img {
  position: absolute !important;
  right: 2px;
  top: 2px;
  z-index: 1;
  transition: transform 0.3s;
}
.fewo-item .pinfobox > img:hover {
  transform: scale(1.1);
}
.expvideo > iframe,
.expvideo > object,
.expvideo > video {
  pointer-events: all !important;
}
/* ########################################## BOOKING Request #######	 */
#requestprice_xhr {
  transition: all 0.5s ease-out;
}
/* ########################################## BOOKING #######	 */
#b01-bookmodal .b01-modal-dialog {
  display: flex;
  flex-direction: column;
}
#b01-bookmodal .b01-modal-body {
  height: calc(100vh);
}
#b01-bookmodal .space {
  flex-grow: 1;
}
#b01-bookmodal .b01-modal-header {
  background: #00b0ff;
}
#b01-bookmodal .b01-modal-header > h2 {
  color: #fff;
}
#b01-bookmodal .b01-modal-close-full {
  background: #00b0ff;
  color: #fff;
}
@media (max-width: 639px) {
  #b01-bookmodal #bookform_xhr {
    padding-top: 55px;
  }
}
/* ### Frontend Booking ########################################################### */
.location .add-category {
  cursor: pointer;
  opacity: 0.5;
}
/* ### Backend Navbar ################################################### */
.admin .b01-navbar-brand {
  line-height: 40px;
  border: 1px solid transparent;
}
.admin .b01-navbar {
  border-left-color: transparent;
  border-right-color: transparent;
  border-radius: 0;
  margin: -19px -20px 0;
}
#system-message-container > div.alert {
  margin-bottom: 38px;
}
/* ########################################## FEWO Rating #######	 */
.rating-form a > svg {
  pointer-events: none;
}
.rating-form .stars ul {
  white-space: nowrap;
  list-style: none;
  padding: 0;
  margin: 0;
}
.rating-form .star {
  cursor: pointer;
  padding: 0 0;
  transition: transform 0.2s;
}
.rating-form .star.star-o polygon {
  stroke: #00b0ff !important;
  fill: #00b0ff;
}
.rating-form .star:hover {
  -webkit-transform: scale(1.3);
  -moz-transform: scale(1.3);
  -ms-transform: scale(1.3);
  -o-transform: scale(1.3);
  transform: scale(1.3);
}
.rating {
  display: inline-block;
  vertical-align: middle;
}
.rating-wrap {
  overflow-y: auto;
  max-height: 500px;
  padding-right: 30px;
  box-shadow: 0 -40px 30px -20px #fff inset;
}
.b01-touch .rating-wrap {
  height: 60vh;
}
.rating-wrap::-webkit-scrollbar {
  width: 12px;
  background-color: #fff;
  cursor: pointer;
}
/* Bereich für den Schieberegler */
.rating-wrap::-webkit-scrollbar-thumb {
  background-color: rgba(0, 176, 255, 0.6);
  transition: all 0.2s ease;
}
/* Schieberegler */
.rating-wrap::-webkit-scrollbar-thumb:hover {
  background-color: #00b0ff;
}
/* Größenregler (bei TEXTAREA sichtbar) */
#jform_feature1,
#jform_feature2,
#jform_feature3,
#jform_feature4,
#jform_feature5 {
  display: none;
}
/* ### Hierarchy ########################################################### */
.fewo-hierarchy ul ul {
  margin-bottom: 20px;
  margin-top: 10px;
}
.fewo-hierarchy ul ul ul {
  margin-top: 10px;
}
.fewo-hierarchy li.ort {
  display: inline;
}
.fewo-hierarchy li.ort:after {
  display: inline;
  content: ", ";
}
.fewo-hierarchy li:last-child.ort:after {
  display: none;
}
.fewo-hierarchy ul.b01-list li.uregion,
.fewo-hierarchy ul.b01-list li.region {
  margin-top: 10px;
}
.fewo-hierarchy ul.b01-list > li:first-child.uregion {
  margin-top: 0;
}
.hierarchy-objects li.ort:after,
.ort_alpha li.ort:after {
  display: none;
}
/* ### JFeWo Hero Module ########################################################### */
.tm-hero .bgr .fewosearch > div {
  background: #00000059;
  padding: 15px 20px 15px;
  border-radius: 8px;
}
/* ########################################## FEWO SEARCH #######	 */
.b01-searchsticky[b01-sticky].b01-active {
  z-index: 999;
  background-color: rgba(255, 255, 255, 0.96);
  padding: 12px 10px 10px 10px;
}
.fsguests .b01-input[readonly] {
  border: none !important;
  background-color: transparent !important;
}
.fewosearch #attribs.b01-modal {
  transition: none;
}
@media (max-width: 959px) {
  .fewosearch #attribs.b01-modal {
    padding: 0;
  }
}
.fewosearch #attribs > .b01-modal-dialog {
  transform: translateY(0);
  transition: none;
  transition-property: none;
}
.fewosearch #attribs div.sustainability h3 {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' xml:space='preserve'%3E%3Cpath fill='%23333333' d='M509.6 205.6c-1-41-11.4-79.8-31-115.6-18.5-34-45-64-76.8-86.4-7-5-16.4-4.8-23.2.5-28.4 22.4-52 51-68.7 83a257.9 257.9 0 0 0-102.6-33.2c-8.5-.8-16.5 4-19.8 12a257.9 257.9 0 0 0-19 106c-36-.4-72.4 7-105.5 21.6a19.3 19.3 0 0 0-11.4 20.2 257.9 257.9 0 0 0 35.7 101.6 257.9 257.9 0 0 0-81.2 70.9 19.3 19.3 0 0 0 0 23C29.4 440.6 60 466.4 94.5 484c36.3 18.6 75.4 28 116.4 28s80.1-9.4 116.3-28a257.7 257.7 0 0 0 86.9-72.7c29.7-23.8 54-54.4 70.5-88.6 17.6-36.7 26-76.1 25-117zM218.1 94.4a216 216 0 0 1 76.5 28.3c-9.7 28.4-14.2 58.1-13.5 88.7a252.6 252.6 0 0 0 52.5 148.7 215.1 215.1 0 0 1-95.7-85.8c-33-55-40-119.7-19.8-180zm-45.3 116a253.1 253.1 0 0 0 32 83.8 252.6 252.6 0 0 0 118.9 103.6c-43 3.8-86.5-5.4-125.5-27.5a214.8 214.8 0 0 1-106-146.9 216 216 0 0 1 80.6-13zm38 263a214.8 214.8 0 0 1-164.4-75.7 216 216 0 0 1 63.6-51c19.4 23 42.5 42.1 69.1 57.2a252.7 252.7 0 0 0 154.5 31.5c-35.5 24.6-78 38-122.7 38zm208.8-121v-108a19.3 19.3 0 0 0-38.6 0v111.7c-38-38.8-59.8-90.1-61.2-145.7C318 146.4 344 86.5 391.2 44c49.3 40 78.2 98.5 79.8 162.6 1.3 54.3-17 105.6-51.4 145.8z'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat;
  padding-left: 40px;
}
#b01-mobilesearch.b01-active,
#b01-mobilesearch.b01-active > .b01-offcanvas-bar,
#attributes-modal.b01-active,
#attributes-modal.b01-active > .b01-modal-dialog {
  transform: none;
  transition: none;
}
#geomodal .b01-button-group .b01-button:not(:first-child) {
  border-radius: 0 13px 13px 0;
  margin-right: -9px;
}
#geomodal .b01-button-group > .b01-button:last-child {
  margin-right: 0;
}
#geomodal .b01-button-group .b01-button:disabled {
  background-color: #fff;
}
.fewosearch .geogroup button * {
  pointer-events: none;
}
.fewosearch .geogroup button:not([disabled]):nth-child(0) {
  background: #00b0ff;
}
.fewosearch .geogroup button:not([disabled]):nth-child(1) {
  background: #009ee6;
}
.fewosearch .geogroup button:not([disabled]):nth-child(1):hover {
  background: #0fb5ff;
}
.fewosearch .geogroup button:not([disabled]):nth-child(2) {
  background: #008dcc;
}
.fewosearch .geogroup button:not([disabled]):nth-child(2):hover {
  background: #0fb5ff;
}
.fewosearch .geogroup button:not([disabled]):nth-child(3) {
  background: #007bb3;
}
.fewosearch .geogroup button:not([disabled]):nth-child(3):hover {
  background: #0fb5ff;
}
.fewosearch .geogroup button:not([disabled]):nth-child(4) {
  background: #006a99;
}
.fewosearch .geogroup button:not([disabled]):nth-child(4):hover {
  background: #0fb5ff;
}
.fewosearch .b01-picker.b01-active .b01-icon {
  color: #fff;
}
.fewosearch .b01-picker.b01-active input[type="text"] {
  background-color: #00b0ff;
  color: #fff;
  border: none;
}
/* ========================================================================
   Component: Base
 ========================================================================== */
/*
 * 1. Set `font-size` to support `rem` units
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Style
 */
html {
  /* 1 */
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 16px;
  font-weight: normal;
  line-height: 1.5;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 3 */
  background: #fff;
  color: #fff;
}
/*
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}
/* Links
 ========================================================================== */
/*
 * Style
 */
a,
.b01-link {
  color: #00b0ff;
  text-decoration: none;
  cursor: pointer;
}
a:hover,
.b01-link:hover,
.b01-link-toggle:hover .b01-link {
  color: #008dcc;
  text-decoration: underline;
}
/* Text-level semantics
 ========================================================================== */
/*
 * 1. Add the correct text decoration in Edge.
 * 2. The shorthand declaration `underline dotted` is not supported in Safari.
 */
abbr[title] {
  /* 1 */
  text-decoration: underline dotted;
  /* 2 */
  -webkit-text-decoration-style: dotted;
}
/*
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}
/*
 * 1. Consolas has a better baseline in running text compared to `Courier`
 * 2. Correct the odd `em` font sizing in all browsers.
 * 3. Style
 */
:not(pre) > code,
:not(pre) > kbd,
:not(pre) > samp {
  /* 1 */
  font-family: Consolas, monaco, monospace;
  /* 2 */
  font-size: 0.875rem;
  /* 3 */
  color: #DD2C00;
  white-space: nowrap;
  padding: 2px 6px;
  background: #f8f8f8;
}
/*
 * Emphasize
 */
em {
  color: #DD2C00;
}
/*
 * Insert
 */
ins {
  background: #ffd;
  color: #666;
  text-decoration: none;
}
/*
 * Mark
 */
mark {
  background: #ffd;
  color: #666;
}
/*
 * Quote
 */
q {
  font-style: italic;
}
/*
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}
/*
 * Prevents `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sup {
  top: -0.5em;
}
sub {
  bottom: -0.25em;
}
/* Embedded content
 ========================================================================== */
/*
 * Remove the gap between the element and the bottom of its parent container.
 */
audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}
/*
 * 1. Constrain the element to its parent width.
 * 2. Preserve the intrinsic aspect ratio and auto-scale the height of an image if the `height` attribute is present.
 * 3. Take border and padding into account.
 */
canvas,
img,
svg,
video {
  /* 1 */
  max-width: 100%;
  /* 2 */
  height: auto;
  /* 3 */
  box-sizing: border-box;
}
/*
 * Deprecated: only needed for `img` elements with `b01-img`
 * 1. Hide `alt` text for lazy load images.
 * 2. Fix lazy loading images if parent element is set to `display: inline` and has `overflow: hidden`.
 */
img:not([src]) {
  /* 1 */
  visibility: hidden;
  /* 2 */
  min-width: 1px;
}
/*
 * Iframe
 * Remove border in all browsers
 */
iframe {
  border: 0;
}
/* Block elements
 ========================================================================== */
/*
 * Margins
 */
p,
ul,
ol,
dl,
pre,
address,
fieldset,
figure {
  margin: 0 0 20px 0;
}
/* Add margin if adjacent element */
* + p,
* + ul,
* + ol,
* + dl,
* + pre,
* + address,
* + fieldset,
* + figure {
  margin-top: 20px;
}
/* Headings
 ========================================================================== */
h1,
.b01-h1,
h2,
.b01-h2,
h3,
.b01-h3,
h4,
.b01-h4,
h5,
.b01-h5,
h6,
.b01-h6,
.b01-heading-small,
.b01-heading-medium,
.b01-heading-large,
.b01-heading-xlarge,
.b01-heading-2xlarge {
  margin: 0 0 20px 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-weight: normal;
  color: #17678c;
  text-transform: none;
}
/* Add margin if adjacent element */
* + h1,
* + .b01-h1,
* + h2,
* + .b01-h2,
* + h3,
* + .b01-h3,
* + h4,
* + .b01-h4,
* + h5,
* + .b01-h5,
* + h6,
* + .b01-h6,
* + .b01-heading-small,
* + .b01-heading-medium,
* + .b01-heading-large,
* + .b01-heading-xlarge,
* + .b01-heading-2xlarge {
  margin-top: 40px;
}
/*
 * Sizes
 */
h1,
.b01-h1 {
  font-size: 2.23125rem;
  line-height: 1.2;
}
h2,
.b01-h2 {
  font-size: 1.7rem;
  line-height: 1.3;
}
h3,
.b01-h3 {
  font-size: 1.3rem;
  line-height: 1.4;
}
h4,
.b01-h4 {
  font-size: 1.15rem;
  line-height: 1.4;
}
h5,
.b01-h5 {
  font-size: 16px;
  line-height: 1.4;
}
h6,
.b01-h6 {
  font-size: 0.875rem;
  line-height: 1.4;
}
/* Tablet landscape and bigger */
@media (min-width: 960px) {
  h1,
  .b01-h1 {
    font-size: 2.625rem;
  }
  h2,
  .b01-h2 {
    font-size: 2rem;
  }
}
/* Lists
 ========================================================================== */
/*ul,
ol {
  padding-left: 0px;
}*/
/*
 * Reset margin for nested lists
 */
ul > li > ul,
ul > li > ol,
ol > li > ol,
ol > li > ul {
  margin: 0;
}
/* Description lists
 ========================================================================== */
dt {
  font-weight: bold;
}
dd {
  margin-left: 0;
}
/* Horizontal rules
 ========================================================================== */
/*
 * 1. Show the overflow in Chrome, Edge and IE.
 * 2. Add the correct text-align in Edge and IE.
 * 3. Style
 */
hr,
.b01-hr {
  /* 1 */
  overflow: visible;
  /* 2 */
  text-align: inherit;
  /* 3 */
  margin: 0 0 20px 0;
  border: 0;
  border-top: 1px solid #d9d9d9;
}
/* Add margin if adjacent element */
* + hr,
* + .b01-hr {
  margin-top: 20px;
}
/* Address
 ========================================================================== */
address {
  font-style: normal;
}
/* Blockquotes
 ========================================================================== */
blockquote {
  margin: 0 0 20px 0;
  font-size: 1.15rem;
  line-height: 1.5;
  font-style: italic;
  color: #333;
}
/* Add margin if adjacent element */
* + blockquote {
  margin-top: 20px;
}
/*
 * Content
 */
blockquote p:last-of-type {
  margin-bottom: 0;
}
blockquote footer {
  margin-top: 10px;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #666;
}
blockquote footer::before {
  content: "— ";
}
/* Preformatted text
 ========================================================================== */
/*
 * 1. Contain overflow in all browsers.
 */
pre {
  font: 0.875rem / 1.5 Consolas, monaco, monospace;
  color: #666;
  -moz-tab-size: 4;
  tab-size: 4;
  /* 1 */
  overflow: auto;
  padding: 10px;
  border: 1px solid #d9d9d9;
  border-radius: 3px;
  background: #fff;
}
pre code {
  font-family: Consolas, monaco, monospace;
}
/* Focus
 ========================================================================== */
:focus {
  outline: none;
}
:focus-visible {
  outline: 2px dotted #333;
}
/* Selection pseudo-element
 ========================================================================== */
::selection {
  background: #39f;
  color: #fff;
  text-shadow: none;
}
/* HTML5 elements
 ========================================================================== */
/*
 * 1. Add the correct display in Edge, IE 10+, and Firefox.
 * 2. Add the correct display in IE.
 */
details,
main {
  /* 2 */
  display: block;
}
/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}
/*
 * Add the correct display in IE.
 */
template {
  display: none;
}
/* Pass media breakpoints to JS
 ========================================================================== */
/*
 * Breakpoints
 */
:root {
  --b01-breakpoint-s: 640px;
  --b01-breakpoint-m: 960px;
  --b01-breakpoint-l: 1200px;
  --b01-breakpoint-xl: 1600px;
}
/* ========================================================================
   Component: Link
 ========================================================================== */
/* Muted
 ========================================================================== */
a.b01-link-muted,
.b01-link-muted a,
.b01-link-toggle .b01-link-muted {
  color: #777;
}
a.b01-link-muted:hover,
.b01-link-muted a:hover,
.b01-link-toggle:hover .b01-link-muted {
  color: #666;
}
/* Text
 ========================================================================== */
a.b01-link-text,
.b01-link-text a,
.b01-link-toggle .b01-link-text {
  color: inherit;
}
a.b01-link-text:hover,
.b01-link-text a:hover,
.b01-link-toggle:hover .b01-link-text {
  color: #777;
}
/* Heading
 ========================================================================== */
a.b01-link-heading,
.b01-link-heading a,
.b01-link-toggle .b01-link-heading {
  color: inherit;
}
a.b01-link-heading:hover,
.b01-link-heading a:hover,
.b01-link-toggle:hover .b01-link-heading {
  color: #00b0ff;
  text-decoration: none;
}
/* Reset
 ========================================================================== */
/*
 * `!important` needed to override inverse component
 */
a.b01-link-reset,
.b01-link-reset a {
  color: inherit !important;
  text-decoration: none !important;
}
/* Toggle
 ========================================================================== */
.b01-link-toggle {
  color: inherit !important;
  text-decoration: none !important;
}
/* ========================================================================
   Component: Heading
 ========================================================================== */
.b01-heading-small {
  font-size: 2.6rem;
  line-height: 1.2;
}
.b01-heading-medium {
  font-size: 2.275rem;
  line-height: 1.1;
}
.b01-heading-large {
  font-size: 3.4rem;
  line-height: 1.1;
}
.b01-heading-xlarge {
  font-size: 4rem;
  line-height: 1;
}
.b01-heading-2xlarge {
  font-size: 6rem;
  line-height: 1;
}
/* Tablet Landscape and bigger */
@media (min-width: 960px) {
  .b01-heading-small {
    font-size: 3.25rem;
  }
  .b01-heading-medium {
    font-size: 3.5rem;
  }
  .b01-heading-large {
    font-size: 4rem;
  }
  .b01-heading-xlarge {
    font-size: 6rem;
  }
  .b01-heading-2xlarge {
    font-size: 8rem;
  }
}
/* Laptop and bigger */
@media (min-width: 1200px) {
  .b01-heading-medium {
    font-size: 4rem;
  }
  .b01-heading-large {
    font-size: 6rem;
  }
  .b01-heading-xlarge {
    font-size: 8rem;
  }
  .b01-heading-2xlarge {
    font-size: 11rem;
  }
}
/* Primary
   Deprecated: Use `b01-heading-medium` instead
 ========================================================================== */
/* Tablet landscape and bigger */
/* Desktop and bigger */
/* Hero
   Deprecated: Use `b01-heading-xlarge` instead
 ========================================================================== */
/* Tablet landscape and bigger */
/* Desktop and bigger */
/* Divider
 ========================================================================== */
.b01-heading-divider {
  padding-bottom: calc(5px + 0.1em);
  border-bottom: calc(0.2px + 0.05em) solid #d9d9d9;
}
/* Bullet
 ========================================================================== */
.b01-heading-bullet {
  position: relative;
}
/*
 * 1. Using `inline-block` to make it work with text alignment
 * 2. Center vertically
 * 3. Style
 */
.b01-heading-bullet::before {
  content: "";
  /* 1 */
  display: inline-block;
  /* 2 */
  position: relative;
  top: calc(-0.1 * 1em);
  vertical-align: middle;
  /* 3 */
  height: calc(4px + 0.7em);
  margin-right: calc(5px + 0.2em);
  border-left: calc(5px + 0.1em) solid #d9d9d9;
}
/* Line
 ========================================================================== */
/*
 * Clip the child element
 */
.b01-heading-line {
  overflow: hidden;
}
/*
 * Extra markup is needed to make it work with text align
 */
.b01-heading-line > * {
  display: inline-block;
  position: relative;
}
/*
 * 1. Center vertically
 * 2. Make the element as large as possible. It's clipped by the container.
 * 3. Style
 */
.b01-heading-line > ::before,
.b01-heading-line > ::after {
  content: "";
  /* 1 */
  position: absolute;
  top: calc(50% - (calc(0.2px + 0.05em) / 2));
  /* 2 */
  width: 2000px;
  /* 3 */
  border-bottom: calc(0.2px + 0.05em) solid #d9d9d9;
}
.b01-heading-line > ::before {
  right: 100%;
  margin-right: calc(5px + 0.3em);
}
.b01-heading-line > ::after {
  left: 100%;
  margin-left: calc(5px + 0.3em);
}
/* ========================================================================
   Component: Divider
 ========================================================================== */
/*
 * 1. Reset default `hr`
 * 2. Set margin if a `div` is used for semantical reason
 */
[class*='b01-divider'] {
  /* 1 */
  border: none;
  /* 2 */
  margin-bottom: 20px;
}
/* Add margin if adjacent element */
* + [class*='b01-divider'] {
  margin-top: 20px;
}
/* Icon
 ========================================================================== */
.b01-divider-icon {
  position: relative;
  height: 20px;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Ccircle%20fill%3D%22none%22%20stroke%3D%22%23d9d9d9%22%20stroke-width%3D%222%22%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%227%22%20%2F%3E%0A%3C%2Fsvg%3E%0A");
  background-repeat: no-repeat;
  background-position: 50% 50%;
}
.b01-divider-icon::before,
.b01-divider-icon::after {
  content: "";
  position: absolute;
  top: 50%;
  max-width: calc(50% - (50px / 2));
  border-bottom: 1px solid #d9d9d9;
}
.b01-divider-icon::before {
  right: calc(50% + (50px / 2));
  width: 100%;
}
.b01-divider-icon::after {
  left: calc(50% + (50px / 2));
  width: 100%;
}
/* Small
 ========================================================================== */
/*
 * 1. Fix height because of `inline-block`
 * 2. Using ::after and inline-block to make `text-align` work
 */
/* 1 */
.b01-divider-small {
  line-height: 0;
}
/* 2 */
.b01-divider-small::after {
  content: "";
  display: inline-block;
  width: 100px;
  max-width: 100%;
  border-top: 1px solid #d9d9d9;
  vertical-align: top;
}
/* Vertical
 ========================================================================== */
.b01-divider-vertical {
  width: max-content;
  height: 100px;
  margin-left: auto;
  margin-right: auto;
  border-left: 1px solid #d9d9d9;
}
/* ========================================================================
   Component: List
 ========================================================================== */
.b01-list {
  padding: 0;
  list-style: none;
}
/*
 * Remove margin from the last-child
 */
.b01-list > * > :last-child {
  margin-bottom: 0;
}
/*
 * Style
 */
.b01-list > :nth-child(n+2),
.b01-list > * > ul {
  margin-top: 10px;
}
/* Marker modifiers
 * Moving `::marker` inside `::before` to style it differently
 * To style the `::marker` is currently only supported in Firefox and Safari
 ========================================================================== */
.b01-list-disc > *,
.b01-list-circle > *,
.b01-list-square > *,
.b01-list-decimal > *,
.b01-list-hyphen > * {
  padding-left: 30px;
}
/*
 * Type modifiers
 */
.b01-list-decimal {
  counter-reset: decimal;
}
.b01-list-decimal > * {
  counter-increment: decimal;
}
.b01-list-disc > ::before,
.b01-list-circle > ::before,
.b01-list-square > ::before,
.b01-list-decimal > ::before,
.b01-list-hyphen > ::before {
  content: "";
  position: relative;
  left: -30px;
  width: 30px;
  height: 1.5em;
  margin-bottom: -1.5em;
  display: list-item;
  list-style-position: inside;
  text-align: right;
}
.b01-list-disc > ::before {
  list-style-type: disc;
}
.b01-list-circle > ::before {
  list-style-type: circle;
}
.b01-list-square > ::before {
  list-style-type: square;
}
.b01-list-decimal > ::before {
  content: counter(decimal, decimal) '\200A.\00A0';
}
.b01-list-hyphen > ::before {
  content: '–\00A0\00A0';
}
/*
 * Color modifiers
 */
.b01-list-muted > ::before {
  color: #777 !important;
}
.b01-list-emphasis > ::before {
  color: #333 !important;
}
.b01-list-primary > ::before {
  color: #00b0ff !important;
}
.b01-list-secondary > ::before {
  color: #333333 !important;
}
/* Image bullet modifier
 ========================================================================== */
.b01-list-bullet > * {
  padding-left: 30px;
}
.b01-list-bullet > ::before {
  content: "";
  display: list-item;
  position: relative;
  left: -30px;
  width: 30px;
  height: 1.5em;
  margin-bottom: -1.5em;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%226%22%20height%3D%226%22%20viewBox%3D%220%200%206%206%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Ccircle%20fill%3D%22%23666%22%20cx%3D%223%22%20cy%3D%223%22%20r%3D%223%22%20%2F%3E%0A%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: 50% 50%;
}
/* Style modifiers
 ========================================================================== */
/*
 * Divider
 */
.b01-list-divider > :nth-child(n+2) {
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid #d9d9d9;
}
/*
 * Striped
 */
.b01-list-striped > * {
  padding: 10px 10px;
}
.b01-list-striped > *:nth-of-type(odd) {
  border-top: 1px solid #d9d9d9;
  border-bottom: 1px solid #d9d9d9;
}
.b01-list-striped > :nth-of-type(odd) {
  background: #f8f8f8;
}
.b01-list-striped > :nth-child(n+2) {
  margin-top: 0;
}
/* Size modifier
 ========================================================================== */
.b01-list-large > :nth-child(n+2),
.b01-list-large > * > ul {
  margin-top: 20px;
}
.b01-list-collapse > :nth-child(n+2),
.b01-list-collapse > * > ul {
  margin-top: 0;
}
/*
 * Divider
 */
.b01-list-large.b01-list-divider > :nth-child(n+2) {
  margin-top: 20px;
  padding-top: 20px;
}
.b01-list-collapse.b01-list-divider > :nth-child(n+2) {
  margin-top: 0;
  padding-top: 0;
}
/*
 * Striped
 */
.b01-list-large.b01-list-striped > * {
  padding: 20px 10px;
}
.b01-list-collapse.b01-list-striped > * {
  padding-top: 0;
  padding-bottom: 0;
}
.b01-list-large.b01-list-striped > :nth-child(n+2),
.b01-list-collapse.b01-list-striped > :nth-child(n+2) {
  margin-top: 0;
}
/* ========================================================================
   Component: Description list
 ========================================================================== */
/*
 * Term
 */
.b01-description-list > dt {
  color: #333;
  font-size: 0.875rem;
  font-weight: normal;
  text-transform: uppercase;
}
.b01-description-list > dt:nth-child(n+2) {
  margin-top: 20px;
}
/*
 * Description
 */
/* Style modifier
 ========================================================================== */
/*
 * Line
 */
.b01-description-list-divider > dt:nth-child(n+2) {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid #d9d9d9;
}
/* ========================================================================
   Component: Table
 ========================================================================== */
/*
 * 1. Remove most spacing between table cells.
 * 2. Behave like a block element
 * 3. Style
 */
.b01-table {
  /* 1 */
  border-collapse: collapse;
  border-spacing: 0;
  /* 2 */
  width: 100%;
  /* 3 */
  margin-bottom: 20px;
}
/* Add margin if adjacent element */
* + .b01-table {
  margin-top: 20px;
}
/* Header cell
 ========================================================================== */
/*
 * 1. Style
 */
.b01-table th {
  padding: 16px 12px;
  text-align: left;
  vertical-align: bottom;
  /* 1 */
  font-size: 0.875rem;
  font-weight: normal;
  color: #777;
  text-transform: uppercase;
  /*	text-transform: uppercase; */
}
/* Cell
 ========================================================================== */
.b01-table td {
  padding: 16px 12px;
  vertical-align: top;
}
/*
 * Remove margin from the last-child
 */
.b01-table td > :last-child {
  margin-bottom: 0;
}
/* Footer
 ========================================================================== */
.b01-table tfoot {
  font-size: 0.875rem;
}
/* Caption
 ========================================================================== */
.b01-table caption {
  font-size: 0.875rem;
  text-align: left;
  color: #777;
}
/* Alignment modifier
 ========================================================================== */
.b01-table-middle,
.b01-table-middle td {
  vertical-align: middle !important;
}
/* Style modifiers
 ========================================================================== */
/*
 * Divider
 */
.b01-table-divider > tr:not(:first-child),
.b01-table-divider > :not(:first-child) > tr,
.b01-table-divider > :first-child > tr:not(:first-child) {
  border-top: 1px solid #d9d9d9;
}
/*
 * Striped
 */
.b01-table-striped > tr:nth-of-type(odd),
.b01-table-striped tbody tr:nth-of-type(odd) {
  background: #f8f8f8;
  border-top: 1px solid #d9d9d9;
  border-bottom: 1px solid #d9d9d9;
}
/*
 * Hover
 */
.b01-table-hover > tr:hover,
.b01-table-hover tbody tr:hover {
  background: #ffd;
}
/* Active state
 ========================================================================== */
.b01-table > tr.b01-active,
.b01-table tbody tr.b01-active {
  background: #ffd;
}
/* Size modifier
 ========================================================================== */
.b01-table-small th,
.b01-table-small td {
  padding: 10px 12px;
}
.b01-table-large th,
.b01-table-large td {
  padding: 22px 12px;
}
/* Justify modifier
 ========================================================================== */
.b01-table-justify th:first-child,
.b01-table-justify td:first-child {
  padding-left: 0;
}
.b01-table-justify th:last-child,
.b01-table-justify td:last-child {
  padding-right: 0;
}
/* Cell size modifier
 ========================================================================== */
.b01-table-shrink {
  width: 1px;
}
.b01-table-expand {
  min-width: 150px;
}
/* Cell link modifier
 ========================================================================== */
/*
 * Does not work with `b01-table-justify` at the moment
 */
.b01-table-link {
  padding: 0 !important;
}
.b01-table-link > a {
  display: block;
  padding: 16px 12px;
}
.b01-table-small .b01-table-link > a {
  padding: 10px 12px;
}
/* Responsive table
 ========================================================================== */
/* Phone landscape and smaller */
@media (max-width: 959px) {
  .b01-table-responsive,
  .b01-table-responsive tbody,
  .b01-table-responsive th,
  .b01-table-responsive td,
  .b01-table-responsive tr {
    display: block;
  }
  .b01-table-responsive thead {
    display: none;
  }
  .b01-table-responsive th,
  .b01-table-responsive td {
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    overflow: visible !important;
    white-space: normal !important;
  }
  .b01-table-responsive th:not(:first-child):not(.b01-table-link),
  .b01-table-responsive td:not(:first-child):not(.b01-table-link),
  .b01-table-responsive .b01-table-link:not(:first-child) > a {
    padding-top: 5px !important;
  }
  .b01-table-responsive th:not(:last-child):not(.b01-table-link),
  .b01-table-responsive td:not(:last-child):not(.b01-table-link),
  .b01-table-responsive .b01-table-link:not(:last-child) > a {
    padding-bottom: 5px !important;
  }
  .b01-table-justify.b01-table-responsive th,
  .b01-table-justify.b01-table-responsive td {
    padding-left: 0;
    padding-right: 0;
  }
}
.b01-table tbody tr {
  transition: background-color 0.1s linear;
}
.b01-table-striped > tr:nth-of-type(even):last-child,
.b01-table-striped tbody tr:nth-of-type(even):last-child {
  border-bottom: 1px solid #d9d9d9;
}
.b01-table tbody tr {
  transition: background-color 0.1s linear;
}
/* ========================================================================
   Component: Icon
 ========================================================================== */
/*
 * Note: 1. - 7. is required for `button` elements. Needed for Close and Form Icon component.
 * 1. Remove margins in Chrome, Safari and Opera.
 * 2. Remove borders for `button`.
 * 3. Remove border-radius in Chrome.
 * 4. Address `overflow` set to `hidden` in IE.
 * 5. Correct `font` properties and `color` not being inherited for `button`.
 * 6. Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 7. Remove default `button` padding and background color
 * 8. Style
 * 9. Fill all SVG elements with the current text color if no `fill` attribute is set
 * 10. Let the container fit the height of the icon
 */
.b01-icon {
  /* 1 */
  margin: 0;
  /* 2 */
  border: none;
  /* 3 */
  border-radius: 0;
  /* 4 */
  overflow: visible;
  /* 5 */
  font: inherit;
  color: inherit;
  /* 6 */
  text-transform: none;
  /* 7. */
  padding: 0;
  background-color: transparent;
  /* 8 */
  display: inline-block;
  /* 9 */
  fill: currentcolor;
  /* 10 */
  line-height: 0;
}
/* Required for `button`. */
button.b01-icon:not(:disabled) {
  cursor: pointer;
}
/*
 * Remove the inner border and padding in Firefox.
 */
.b01-icon::-moz-focus-inner {
  border: 0;
  padding: 0;
}
/*
 * Set the fill and stroke color of all SVG elements to the current text color
 */
.b01-icon:not(.b01-preserve) [fill*='#']:not(.b01-preserve) {
  fill: currentcolor;
}
.b01-icon:not(.b01-preserve) [stroke*='#']:not(.b01-preserve) {
  stroke: currentcolor;
}
/*
 * Fix Firefox blurry SVG rendering: https://bugzilla.mozilla.org/show_bug.cgi?id=1046835
 */
.b01-icon > * {
  transform: translate(0, 0);
}
/* Image modifier
 ========================================================================== */
/*
 * Display images in icon dimensions
 * 1. Required for `span` with background image
 * 2. Required for `image`
 */
.b01-icon-image {
  width: 20px;
  height: 20px;
  /* 1 */
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
  /* 2 */
  object-fit: scale-down;
  max-width: none;
}
/* Style modifiers
 ========================================================================== */
/*
 * Link
 */
.b01-icon-link {
  color: #777;
}
.b01-icon-link:hover {
  color: #666;
}
/* OnClick + Active */
.b01-icon-link:active,
.b01-active > .b01-icon-link {
  color: #595959;
}
/*
 * Button
 * 1. Center icon vertically and horizontally
 */
.b01-icon-button {
  box-sizing: border-box;
  width: 36px;
  height: 36px;
  border-radius: 500px;
  background: #e6e6e6;
  color: #777;
  vertical-align: middle;
  /* 1 */
  display: inline-flex;
  justify-content: center;
  align-items: center;
  transition: 0.1s ease-in-out;
  transition-property: color, background-color;
}
/* Hover */
.b01-icon-button:hover {
  background-color: #cdcdcd;
  color: #666;
}
/* OnClick + Active */
.b01-icon-button:active,
.b01-active > .b01-icon-button {
  background-color: #cdcdcd;
  color: #666;
}
/* ========================================================================
   Component: Form Range
 ========================================================================== */
/*
 * 1. Remove default style.
 * 2. Define consistent box sizing.
 * 3. Remove `margin` in all browsers.
 * 4. Align to the center of the line box.
 * 5. Prevent content overflow if a fixed width is used.
 * 6. Take the full width.
 * 7. Remove white background in Chrome.
 */
.b01-range {
  /* 1 */
  -webkit-appearance: none;
  /* 2 */
  box-sizing: border-box;
  /* 3 */
  margin: 0;
  /* 4 */
  vertical-align: middle;
  /* 5 */
  max-width: 100%;
  /* 6 */
  width: 100%;
  /* 7 */
  background: transparent;
}
/* Focus */
.b01-range:focus {
  outline: none;
}
.b01-range::-moz-focus-outer {
  border: none;
}
/*
 * Improves consistency of cursor style for clickable elements
 */
.b01-range:not(:disabled)::-webkit-slider-thumb {
  cursor: pointer;
}
.b01-range:not(:disabled)::-moz-range-thumb {
  cursor: pointer;
}
/*
 * Track
 * 1. Safari doesn't have a focus state. Using active instead.
 */
/* Webkit */
.b01-range::-webkit-slider-runnable-track {
  height: 3px;
  background: #ebebeb;
  border-radius: 500px;
}
.b01-range:focus::-webkit-slider-runnable-track,
.b01-range:active::-webkit-slider-runnable-track {
  background: #dedede;
}
/* Firefox */
.b01-range::-moz-range-track {
  height: 3px;
  background: #ebebeb;
  border-radius: 500px;
}
.b01-range:focus::-moz-range-track {
  background: #dedede;
}
/*
 * Thumb
 * 1. Reset
 * 2. Style
 */
/* Webkit */
.b01-range::-webkit-slider-thumb {
  /* 1 */
  -webkit-appearance: none;
  margin-top: -7px;
  /* 2 */
  height: 15px;
  width: 15px;
  border-radius: 500px;
  background: #fff;
  border: 1px solid #c0c0c0;
}
/* Firefox */
.b01-range::-moz-range-thumb {
  /* 1 */
  border: none;
  /* 2 */
  height: 15px;
  width: 15px;
  margin-top: -7px;
  border-radius: 500px;
  background: #fff;
  border: 1px solid #c0c0c0;
}
/* ========================================================================
   Component: Form
 ========================================================================== */
/*
 * 1. Define consistent box sizing.
 *    Default is `content-box` with following exceptions set to `border-box`
 *    `select`, `input[type="checkbox"]` and `input[type="radio"]`
 *    `input[type="search"]` in Chrome, Safari and Opera
 *    `input[type="color"]` in Firefox
 * 2. Address margins set differently in Firefox/IE and Chrome/Safari/Opera.
 * 3. Remove `border-radius` in iOS.
 * 4. Change font properties to `inherit` in all browsers.
 */
.b01-input,
.b01-select,
.b01-textarea,
.b01-radio,
.b01-checkbox,
.choices__inner {
  /* 1 */
  box-sizing: border-box;
  /* 2 */
  margin: 0;
  /* 3 */
  border-radius: 0;
  /* 4 */
  font: inherit;
}
/*
 * Show the overflow in Edge.
 */
.b01-input,
.choices__inner {
  overflow: visible;
}
/*
 * Remove the inheritance of text transform in Firefox.
 */
.b01-select {
  text-transform: none;
}
/*
 * 1. Change font properties to `inherit` in all browsers
 * 2. Don't inherit the `font-weight` and use `bold` instead.
 * NOTE: Both declarations don't work in Chrome, Safari and Opera.
 */
.b01-select optgroup {
  /* 1 */
  font: inherit;
  /* 2 */
  font-weight: bold;
}
/*
 * Remove the default vertical scrollbar in IE 10+.
 */
.b01-textarea {
  overflow: auto;
}
/*
 * Remove the inner padding and cancel buttons in Chrome on OS X and Safari on OS X.
 */
.b01-input[type="search"]::-webkit-search-cancel-button,
.b01-input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
/*
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
.b01-input[type="number"]::-webkit-inner-spin-button,
.b01-input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}
/*
 * Removes placeholder transparency in Firefox.
 */
.b01-input::-moz-placeholder,
.b01-textarea::-moz-placeholder {
  opacity: 1;
}
/*
 * Improves consistency of cursor style for clickable elements
 */
.b01-radio:not(:disabled),
.b01-checkbox:not(:disabled) {
  cursor: pointer;
}
/*
 * Define consistent border, margin, and padding.
 */
.b01-fieldset {
  border: none;
  margin: 0;
  padding: 0;
}
/* Input, select and textarea
 * Allowed: `text`, `password`, `datetime`, `datetime-local`, `date`,  `month`,
            `time`, `week`, `number`, `email`, `url`, `search`, `tel`, `color`
 * Disallowed: `range`, `radio`, `checkbox`, `file`, `submit`, `reset` and `image`
 ========================================================================== */
/*
 * Remove default style in iOS.
 */
.b01-input,
.b01-textarea,
.choices__inner {
  -webkit-appearance: none;
}
/*
 * 1. Prevent content overflow if a fixed width is used
 * 2. Take the full width
 * 3. Reset default
 * 4. Style
 */
.b01-input,
.b01-select,
.b01-textarea,
.choices__inner {
  /* 1 */
  max-width: 100%;
  /* 2 */
  width: 100%;
  /* 3 */
  border: 0 none;
  /* 4 */
  padding: 0 10px;
  background: #fff;
  color: #666;
  border: 1px solid #d9d9d9;
  transition: 0.2s ease-in-out;
  transition-property: color, background-color, border;
}
.b01-input[readonly]:not(.search_picker):not(.b01-picker),
.b01-select[readonly]:not(.search_picker):not(.b01-picker),
.b01-textarea[readonly]:not(.search_picker):not(.b01-picker) {
  background-color: #f1f1f1;
  cursor: not-allowed;
}
.b01-input[readonly]:not(.search_picker):not(.b01-picker):focus,
.b01-select[readonly]:not(.search_picker):not(.b01-picker):focus,
.b01-textarea[readonly]:not(.search_picker):not(.b01-picker):focus {
  border-color: #4098bf;
  background-color: #f1f1f1;
}
/*
 * Single-line
 * 1. Allow any element to look like an `input` or `select` element
 * 2. Make sure line-height is not larger than height
 *    Also needed to center the text vertically
 */
.b01-input,
.b01-select:not([multiple]):not([size]),
.choices__inner {
  height: 40px;
  vertical-align: middle;
  /* 1 */
  display: inline-block;
}
/* 2 */
.b01-input:not(input),
.b01-select:not(select) {
  line-height: 38px;
}
/*
 * Multi-line
 */
.b01-select[multiple],
.b01-select[size],
.b01-textarea {
  padding-top: 6px;
  padding-bottom: 6px;
  vertical-align: top;
}
.b01-select[multiple],
.b01-select[size] {
  resize: vertical;
}
/* Focus */
.b01-input:focus,
.b01-select:focus,
.b01-textarea:focus {
  outline: none;
  background-color: #fff;
  color: #666;
  border-color: #00b0ff;
}
/* Disabled */
.b01-input:disabled,
.b01-select:disabled,
.b01-textarea:disabled {
  background-color: #f8f8f8;
  color: #777;
  border-color: #d9d9d9;
}
/*
 * Placeholder
 */
.b01-input::placeholder {
  color: #8f8f8f;
}
.b01-textarea::placeholder {
  color: #8f8f8f;
}
/* Style modifier (`b01-input`, `b01-select` and `b01-textarea`)
 ========================================================================== */
/*
 * Small
 */
.b01-form-small {
  font-size: 0.875rem;
}
/* Single-line */
.b01-form-small:not(textarea):not([multiple]):not([size]) {
  height: 30px;
  padding-left: 8px;
  padding-right: 8px;
}
/* Multi-line */
textarea.b01-form-small,
[multiple].b01-form-small,
[size].b01-form-small {
  padding: 5px 8px;
}
.b01-form-small:not(select):not(input):not(textarea) {
  line-height: 28px;
}
/*
 * Large
 */
.b01-form-large {
  font-size: 1.15rem;
}
/* Single-line */
.b01-form-large:not(textarea):not([multiple]):not([size]) {
  height: 55px;
  padding-left: 12px;
  padding-right: 12px;
}
/* Multi-line */
textarea.b01-form-large,
[multiple].b01-form-large,
[size].b01-form-large {
  padding: 7px 12px;
}
.b01-form-large:not(select):not(input):not(textarea) {
  line-height: 53px;
}
/* Style modifier (`b01-input`, `b01-select` and `b01-textarea`)
 ========================================================================== */
/*
 * Error
 */
.b01-form-danger,
.b01-form-danger:focus {
  color: #DD2C00;
  border-color: #DD2C00;
}
/*
 * Success
 */
.b01-form-success,
.b01-form-success:focus {
  color: #4CAF50;
  border-color: #4CAF50;
}
/*
 * Blank
 */
.b01-form-blank {
  background: none;
  border-color: transparent;
}
.b01-form-blank:focus {
  border-color: #d9d9d9;
  border-style: solid;
}
/* Width modifiers (`b01-input`, `b01-select` and `b01-textarea`)
 ========================================================================== */
/*
 * Fixed widths
 * Different widths for mini sized `input` and `select` elements
 */
input.b01-form-width-xsmall {
  width: 70px;
}
select.b01-form-width-xsmall {
  width: 95px;
}
.b01-form-width-small {
  width: 130px;
}
.b01-form-width-medium {
  width: 200px;
}
.b01-form-width-large {
  width: 500px;
}
/* Select
 ========================================================================== */
/*
 * 1. Remove default style. Also works in Firefox
 * 2. Style
 * 3. Set `color` for options in the select dropdown, because the inherited `color` might be too light.
 */
.b01-select:not([multiple]):not([size]) {
  /* 1 */
  -webkit-appearance: none;
  -moz-appearance: none;
  /* 2 */
  padding-right: 20px;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2224%22%20height%3D%2216%22%20viewBox%3D%220%200%2024%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%23666%22%20points%3D%2212%201%209%206%2015%206%22%20%2F%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%23666%22%20points%3D%2212%2013%209%208%2015%208%22%20%2F%3E%0A%3C%2Fsvg%3E%0A");
  background-repeat: no-repeat;
  background-position: 100% 50%;
}
/* 3 */
.b01-select:not([multiple]):not([size]) option {
  color: #666;
}
/*
 * Disabled
 */
.b01-select:not([multiple]):not([size]):disabled {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2224%22%20height%3D%2216%22%20viewBox%3D%220%200%2024%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%23777%22%20points%3D%2212%201%209%206%2015%206%22%20%2F%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%23777%22%20points%3D%2212%2013%209%208%2015%208%22%20%2F%3E%0A%3C%2Fsvg%3E%0A");
}
/* Datalist
 ========================================================================== */
/*
 * 1. Remove default style in Chrome
 */
.b01-input[list] {
  padding-right: 20px;
  background-repeat: no-repeat;
  background-position: 100% 50%;
}
.b01-input[list]:hover,
.b01-input[list]:focus {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2224%22%20height%3D%2216%22%20viewBox%3D%220%200%2024%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%23666%22%20points%3D%2212%2012%208%206%2016%206%22%20%2F%3E%0A%3C%2Fsvg%3E%0A");
}
/* 1 */
.b01-input[list]::-webkit-calendar-picker-indicator {
  display: none !important;
}
/* Radio and checkbox
 ========================================================================== */
/*
 * 1. Style
 * 2. Make box more robust so it clips the child element
 * 3. Vertical alignment
 * 4. Remove default style
 * 5. Fix black background on iOS
 * 6. Center icons
 */
.b01-radio,
.b01-checkbox {
  /* 1 */
  display: inline-block;
  height: 20px;
  width: 20px;
  /* 2 */
  overflow: hidden;
  /* 3 */
  margin-top: -4px;
  vertical-align: middle;
  /* 4 */
  -webkit-appearance: none;
  -moz-appearance: none;
  /* 5 */
  background-color: #e6e6e6;
  /* 6 */
  background-repeat: no-repeat;
  background-position: 50% 50%;
  border: 1px solid #c0c0c0;
  transition: 0.2s ease-in-out;
  transition-property: background-color, border;
}
.b01-radio {
  border-radius: 50%;
}
/* Focus */
.b01-radio:focus,
.b01-checkbox:focus {
  background-color: #d9d9d9;
  outline: none;
  border-color: #00b0ff;
}
/*
 * Checked
 */
.b01-radio:checked,
.b01-checkbox:checked,
.b01-checkbox:indeterminate {
  background-color: #00b0ff;
  border-color: transparent;
}
/* Focus */
.b01-radio:checked:focus,
.b01-checkbox:checked:focus,
.b01-checkbox:indeterminate:focus {
  background-color: #008dcc;
}
/*
 * Icons
 */
.b01-radio:checked {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Ccircle%20fill%3D%22%23fff%22%20cx%3D%228%22%20cy%3D%228%22%20r%3D%222%22%20%2F%3E%0A%3C%2Fsvg%3E");
}
.b01-checkbox:checked {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2214%22%20height%3D%2211%22%20viewBox%3D%220%200%2014%2011%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%23fff%22%20points%3D%2212%201%205%207.5%202%205%201%205.5%205%2010%2013%201.5%22%20%2F%3E%0A%3C%2Fsvg%3E%0A");
}
.b01-checkbox:indeterminate {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Crect%20fill%3D%22%23fff%22%20x%3D%223%22%20y%3D%228%22%20width%3D%2210%22%20height%3D%221%22%20%2F%3E%0A%3C%2Fsvg%3E");
}
/*
 * Disabled
 */
.b01-radio:disabled,
.b01-checkbox:disabled {
  background-color: #f8f8f8;
  border-color: #d9d9d9;
}
.b01-radio:disabled:checked {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Ccircle%20fill%3D%22%23777%22%20cx%3D%228%22%20cy%3D%228%22%20r%3D%222%22%20%2F%3E%0A%3C%2Fsvg%3E");
}
.b01-checkbox:disabled:checked {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2214%22%20height%3D%2211%22%20viewBox%3D%220%200%2014%2011%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%23777%22%20points%3D%2212%201%205%207.5%202%205%201%205.5%205%2010%2013%201.5%22%20%2F%3E%0A%3C%2Fsvg%3E%0A");
}
.b01-checkbox:disabled:indeterminate {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Crect%20fill%3D%22%23777%22%20x%3D%223%22%20y%3D%228%22%20width%3D%2210%22%20height%3D%221%22%20%2F%3E%0A%3C%2Fsvg%3E");
}
/* Legend
 ========================================================================== */
/*
 * Legend
 * 1. Behave like block element
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove padding so people aren't caught out if they zero out fieldsets.
 * 4. Style
 */
.b01-legend {
  /* 1 */
  width: 100%;
  /* 2 */
  color: inherit;
  /* 3 */
  padding: 0;
  /* 4 */
  font-size: 1.3rem;
  line-height: 1.4;
}
/* Custom controls
 ========================================================================== */
/*
 * 1. Container fits its content
 * 2. Create position context
 * 3. Prevent content overflow
 * 4. Behave like most inline-block elements
 */
.b01-form-custom {
  /* 1 */
  display: inline-block;
  /* 2 */
  position: relative;
  /* 3 */
  max-width: 100%;
  /* 4 */
  vertical-align: middle;
}
/*
 * 1. Position and resize the form control to always cover its container
 * 2. Required for Firefox for positioning to the left
 * 3. Required for Webkit to make `height` work
 * 4. Hide controle and show cursor
 * 5. Needed for the cursor
 * 6. Clip height caused by 5. Needed for Webkit only
 */
.b01-form-custom select,
.b01-form-custom input[type="file"] {
  /* 1 */
  position: absolute;
  top: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  /* 2 */
  left: 0;
  /* 3 */
  -webkit-appearance: none;
  /* 4 */
  opacity: 0;
  cursor: pointer;
}
.b01-form-custom input[type="file"] {
  /* 5 */
  font-size: 500px;
  /* 6 */
  overflow: hidden;
}
/* Label
 ========================================================================== */
.b01-form-label {
  color: #333;
  font-size: 0.875rem;
}
/* Layout
 ========================================================================== */
/*
 * Stacked
 */
.b01-form-stacked .b01-form-label {
  display: block;
  margin-bottom: 5px;
}
/*
 * Horizontal
 */
/* Tablet portrait and smaller */
@media (max-width: 959px) {
  /* Behave like `b01-form-stacked` */
  .b01-form-horizontal .b01-form-label {
    display: block;
    margin-bottom: 5px;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 960px) {
  .b01-form-horizontal .b01-form-label {
    width: 200px;
    margin-top: 7px;
    float: left;
  }
  .b01-form-horizontal .b01-form-controls {
    margin-left: 215px;
  }
  /* Better vertical alignment if controls are checkboxes and radio buttons with text */
  .b01-form-horizontal .b01-form-controls-text {
    padding-top: 7px;
  }
}
/* Icons
 ========================================================================== */
/*
 * 1. Set position
 * 2. Set width
 * 3. Center icon vertically and horizontally
 * 4. Style
 */
.b01-form-icon {
  /* 1 */
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  /* 2 */
  width: 40px;
  /* 3 */
  display: inline-flex;
  justify-content: center;
  align-items: center;
  /* 4 */
  color: #777;
}
/*
 * Required for `a`.
 */
.b01-form-icon:hover {
  color: #666;
}
/*
 * Make `input` element clickable through icon, e.g. if it's a `span`
 */
.b01-form-icon:not(a):not(button):not(input) {
  pointer-events: none;
}
/*
 * Input padding
 */
.b01-form-icon:not(.b01-form-icon-flip) ~ .b01-input {
  padding-left: 40px !important;
}
/*
 * Position modifier
 */
.b01-form-icon-flip {
  right: 0;
  left: auto;
}
.b01-form-icon-flip ~ .b01-input {
  padding-right: 40px !important;
}
.btn-group-yesno input:checked + label,
.btn-group-yesno input:checked + .btn {
  background-color: #4CAF50;
  border-color: #4CAF50;
  color: #fff;
}
.btn-group-yesno input[value=""]:checked + label,
.btn-group-yesno input[value="0"]:checked + label,
.btn-group-yesno input[value=""]:checked + .btn,
.btn-group-yesno input[value="0"]:checked + .btn {
  background-color: #DD2C00;
  border-color: #DD2C00;
  color: #fff;
}
.btn-group-yesno input[value="-2"]:checked + label,
.btn-group-yesno input[value="-2"]:checked + .btn {
  background-color: #565656;
  border-color: #565656;
  color: #fff;
}
.btn-group-yesno input[type=radio] {
  display: none !important;
}
/* ========================================================================
   Component: Button
 ========================================================================== */
/*
 * 1. Remove margins in Chrome, Safari and Opera.
 * 2. Remove borders for `button`.
 * 3. Address `overflow` set to `hidden` in IE.
 * 4. Correct `font` properties and `color` not being inherited for `button`.
 * 5. Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 6. Remove default style for `input type="submit"`in iOS.
 * 7. Style
 * 8. `line-height` is used to create a height because it also centers the text vertically for `a` elements.
 *    Better would be to use height and flexbox to center the text vertically but flexbox doesn't work in Firefox on `button` elements.
 * 9. Align text if button has a width
 * 10. Required for `a`.
 */
.b01-button,
.btn-group label,
.kalendae.k-floating a.k-btn-submit,
.kalendae.k-floating a.k-btn-reset,
.kalendae.k-floating a.k-btn-close {
  /* 1 */
  margin: 0;
  /* 2 */
  border: none;
  /* 3 */
  overflow: visible;
  /* 4 */
  font: inherit;
  color: inherit;
  /* 5 */
  /* 6 */
  -webkit-appearance: none;
  border-radius: 0;
  /* 7 */
  display: inline-block;
  box-sizing: border-box;
  padding: 0 15px;
  vertical-align: middle;
  font-size: 0.875rem;
  /* 8 */
  line-height: 38px;
  /* 9 */
  text-align: center;
  /* 10 */
  text-decoration: none;
  text-transform: none;
  transition: 0.1s ease-in-out;
  transition-property: color, background-color, border-color;
  border-radius: 4px;
}
.b01-button:not(:disabled),
.btn-group label {
  cursor: pointer;
}
/*
 * Remove the inner border and padding in Firefox.
 */
.b01-button::-moz-focus-inner {
  border: 0;
  padding: 0;
}
/* Hover */
.b01-button:hover {
  /* 9 */
  text-decoration: none;
}
/* OnClick + Active */
/* Style modifiers
 ========================================================================== */
/*
 * Default
 */
.b01-button-default,
.btn-group label,
.kalendae.k-floating a.k-btn-close,
.kalendae.k-floating a.k-btn-reset {
  background-color: transparent;
  color: #333;
  border: 1px solid #d9d9d9;
}
/* Hover */
.b01-button-default:hover,
.kalendae.k-floating a.k-btn-reset:hover,
.kalendae.k-floating a.k-btn-close:hover {
  background-color: transparent;
  color: #333;
  border-color: #a6a6a6;
}
/* OnClick + Active */
.b01-button-default:active,
.b01-button-default.b01-active {
  background-color: transparent;
  color: #333;
  border-color: #8d8d8d;
}
/*
 * Primary
 */
.b01-button-primary,
.kalendae.k-floating a.k-btn-submit {
  background-color: #00b0ff;
  color: #fff;
  border: 1px solid transparent;
}
/* Hover */
.b01-button-primary:hover,
.kalendae.k-floating a.k-btn-submit:hover {
  background-color: #009ee6;
  color: #fff;
}
/* OnClick + Active */
.b01-button-primary:active,
.b01-button-primary.b01-active {
  background-color: #008dcc;
  color: #fff;
}
/*
 * Secondary
 */
.b01-button-secondary {
  background-color: #333333;
  color: #fff;
  border: 1px solid transparent;
}
/* Hover */
.b01-button-secondary:hover {
  background-color: #262626;
  color: #fff;
}
/* OnClick + Active */
.b01-button-secondary:active,
.b01-button-secondary.b01-active {
  background-color: #1a1a1a;
  color: #fff;
}
/*
 * Danger
 */
.b01-button-danger {
  background-color: #DD2C00;
  color: #fff;
  border: 1px solid transparent;
}
/* Hover */
.b01-button-danger:hover {
  background-color: #c42700;
  color: #fff;
}
/* OnClick + Active */
.b01-button-danger:active,
.b01-button-danger.b01-active {
  background-color: #aa2200;
  color: #fff;
}
/*
 * Disabled
 * The same for all style modifiers
 */
.b01-button-default:disabled,
.b01-button-primary:disabled,
.b01-button-secondary:disabled,
.b01-button-danger:disabled {
  background-color: transparent;
  color: #777;
  border-color: #d9d9d9;
}
/* Size modifiers
 ========================================================================== */
.b01-button-small {
  padding: 0 15px;
  line-height: 28px;
  font-size: 0.875rem;
}
.b01-button-large {
  padding: 0 40px;
  line-height: 53px;
  font-size: 0.875rem;
}
/* Text modifiers
 ========================================================================== */
/*
 * Text
 * 1. Reset
 * 2. Style
 */
.b01-button-text {
  /* 1 */
  padding: 0;
  line-height: 1.5;
  background: none;
  /* 2 */
  color: #333;
  position: relative;
}
.b01-button-text::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 100%;
  border-bottom: 1px solid #333;
  transition: right 0.3s ease-out;
}
/* Hover */
.b01-button-text:hover {
  color: #333;
}
.b01-button-text:hover::before {
  right: 0;
}
/* Disabled */
.b01-button-text:disabled {
  color: #777;
}
.b01-button-text:disabled::before {
  display: none;
}
/*
 * Link
 * 1. Reset
 * 2. Style
 */
.b01-button-link {
  /* 1 */
  padding: 0;
  line-height: 1.5;
  background: none;
  /* 2 */
  color: #333;
}
/* Hover */
.b01-button-link:hover {
  color: #777;
  text-decoration: none;
}
/* Disabled */
.b01-button-link:disabled {
  color: #777;
  text-decoration: none;
}
/* Group
 ========================================================================== */
/*
 * 1. Using `flex` instead of `inline-block` to prevent whitespace betweent child elements
 * 2. Behave like button
 * 3. Create position context
 */
.b01-button-group,
.btn-group {
  /* 1 */
  display: inline-flex;
  /* 2 */
  vertical-align: middle;
  /* 3 */
  position: relative;
}
/* Group
     ========================================================================== */
/*
     * Collapse border
     */
.b01-button-group > .b01-button:nth-child(n+2),
.b01-button-group > div:nth-child(n+2) .b01-button {
  margin-left: -1px;
}
/*
     * Create position context to superimpose the successor elements border
     * Known issue: If you use an `a` element as button and an icon inside,
     * the active state will not work if you click the icon inside the button
     * Workaround: Just use a `button` or `input` element as button
     */
.b01-button-group .b01-button:hover,
.b01-button-group .b01-button:active,
.b01-button-group .b01-button.b01-active {
  position: relative;
  z-index: 1;
}
.b01-button-group > .b01-button,
.b01-button-group > div .b01-button {
  border-radius: 0;
}
.b01-button-group > label.b01-button:first-of-type,
.b01-button-group > .b01-button:first-child,
.b01-button-group > div:first-child .b01-button {
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
}
.b01-button-group > .b01-button:nth-child(n+2),
.b01-button-group > div:nth-child(n+2) .b01-button {
  border-radius: 0;
}
.b01-button-group > label.b01-button:last-of-type,
.b01-button-group > .b01-button:last-child,
.b01-button-group > div:last-child .b01-button {
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
}
.b01-button-mini {
  padding: 0 5px;
  line-height: 16px;
  font-size: 0.675rem;
}
.b01-button-large-shrink {
  padding: 0 15px;
  line-height: 53px;
  font-size: 0.875rem;
}
@media (max-width: 640px) {
  .b01-button-large-shrink {
    padding: 0 12px;
  }
}
/* ========================================================================
   Component: Progress
 ========================================================================== */
/*
 * 1. Add the correct vertical alignment in all browsers.
 * 2. Behave like a block element.
 * 3. Remove borders in Firefox.
 * 4. Remove default style in Chrome, Safari and Edge.
 * 5. Style
 */
.b01-progress {
  /* 1 */
  vertical-align: baseline;
  /* 2 */
  display: block;
  width: 100%;
  /* 3 */
  border: 0;
  /* 4 */
  background-color: #f8f8f8;
  /* 5 */
  margin-bottom: 20px;
  height: 15px;
  border-radius: 500px;
  overflow: hidden;
}
/* Add margin if adjacent element */
* + .b01-progress {
  margin-top: 20px;
}
/*
 * Show background color set on `b01-progress` in Chrome, Safari and Edge.
 */
.b01-progress::-webkit-progress-bar {
  background-color: transparent;
}
/*
 * Progress Bar
 * 1. Transitions don't work on `::-moz-progress-bar` pseudo element in Firefox yet.
 *    https://bugzilla.mozilla.org/show_bug.cgi?id=662351
 */
.b01-progress::-webkit-progress-value {
  background-color: #00b0ff;
  transition: width 0.6s ease;
}
.b01-progress::-moz-progress-bar {
  background-color: #00b0ff;
  /* 1 */
  transition: width 0.6s ease;
}
/* ========================================================================
   Component: Section
 ========================================================================== */
/*
 * 1. Make it work with `100vh` and height in general
 */
.b01-section {
  display: flow-root;
  box-sizing: border-box;
  /* 1 */
  padding-top: 40px;
  padding-bottom: 40px;
}
/* Desktop and bigger */
@media (min-width: 960px) {
  .b01-section {
    padding-top: 70px;
    padding-bottom: 70px;
  }
}
/*
 * Remove margin from the last-child
 */
.b01-section > :last-child {
  margin-bottom: 0;
}
/* Size modifiers
 ========================================================================== */
/*
 * XSmall
 */
.b01-section-xsmall {
  padding-top: 20px;
  padding-bottom: 20px;
}
/*
 * Small
 */
.b01-section-small {
  padding-top: 40px;
  padding-bottom: 40px;
}
/*
 * Large
 */
.b01-section-large {
  padding-top: 70px;
  padding-bottom: 70px;
}
/* Tablet landscape and bigger */
@media (min-width: 960px) {
  .b01-section-large {
    padding-top: 140px;
    padding-bottom: 140px;
  }
}
/*
 * XLarge
 */
.b01-section-xlarge {
  padding-top: 140px;
  padding-bottom: 140px;
}
/* Tablet landscape and bigger */
@media (min-width: 960px) {
  .b01-section-xlarge {
    padding-top: 210px;
    padding-bottom: 210px;
  }
}
/* Style modifiers
 ========================================================================== */
/*
 * Default
 */
.b01-section-default {
  background: #fff;
}
/*
 * Muted
 */
.b01-section-muted {
  background: #f8f8f8;
}
/*
 * Primary
 */
.b01-section-primary {
  background: #00b0ff;
}
/*
 * Secondary
 */
.b01-section-secondary {
  background: #333333;
}
/* Overlap modifier
 ========================================================================== */
/*
 * Reserved modifier to make a section overlap another section with an border image
 * Implemented by the theme
 */
/* ========================================================================
   Component: Container
 ========================================================================== */
/*
 * 1. Box sizing has to be `content-box` so the max-width is always the same and
 *    unaffected by the padding on different breakpoints. It's important for the size modifiers.
 */
.b01-container {
  display: flow-root;
  /* 1 */
  box-sizing: content-box;
  max-width: 1340px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 15px;
  padding-right: 15px;
}
/* Phone landscape and bigger */
@media (min-width: 640px) {
  .b01-container {
    padding-left: 30px;
    padding-right: 30px;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 960px) {
  .b01-container {
    padding-left: 40px;
    padding-right: 40px;
  }
}
/*
 * Remove margin from the last-child
 */
.b01-container > :last-child {
  margin-bottom: 0;
}
/*
 * Remove padding from nested containers
 */
.b01-container .b01-container {
  padding-left: 0;
  padding-right: 0;
}
/* Size modifier
 ========================================================================== */
.b01-container-xsmall {
  max-width: 750px;
}
.b01-container-small {
  max-width: 900px;
}
.b01-container-large {
  max-width: 1400px;
}
.b01-container-xlarge {
  max-width: 1600px;
}
.b01-container-expand {
  max-width: none;
}
/* Expand modifier
 ========================================================================== */
/*
 * Expand one side only
 */
.b01-container-expand-left {
  margin-left: 0;
}
.b01-container-expand-right {
  margin-right: 0;
}
/* Phone landscape and bigger */
@media (min-width: 640px) {
  .b01-container-expand-left.b01-container-xsmall,
  .b01-container-expand-right.b01-container-xsmall {
    max-width: calc(50% + (750px / 2) - 30px);
  }
  .b01-container-expand-left.b01-container-small,
  .b01-container-expand-right.b01-container-small {
    max-width: calc(50% + (900px / 2) - 30px);
  }
}
/* Tablet landscape and bigger */
@media (min-width: 960px) {
  .b01-container-expand-left,
  .b01-container-expand-right {
    max-width: calc(50% + (1340px / 2) - 40px);
  }
  .b01-container-expand-left.b01-container-xsmall,
  .b01-container-expand-right.b01-container-xsmall {
    max-width: calc(50% + (750px / 2) - 40px);
  }
  .b01-container-expand-left.b01-container-small,
  .b01-container-expand-right.b01-container-small {
    max-width: calc(50% + (900px / 2) - 40px);
  }
  .b01-container-expand-left.b01-container-large,
  .b01-container-expand-right.b01-container-large {
    max-width: calc(50% + (1400px / 2) - 40px);
  }
  .b01-container-expand-left.b01-container-xlarge,
  .b01-container-expand-right.b01-container-xlarge {
    max-width: calc(50% + (1600px / 2) - 40px);
  }
}
/* Item
 ========================================================================== */
/*
 * Utility classes to reset container padding on the left or right side
 * Note: It has to be negative margin on the item, because it's specific to the item.
 */
.b01-container-item-padding-remove-left,
.b01-container-item-padding-remove-right {
  width: calc(100% + 15px);
}
.b01-container-item-padding-remove-left {
  margin-left: -15px;
}
.b01-container-item-padding-remove-right {
  margin-right: -15px;
}
/* Phone landscape and bigger */
@media (min-width: 640px) {
  .b01-container-item-padding-remove-left,
  .b01-container-item-padding-remove-right {
    width: calc(100% + 30px);
  }
  .b01-container-item-padding-remove-left {
    margin-left: -30px;
  }
  .b01-container-item-padding-remove-right {
    margin-right: -30px;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 960px) {
  .b01-container-item-padding-remove-left,
  .b01-container-item-padding-remove-right {
    width: calc(100% + 40px);
  }
  .b01-container-item-padding-remove-left {
    margin-left: -40px;
  }
  .b01-container-item-padding-remove-right {
    margin-right: -40px;
  }
}
/* ========================================================================
   Component: Tile
 ========================================================================== */
.b01-tile {
  display: flow-root;
  position: relative;
  box-sizing: border-box;
  padding-left: 15px;
  padding-right: 15px;
  padding-top: 40px;
  padding-bottom: 40px;
}
/* Phone landscape and bigger */
@media (min-width: 640px) {
  .b01-tile {
    padding-left: 30px;
    padding-right: 30px;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 960px) {
  .b01-tile {
    padding-left: 40px;
    padding-right: 40px;
    padding-top: 70px;
    padding-bottom: 70px;
  }
}
/*
 * Remove margin from the last-child
 */
.b01-tile > :last-child {
  margin-bottom: 0;
}
/* Size modifiers
 ========================================================================== */
/*
 * XSmall
 */
.b01-tile-xsmall {
  padding-top: 20px;
  padding-bottom: 20px;
}
/*
 * Small
 */
.b01-tile-small {
  padding-top: 40px;
  padding-bottom: 40px;
}
/*
 * Large
 */
.b01-tile-large {
  padding-top: 70px;
  padding-bottom: 70px;
}
/* Tablet landscape and bigger */
@media (min-width: 960px) {
  .b01-tile-large {
    padding-top: 140px;
    padding-bottom: 140px;
  }
}
/*
 * XLarge
 */
.b01-tile-xlarge {
  padding-top: 140px;
  padding-bottom: 140px;
}
/* Tablet landscape and bigger */
@media (min-width: 960px) {
  .b01-tile-xlarge {
    padding-top: 210px;
    padding-bottom: 210px;
  }
}
/* Style modifiers
 ========================================================================== */
/*
 * Default
 */
.b01-tile-default {
  background-color: #fff;
}
/*
 * Muted
 */
.b01-tile-muted {
  background-color: #f8f8f8;
}
/*
 * Primary
 */
.b01-tile-primary {
  background-color: #00b0ff;
}
/*
 * Secondary
 */
.b01-tile-secondary {
  background-color: #333333;
}
/* ========================================================================
   Component: Card
 ========================================================================== */
.b01-card,
.fli .fli-item {
  position: relative;
  box-sizing: border-box;
  transition: box-shadow 0.1s ease-in-out;
}
/* Sections
 ========================================================================== */
.b01-card-body,
.b01-accordion.compact > li {
  display: flow-root;
  padding: 30px 30px;
}
.b01-card-header {
  display: flow-root;
  padding: 15px 30px;
}
.b01-card-footer {
  display: flow-root;
  padding: 15px 30px;
  border-top: 1px solid #e0e0e0;
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  .b01-card-body,
  .b01-accordion.compact > li {
    padding: 40px 40px;
  }
  .b01-card-header {
    padding: 20px 40px;
  }
  .b01-card-footer {
    padding: 20px 40px;
  }
}
/*
 * Remove margin from the last-child
 */
.b01-card-body > :last-child,
.b01-card-header > :last-child,
.b01-card-footer > :last-child {
  margin-bottom: 0;
}
/* Media
 ========================================================================== */
/*
 * Reserved alignment modifier to style the media element, e.g. with `border-radius`
 * Implemented by the theme
 */
/* Title
 ========================================================================== */
.b01-card-title {
  font-size: 1.3rem;
  line-height: 1.4;
}
/* Badge
 ========================================================================== */
/*
 * 1. Position
 * 2. Size
 * 3. Style
 * 4. Center child vertically
 */
.b01-card-badge {
  /* 1 */
  position: absolute;
  top: 15px;
  right: 15px;
  z-index: 1;
  /* 2 */
  height: 22px;
  padding: 0 10px;
  /* 3 */
  background: #00b0ff;
  color: #fff;
  font-size: 0.875rem;
  /* 4 */
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 0;
  border-radius: 2px;
  text-transform: uppercase;
}
/*
 * Remove margin from adjacent element
 */
.b01-card-badge:first-child + * {
  margin-top: 0;
}
/* Hover modifier
 ========================================================================== */
.b01-card-hover:not(.b01-card-default):not(.b01-card-primary):not(.b01-card-secondary):hover {
  background-color: #fff;
  box-shadow: 1px 6px 8px rgba(0, 0, 0, 0.16);
}
/* Style modifiers
 ========================================================================== */
/*
 * Default
 * Note: Header and Footer are only implemented for the default style
 */
.b01-card-default,
.fli .fli-item,
.b01-accordion.compact > li {
  background-color: #fff;
  color: #666;
  box-shadow: rgba(50, 50, 93, 0.25) 0px 2px 5px -1px, rgba(0, 0, 0, 0.1) 0px 1px 4px -1px;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.12);
  transition-property: background, box-shadow;
  transition-duration: 0.1s;
}
.b01-card-default .b01-card-title {
  color: #333;
}
.b01-card-default.b01-card-hover:hover,
.fli .fli-item:hover {
  background-color: #edf9ff;
  box-shadow: 0px 1px 1px 2px rgba(0, 0, 0, 0.15);
}
.b01-card-default .b01-card-header {
  border-bottom: 1px solid #d9d9d9;
}
.b01-card-default .b01-card-footer {
  border-top: 1px solid #d9d9d9;
}
/*
 * Primary
 */
.b01-card-primary {
  background-color: #00b0ff;
  color: #fff;
  box-shadow: 0px 1px 1px 2px rgba(0, 0, 0, 0.15);
}
.b01-card-primary .b01-card-title {
  color: #fff;
}
.b01-card-primary.b01-card-hover:hover {
  background-color: #00b0ff;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.12);
}
/*
 * Secondary
 */
.b01-card-secondary {
  background-color: #333333;
  color: #fff;
  box-shadow: 0px 1px 1px 2px rgba(0, 0, 0, 0.15);
}
.b01-card-secondary .b01-card-title {
  color: #fff;
}
.b01-card-secondary.b01-card-hover:hover {
  background-color: #333333;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.12);
}
/* Size modifier
 ========================================================================== */
/*
 * Small
 */
.b01-card-small.b01-card-body,
.b01-card-small .b01-card-body {
  padding: 20px 20px;
}
.b01-card-small .b01-card-header {
  padding: 13px 20px;
}
.b01-card-small .b01-card-footer {
  padding: 13px 20px;
}
/*
 * Large
 */
/* Desktop and bigger */
@media (min-width: 1200px) {
  .b01-card-large.b01-card-body,
  .b01-card-large .b01-card-body {
    padding: 70px 70px;
  }
  .b01-card-large .b01-card-header {
    padding: 35px 70px;
  }
  .b01-card-large .b01-card-footer {
    padding: 35px 70px;
  }
}
/*
     * Default
     */
.b01-card-body > .b01-nav-default {
  margin-left: -30px;
  margin-right: -30px;
}
.b01-card-body > .b01-nav-default:only-child {
  margin-top: -15px;
  margin-bottom: -15px;
}
.b01-card-body > .b01-nav-default > li > a,
.b01-card-body > .b01-nav-default .b01-nav-header,
.b01-card-body > .b01-nav-default .b01-nav-divider {
  padding-left: 30px;
  padding-right: 30px;
}
.b01-card-body > .b01-nav-default .b01-nav-sub {
  padding-left: 45px;
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  .b01-card-body > .b01-nav-default {
    margin-left: -40px;
    margin-right: -40px;
  }
  .b01-card-body > .b01-nav-default:only-child {
    margin-top: -25px;
    margin-bottom: -25px;
  }
  .b01-card-body > .b01-nav-default > li > a,
  .b01-card-body > .b01-nav-default .b01-nav-header,
  .b01-card-body > .b01-nav-default .b01-nav-divider {
    padding-left: 40px;
    padding-right: 40px;
  }
  .b01-card-body > .b01-nav-default .b01-nav-sub {
    padding-left: 55px;
  }
}
/*
     * Small
     */
.b01-card-small > .b01-nav-default {
  margin-left: -20px;
  margin-right: -20px;
}
.b01-card-small > .b01-nav-default:only-child {
  margin-top: -5px;
  margin-bottom: -5px;
}
.b01-card-small > .b01-nav-default > li > a,
.b01-card-small > .b01-nav-default .b01-nav-header,
.b01-card-small > .b01-nav-default .b01-nav-divider {
  padding-left: 20px;
  padding-right: 20px;
}
.b01-card-small > .b01-nav-default .b01-nav-sub {
  padding-left: 35px;
}
/*
     * Large
     */
/* Desktop and bigger */
@media (min-width: 1200px) {
  .b01-card-large > .b01-nav-default {
    margin: 0;
  }
  .b01-card-large > .b01-nav-default:only-child {
    margin: 0;
  }
  .b01-card-large > .b01-nav-default > li > a,
  .b01-card-large > .b01-nav-default .b01-nav-header,
  .b01-card-large > .b01-nav-default .b01-nav-divider {
    padding-left: 0;
    padding-right: 0;
  }
  .b01-card-large > .b01-nav-default .b01-nav-sub {
    padding-left: 15px;
  }
}
/* ========================================================================
   Component: Close
 ========================================================================== */
/*
 * Adopts `b01-icon`
 */
.b01-close {
  color: #777;
  transition: 0.1s ease-in-out;
  transition-property: color, opacity;
}
/* Hover */
.b01-close:hover {
  color: #666;
}
/* ========================================================================
   Component: Spinner
 ========================================================================== */
/*
 * Adopts `b01-icon`
 */
/* SVG
 ========================================================================== */
.b01-spinner > * {
  animation: b01-spinner-rotate 1.4s linear infinite;
}
@keyframes b01-spinner-rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(270deg);
  }
}
/*
 * Circle
 */
.b01-spinner > * > * {
  stroke-dasharray: 88px;
  stroke-dashoffset: 0;
  transform-origin: center;
  animation: b01-spinner-dash 1.4s ease-in-out infinite;
  stroke-width: 1;
  stroke-linecap: round;
}
@keyframes b01-spinner-dash {
  0% {
    stroke-dashoffset: 88px;
  }
  50% {
    stroke-dashoffset: 22px;
    transform: rotate(135deg);
  }
  100% {
    stroke-dashoffset: 88px;
    transform: rotate(450deg);
  }
}
/* ========================================================================
   Component: Totop
 ========================================================================== */
/*
 * Addopts `b01-icon`
 */
.b01-totop {
  padding: 5px;
  color: #777;
  transition: color 0.1s ease-in-out;
}
/* Hover */
.b01-totop:hover {
  color: #666;
}
/* OnClick */
.b01-totop:active {
  color: #333;
}
/* ========================================================================
   Component: Marker
 ========================================================================== */
/*
 * Addopts `b01-icon`
 */
.b01-marker {
  padding: 5px;
  background: #333333;
  color: #fff;
  border-radius: 500px;
}
/* Hover */
.b01-marker:hover {
  color: #fff;
}
/* ========================================================================
   Component: Alert
 ========================================================================== */
.b01-alert {
  position: relative;
  margin-bottom: 20px;
  padding: 15px 29px 15px 15px;
  background: #f8f8f8;
  color: #666;
}
/* Add margin if adjacent element */
* + .b01-alert {
  margin-top: 20px;
}
/*
 * Remove margin from the last-child
 */
.b01-alert > :last-child {
  margin-bottom: 0;
}
/* Close
 * Adopts `b01-close`
 ========================================================================== */
.b01-alert-close {
  position: absolute;
  top: 20px;
  right: 15px;
  color: inherit;
  opacity: 0.4;
}
/*
 * Remove margin from adjacent element
 */
.b01-alert-close:first-child + * {
  margin-top: 0;
}
/*
 * Hover
 */
.b01-alert-close:hover {
  color: inherit;
  opacity: 0.8;
}
/* Style modifiers
 ========================================================================== */
/*
 * Primary
 */
.b01-alert-primary {
  background: #ccefff;
  color: #00b0ff;
}
/*
 * Success
 */
.b01-alert-success {
  background: #ecf6ec;
  color: #4CAF50;
}
/*
 * Warning
 */
.b01-alert-warning {
  background: #fff0c3;
  color: #d39e00;
}
/*
 * Danger
 */
.b01-alert-danger {
  background: #f7cbc0;
  color: #DD2C00;
}
/*
     * Content
     */
.b01-alert h1,
.b01-alert h2,
.b01-alert h3,
.b01-alert h4,
.b01-alert h5,
.b01-alert h6 {
  color: inherit;
}
.b01-alert a:not([class]) {
  color: inherit;
  text-decoration: underline;
}
.b01-alert a:not([class]):hover {
  color: inherit;
  text-decoration: underline;
}
/* ========================================================================
   Component: Placeholder
 ========================================================================== */
.b01-placeholder {
  margin-bottom: 20px;
  padding: 30px 30px;
  background: transparent;
  padding: 40px 30px;
  border: 2px dashed #d9d9d9;
}
/* Add margin if adjacent element */
* + .b01-placeholder {
  margin-top: 20px;
}
/*
 * Remove margin from the last-child
 */
.b01-placeholder > :last-child {
  margin-bottom: 0;
}
/* ========================================================================
   Component: Badge
 ========================================================================== */
/*
 * 1. Style
 * 2. Center child vertically and horizontally
 */
.b01-badge {
  box-sizing: border-box;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  border-radius: 6px;
  vertical-align: middle;
  /* 1 */
  background: #00b0ff;
  color: #fff !important;
  font-size: 14px;
  /* 2 */
  display: inline-flex;
  justify-content: center;
  align-items: center;
  line-height: 0;
}
/*
 * Required for `a`
 */
.b01-badge:hover {
  text-decoration: none;
}
/* ========================================================================
   Component: Label
 ========================================================================== */
.b01-label {
  display: inline-block;
  padding: 0 10px;
  background: #00b0ff;
  line-height: 1.5;
  font-size: 0.875rem;
  color: #fff;
  vertical-align: middle;
  white-space: nowrap;
  border-radius: 2px;
  text-transform: uppercase;
}
.b01-label.b01-position-bottom-left {
  border-radius: 0 4px 0 0;
}
.b01-label.b01-position-bottom-right {
  border-radius: 4px 0 0 0;
}
/* Color modifiers
 ========================================================================== */
/*
 * Success
 */
.b01-label-success {
  background-color: #4CAF50;
  color: #fff;
}
/*
 * Warning
 */
.b01-label-warning {
  background-color: #FFC107;
  color: #fff;
}
/*
 * Danger
 */
.b01-label-danger {
  background-color: #DD2C00;
  color: #fff;
}
/* ========================================================================
   Component: Overlay
 ========================================================================== */
.b01-overlay {
  padding: 30px 30px;
}
/*
 * Remove margin from the last-child
 */
.b01-overlay > :last-child {
  margin-bottom: 0;
}
/* Icon
 ========================================================================== */
/* Style modifiers
 ========================================================================== */
/*
 * Default
 */
.b01-overlay-default {
  background: rgba(255, 255, 255, 0.8);
}
/*
 * Primary
 */
.b01-overlay-primary {
  background: rgba(0, 176, 255, 0.8);
}
/* ========================================================================
   Component: Article
 ========================================================================== */
.b01-article {
  display: flow-root;
}
/*
 * Remove margin from the last-child
 */
.b01-article > :last-child {
  margin-bottom: 0;
}
/* Adjacent sibling
 ========================================================================== */
.b01-article + .b01-article {
  margin-top: 70px;
}
/* Title
 ========================================================================== */
.b01-article-title {
  font-size: 2.23125rem;
  line-height: 1.2;
}
/* Tablet landscape and bigger */
@media (min-width: 960px) {
  .b01-article-title {
    font-size: 2.625rem;
  }
}
/* Meta
 ========================================================================== */
.b01-article-meta {
  font-size: 0.875rem;
  line-height: 1.4;
  color: #777;
}
.b01-article-meta a {
  color: #777;
}
.b01-article-meta a:hover {
  color: #666;
  text-decoration: none;
}
/* ========================================================================
   Component: Comment
 ========================================================================== */
/* Sections
 ========================================================================== */
.b01-comment-body {
  display: flow-root;
  overflow-wrap: break-word;
  word-wrap: break-word;
}
.b01-comment-header {
  display: flow-root;
  margin-bottom: 20px;
}
/*
 * Remove margin from the last-child
 */
.b01-comment-body > :last-child,
.b01-comment-header > :last-child {
  margin-bottom: 0;
}
/* Title
 ========================================================================== */
.b01-comment-title {
  font-size: 1.15rem;
  line-height: 1.4;
}
/* Meta
 ========================================================================== */
.b01-comment-meta {
  font-size: 0.875rem;
  line-height: 1.4;
  color: #777;
}
/* Avatar
 ========================================================================== */
/* List
 ========================================================================== */
.b01-comment-list {
  padding: 0;
  list-style: none;
}
/* Adjacent siblings */
.b01-comment-list > :nth-child(n+2) {
  margin-top: 70px;
}
/*
 * Sublists
 * Note: General sibling selector allows reply block between comment and sublist
 */
.b01-comment-list .b01-comment ~ ul {
  margin: 70px 0 0 0;
  padding-left: 30px;
  list-style: none;
}
/* Tablet and bigger */
@media (min-width: 960px) {
  .b01-comment-list .b01-comment ~ ul {
    padding-left: 100px;
  }
}
/* Adjacent siblings */
.b01-comment-list .b01-comment ~ ul > :nth-child(n+2) {
  margin-top: 70px;
}
/* Style modifier
 ========================================================================== */
.b01-comment-primary {
  padding: 30px;
  background-color: #f8f8f8;
}
/* ========================================================================
   Component: Search
 ========================================================================== */
/*
 * 1. Container fits its content
 * 2. Create position context
 * 3. Prevent content overflow
 * 4. Reset `form`
 */
.b01-search {
  /* 1 */
  display: inline-block;
  /* 2 */
  position: relative;
  /* 3 */
  max-width: 100%;
  /* 4 */
  margin: 0;
}
/* Input
 ========================================================================== */
/*
 * Remove the inner padding and cancel buttons in Chrome on OS X and Safari on OS X.
 */
.b01-search-input::-webkit-search-cancel-button,
.b01-search-input::-webkit-search-decoration {
  -webkit-appearance: none;
}
/*
 * Removes placeholder transparency in Firefox.
 */
.b01-search-input::-moz-placeholder {
  opacity: 1;
}
/*
 * 1. Define consistent box sizing.
 * 2. Address margins set differently in Firefox/IE and Chrome/Safari/Opera.
 * 3. Remove `border-radius` in iOS.
 * 4. Change font properties to `inherit` in all browsers
 * 5. Show the overflow in Edge.
 * 6. Remove default style in iOS.
 * 7. Vertical alignment
 * 8. Take the full container width
 * 9. Style
 */
.b01-search-input {
  /* 1 */
  box-sizing: border-box;
  /* 2 */
  margin: 0;
  /* 3 */
  border-radius: 0;
  /* 4 */
  font: inherit;
  /* 5 */
  overflow: visible;
  /* 6 */
  -webkit-appearance: none;
  /* 7 */
  vertical-align: middle;
  /* 8 */
  width: 100%;
  /* 9 */
  border: none;
  color: #666;
}
.b01-search-input:focus {
  outline: none;
}
/* Placeholder */
.b01-search-input::placeholder {
  color: #777;
}
/* Icon (Adopts `b01-icon`)
 ========================================================================== */
/*
 * Position above input
 * 1. Set position
 * 2. Center icon vertically and horizontally
 * 3. Style
 */
.b01-search .b01-search-icon {
  /* 1 */
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  /* 2 */
  display: inline-flex;
  justify-content: center;
  align-items: center;
  /* 3 */
  color: #777;
}
/*
 * Required for `a`.
 */
.b01-search .b01-search-icon:hover {
  color: #777;
}
/*
 * Make `input` element clickable through icon, e.g. if it's a `span`
 */
.b01-search .b01-search-icon:not(a):not(button):not(input) {
  pointer-events: none;
}
/*
 * Position modifier
 */
.b01-search .b01-search-icon-flip {
  right: 0;
  left: auto;
}
/* Default modifier
 ========================================================================== */
.b01-search-default {
  width: 240px;
}
/*
 * Input
 */
.b01-search-default .b01-search-input {
  height: 40px;
  padding-left: 10px;
  padding-right: 10px;
  background: transparent;
  border: 1px solid #d9d9d9;
}
/* Focus */
.b01-search-default .b01-search-input:focus {
  background-color: rgba(0, 0, 0, 0);
  border-color: #00b0ff;
}
/*
 * Icon
 */
.b01-search-default .b01-search-icon {
  width: 40px;
}
.b01-search-default .b01-search-icon:not(.b01-search-icon-flip) ~ .b01-search-input {
  padding-left: 40px;
}
.b01-search-default .b01-search-icon-flip ~ .b01-search-input {
  padding-right: 40px;
}
/* Navbar modifier
 ========================================================================== */
.b01-search-navbar {
  width: 400px;
}
/*
 * Input
 */
.b01-search-navbar .b01-search-input {
  height: 40px;
  background: transparent;
  font-size: 1.3rem;
}
/* Focus */
/*
 * Icon
 */
.b01-search-navbar .b01-search-icon {
  width: 40px;
}
.b01-search-navbar .b01-search-icon:not(.b01-search-icon-flip) ~ .b01-search-input {
  padding-left: 40px;
}
.b01-search-navbar .b01-search-icon-flip ~ .b01-search-input {
  padding-right: 40px;
}
/* Large modifier
 ========================================================================== */
.b01-search-large {
  width: 500px;
}
/*
 * Input
 */
.b01-search-large .b01-search-input {
  height: 80px;
  background: transparent;
  font-size: 2.625rem;
}
/* Focus */
/*
 * Icon
 */
.b01-search-large .b01-search-icon {
  width: 80px;
}
.b01-search-large .b01-search-icon:not(.b01-search-icon-flip) ~ .b01-search-input {
  padding-left: 80px;
}
.b01-search-large .b01-search-icon-flip ~ .b01-search-input {
  padding-right: 80px;
}
/* Toggle
 ========================================================================== */
.b01-search-toggle {
  color: #777;
}
/* Hover */
.b01-search-toggle:hover {
  color: #666;
}
/* ========================================================================
   Component: Accordion
 ========================================================================== */
.b01-accordion {
  padding: 0;
  list-style: none;
}
/* Item
 ========================================================================== */
.b01-accordion > :nth-child(n+2) {
  margin-top: 20px;
}
/* Title
 ========================================================================== */
.b01-accordion-title {
  display: block;
  font-size: 1.15rem;
  line-height: 1.4;
  color: #333;
  overflow: hidden;
}
.b01-accordion-title::before {
  content: "";
  width: 1.4em;
  height: 1.4em;
  margin-left: 10px;
  float: right;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2213%22%20height%3D%2213%22%20viewBox%3D%220%200%2013%2013%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Crect%20fill%3D%22%23666%22%20width%3D%2213%22%20height%3D%221%22%20x%3D%220%22%20y%3D%226%22%20%2F%3E%0A%20%20%20%20%3Crect%20fill%3D%22%23666%22%20width%3D%221%22%20height%3D%2213%22%20x%3D%226%22%20y%3D%220%22%20%2F%3E%0A%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: 50% 50%;
}
.b01-open > .b01-accordion-title::before {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2213%22%20height%3D%2213%22%20viewBox%3D%220%200%2013%2013%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Crect%20fill%3D%22%23666%22%20width%3D%2213%22%20height%3D%221%22%20x%3D%220%22%20y%3D%226%22%20%2F%3E%0A%3C%2Fsvg%3E");
}
/* Hover */
.b01-accordion-title:hover {
  color: #666;
  text-decoration: none;
}
/* Content
 ========================================================================== */
.b01-accordion-content {
  display: flow-root;
  margin-top: 20px;
}
/*
 * Remove margin from the last-child
 */
.b01-accordion-content > :last-child {
  margin-bottom: 0;
}
/* ========================================================================
   Component: Drop
 ========================================================================== */
/*
 * 1. Hide by default
 * 2. Set position
 * 3. Set a default width
 */
.b01-drop {
  /* 1 */
  display: none;
  /* 2 */
  position: absolute;
  z-index: 1020;
  --b01-position-offset: 20px;
  /* 3 */
  box-sizing: border-box;
  width: 300px;
  max-width: 100vw;
}
/* Show */
.b01-drop.b01-open {
  display: block;
}
/* Grid modifiers
 ========================================================================== */
.b01-drop-stack .b01-drop-grid > * {
  width: 100% !important;
}
/* ========================================================================
   Component: Dropdown
 ========================================================================== */
/*
 * 1. Hide by default
 * 2. Set position
 * 3. Set a default width
 * 4. Style
 */
.b01-dropdown {
  /* 1 */
  display: none;
  /* 2 */
  position: absolute;
  z-index: 1020;
  --b01-position-offset: 10px;
  /* 3 */
  box-sizing: border-box;
  min-width: 200px;
  max-width: 100vw;
  /* 4 */
  padding: 25px;
  background: #fff;
  color: #666;
  box-shadow: 0 5px 12px rgba(0, 0, 0, 0.15);
}
/* Show */
.b01-dropdown.b01-open {
  display: block;
}
/* Nav
 * Adopts `b01-nav`
 ========================================================================== */
.b01-dropdown-nav {
  white-space: nowrap;
  font-size: 0.875rem;
}
/*
 * Items
 */
.b01-dropdown-nav > li > a {
  color: #777;
}
/* Hover + Active */
.b01-dropdown-nav > li > a:hover,
.b01-dropdown-nav > li.b01-active > a {
  color: #666;
}
/*
 * Header
 */
.b01-dropdown-nav .b01-nav-header {
  color: #333;
}
/*
 * Divider
 */
.b01-dropdown-nav .b01-nav-divider {
  border-top: 1px solid #d9d9d9;
}
/*
 * Sublists
 */
.b01-dropdown-nav .b01-nav-sub a {
  color: #777;
}
.b01-dropdown-nav .b01-nav-sub a:hover,
.b01-dropdown-nav .b01-nav-sub li.b01-active > a {
  color: #666;
}
/* Grid modifiers
 ========================================================================== */
.b01-dropdown-stack .b01-dropdown-grid > * {
  width: 100% !important;
}
/* ========================================================================
   Component: Modal
 ========================================================================== */
/*
 * 1. Hide by default
 * 2. Set position
 * 3. Allow scrolling for the modal dialog
 * 4. Horizontal padding
 * 5. Mask the background page
 * 6. Fade-in transition
 */
.b01-modal {
  /* 1 */
  display: none;
  /* 2 */
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1010;
  /* 3 */
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  /* 4 */
  padding: 15px 15px;
  /* 5 */
  background: rgba(0, 0, 0, 0.6);
  /* 6 */
  opacity: 0;
  transition: opacity 0.15s linear;
}
/* Phone landscape and bigger */
@media (min-width: 640px) {
  .b01-modal {
    padding: 50px 30px;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 960px) {
  .b01-modal {
    padding-left: 40px;
    padding-right: 40px;
  }
}
/*
 * Open
 */
.b01-modal.b01-open {
  opacity: 1;
}
/* Page
 ========================================================================== */
/*
 * Prevent scrollbars
 */
.b01-modal-page {
  overflow: hidden;
}
/* Dialog
 ========================================================================== */
/*
 * 1. Create position context for spinner and close button
 * 2. Dimensions
 * 3. `!important` is needed to overwrite `b01-width-auto`. See `#modal-media-image` in tests
 * 4. Style
 * 5. Slide-in transition
 */
.b01-modal-dialog {
  /* 1 */
  position: relative;
  /* 2 */
  box-sizing: border-box;
  margin: 0 auto;
  width: 600px;
  /* 3 */
  max-width: 100% !important;
  /* 4 */
  background: #fff;
  /* 5 */
  opacity: 0;
  transform: translateY(-100px);
  transition: 0.3s linear;
  transition-property: opacity, transform;
}
/*
 * Open
 */
.b01-open > .b01-modal-dialog {
  opacity: 1;
  transform: translateY(0);
}
/* Size modifier
 ========================================================================== */
/*
 * Container size
 * Take the same size as the Container component
 */
.b01-modal-container .b01-modal-dialog {
  width: 1200px;
}
/*
 * Full size
 * 1. Remove padding and background from modal
 * 2. Reset all default declarations from modal dialog
 */
/* 1 */
.b01-modal-full {
  padding: 0;
  background: none;
}
/* 2 */
.b01-modal-full .b01-modal-dialog {
  margin: 0;
  width: 100%;
  max-width: 100%;
  transform: translateY(0);
}
/* Sections
 ========================================================================== */
.b01-modal-body {
  display: flow-root;
  padding: 30px 30px;
}
.b01-modal-header {
  display: flow-root;
  padding: 15px 30px;
  background: #fff;
  border-bottom: 1px solid #d9d9d9;
}
.b01-modal-footer {
  display: flow-root;
  padding: 15px 30px;
  background: #fff;
  border-top: 1px solid #d9d9d9;
}
/*
 * Remove margin from the last-child
 */
.b01-modal-body > :last-child,
.b01-modal-header > :last-child,
.b01-modal-footer > :last-child {
  margin-bottom: 0;
}
/* Title
 ========================================================================== */
.b01-modal-title {
  font-size: 1.3rem;
  line-height: 1.3;
}
/* Close
 * Adopts `b01-close`
 ========================================================================== */
[class*='b01-modal-close-'] {
  position: absolute;
  z-index: 1010;
  top: 10px;
  right: 10px;
  padding: 5px;
}
/*
 * Remove margin from adjacent element
 */
[class*='b01-modal-close-']:first-child + * {
  margin-top: 0;
}
/*
 * Hover
 */
/*
 * Default
 */
/*
 * Outside
 * 1. Prevent scrollbar on small devices
 */
.b01-modal-close-outside {
  top: 0;
  /* 1 */
  right: -5px;
  transform: translate(0, -100%);
  color: #ffffff;
}
.b01-modal-close-outside:hover {
  color: #fff;
}
/* Tablet landscape and bigger */
@media (min-width: 960px) {
  /* 1 */
  .b01-modal-close-outside {
    right: 0;
    transform: translate(100%, -100%);
  }
}
/*
 * Full
 */
.b01-modal-close-full {
  top: 0;
  right: 0;
  padding: 20px;
  background: #fff;
}
/* ========================================================================
   Component: Slideshow
 ========================================================================== */
/*
 * 1. Prevent tab highlighting on iOS.
 */
.b01-slideshow {
  /* 1 */
  -webkit-tap-highlight-color: transparent;
}
/* Items
 ========================================================================== */
/*
 * 1. Create position and stacking context
 * 2. Reset list
 * 3. Clip child elements
 * 4. Prevent displaying the callout information on iOS.
 * 5. Disable horizontal panning gestures
 */
.b01-slideshow-items {
  /* 1 */
  position: relative;
  z-index: 0;
  /* 2 */
  margin: 0;
  padding: 0;
  list-style: none;
  /* 3 */
  overflow: hidden;
  /* 4 */
  -webkit-touch-callout: none;
  /* 5 */
  touch-action: pan-y;
}
/* Item
 ========================================================================== */
/*
 * 1. Position items above each other
 * 2. Take the full width
 * 3. Clip child elements, e.g. for `b01-cover`
 * 4. Optimize animation
 */
.b01-slideshow-items > * {
  /* 1 */
  position: absolute;
  top: 0;
  left: 0;
  /* 2 */
  right: 0;
  bottom: 0;
  /* 3 */
  overflow: hidden;
  /* 4 */
  will-change: transform, opacity;
}
/*
 * Hide not active items
 */
.b01-slideshow-items > :not(.b01-active) {
  display: none;
}
/* ========================================================================
   Component: Slider
 ========================================================================== */
/*
 * 1. Prevent tab highlighting on iOS.
 */
.b01-slider {
  /* 1 */
  -webkit-tap-highlight-color: transparent;
}
/* Container
 ========================================================================== */
/*
 * Clip child elements
 */
.b01-slider-container {
  overflow: hidden;
}
/*
 * Widen container to prevent box-shadows from clipping, `large-box-shadow`
 */
.b01-slider-container-offset {
  margin: -11px 0px -39px 0px;
  padding: 11px 0px 39px 0px;
}
/* Items
 ========================================================================== */
/*
 * 1. Optimize animation
 * 2. Create a containing block. In Safari it's neither created by `transform` nor `will-change`.
 * 3. Disable horizontal panning gestures
 */
.b01-slider-items {
  /* 1 */
  will-change: transform;
  /* 2 */
  position: relative;
  /* 3 */
  touch-action: pan-y;
}
/*
 * 1. Reset list style without interfering with grid
 * 2. Prevent displaying the callout information on iOS.
 */
.b01-slider-items:not(.b01-grid) {
  display: flex;
  /* 1 */
  margin: 0;
  padding: 0;
  list-style: none;
  /* 2 */
  -webkit-touch-callout: none;
}
.b01-slider-items.b01-grid {
  flex-wrap: nowrap;
}
/* Item
 ========================================================================== */
/*
 * 1. Let items take content dimensions (0 0 auto)
 *    `max-width` needed to keep image responsiveness and prevent content overflow
 * 3. Create position context
 */
.b01-slider-items > * {
  /* 1 */
  flex: none;
  max-width: 100%;
  /* 3 */
  position: relative;
}
/* ========================================================================
   Component: Sticky
 ========================================================================== */
/*
 * Create position context so it's t the same like when fixed.
 */
.b01-sticky {
  position: relative;
}
/*
 * 1. Force new layer to resolve frame rate issues on devices with lower frame rates
 */
.b01-sticky-fixed {
  z-index: 980;
  box-sizing: border-box;
  margin: 0 !important;
  /* 1 */
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
/*
 * Faster animations
 */
.b01-sticky[class*='b01-animation-'] {
  animation-duration: 0.2s;
}
.b01-sticky.b01-animation-reverse {
  animation-duration: 0.2s;
}
/* ========================================================================
   Component: Off-canvas
 ========================================================================== */
/*
 * 1. Hide by default
 * 2. Set position
 */
.b01-offcanvas {
  /* 1 */
  display: none;
  /* 2 */
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  z-index: 1000;
}
/*
 * Flip modifier
 */
.b01-offcanvas-flip .b01-offcanvas {
  right: 0;
  left: auto;
}
/* Bar
 ========================================================================== */
/*
 * 1. Set position
 * 2. Size and style
 * 3. Allow scrolling
 */
.b01-offcanvas-bar {
  /* 1 */
  position: absolute;
  top: 0;
  bottom: 0;
  left: -270px;
  /* 2 */
  box-sizing: border-box;
  width: 270px;
  padding: 20px 20px;
  background: #333333;
  /* 3 */
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}
/* Tablet landscape and bigger */
@media (min-width: 960px) {
  .b01-offcanvas-bar {
    left: -350px;
    width: 350px;
    padding: 40px 40px;
  }
}
/* Flip modifier */
.b01-offcanvas-flip .b01-offcanvas-bar {
  left: auto;
  right: -270px;
}
/* Tablet landscape and bigger */
@media (min-width: 960px) {
  .b01-offcanvas-flip .b01-offcanvas-bar {
    right: -350px;
  }
}
/*
 * Open
 */
.b01-open > .b01-offcanvas-bar {
  left: 0;
}
.b01-offcanvas-flip .b01-open > .b01-offcanvas-bar {
  left: auto;
  right: 0;
}
/*
 * Slide Animation (Used in slide and push mode)
 */
.b01-offcanvas-bar-animation {
  transition: left 0.3s ease-out;
}
.b01-offcanvas-flip .b01-offcanvas-bar-animation {
  transition-property: right;
}
/*
 * Reveal Animation
 * 1. Set position
 * 2. Clip the bar
 * 3. Animation
 * 4. Reset position
 */
.b01-offcanvas-reveal {
  /* 1 */
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  /* 2 */
  width: 0;
  overflow: hidden;
  /* 3 */
  transition: width 0.3s ease-out;
}
.b01-offcanvas-reveal .b01-offcanvas-bar {
  /* 4 */
  left: 0;
}
.b01-offcanvas-flip .b01-offcanvas-reveal .b01-offcanvas-bar {
  /* 4 */
  left: auto;
  right: 0;
}
.b01-open > .b01-offcanvas-reveal {
  width: 270px;
}
/* Tablet landscape and bigger */
@media (min-width: 960px) {
  .b01-open > .b01-offcanvas-reveal {
    width: 350px;
  }
}
/*
 * Flip modifier
 */
.b01-offcanvas-flip .b01-offcanvas-reveal {
  right: 0;
  left: auto;
}
/* Close
 * Adopts `b01-close`
 ========================================================================== */
.b01-offcanvas-close {
  position: absolute;
  z-index: 1000;
  top: 5px;
  right: 5px;
  padding: 5px;
}
/* Tablet landscape and bigger */
@media (min-width: 960px) {
  .b01-offcanvas-close {
    top: 20px;
    right: 20px;
  }
}
/*
 * Remove margin from adjacent element
 */
.b01-offcanvas-close:first-child + * {
  margin-top: 0;
}
/* Overlay
 ========================================================================== */
/*
 * Overlay the whole page. Needed for the `::before`
 * 1. Using `100vw` so no modification is needed when off-canvas is flipped
 * 2. Allow for closing with swipe gesture on devices with pointer events.
 */
.b01-offcanvas-overlay {
  /* 1 */
  width: 100vw;
  /* 2 */
  touch-action: none;
}
/*
 * 1. Mask the whole page
 * 2. Fade-in transition
 */
.b01-offcanvas-overlay::before {
  /* 1 */
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(0, 0, 0, 0.1);
  /* 2 */
  opacity: 0;
  transition: opacity 0.15s linear;
}
.b01-offcanvas-overlay.b01-open::before {
  opacity: 1;
}
/* Prevent scrolling
 ========================================================================== */
/*
 * Prevent horizontal scrollbar when the content is slide-out
 * Has to be on the `html` element too to make it work on the `body`
 */
.b01-offcanvas-page,
.b01-offcanvas-container {
  overflow-x: hidden;
}
/* Container
 ========================================================================== */
/*
 * Prepare slide-out animation (Used in reveal and push mode)
 * Using `position: left` instead of `transform` because position `fixed` elements like sticky navbars
 * lose their fixed state and behaves like `absolute` within a transformed container
 * 1. Provide a fixed width and prevent shrinking
 */
.b01-offcanvas-container {
  position: relative;
  left: 0;
  transition: left 0.3s ease-out;
  /* 1 */
  box-sizing: border-box;
  width: 100%;
}
/*
 * Activate slide-out animation
 */
:not(.b01-offcanvas-flip).b01-offcanvas-container-animation {
  left: 270px;
}
.b01-offcanvas-flip.b01-offcanvas-container-animation {
  left: -270px;
}
/* Tablet landscape and bigger */
@media (min-width: 960px) {
  :not(.b01-offcanvas-flip).b01-offcanvas-container-animation {
    left: 350px;
  }
  .b01-offcanvas-flip.b01-offcanvas-container-animation {
    left: -350px;
  }
}
/* ========================================================================
   Component: Switcher
 ========================================================================== */
/*
 * Reset list
 */
.b01-switcher {
  margin: 0;
  padding: 0;
  list-style: none;
}
/* Items
 ========================================================================== */
/*
 * Hide not active items
 */
.b01-switcher > :not(.b01-active) {
  display: none;
}
/*
 * Remove margin from the last-child
 */
.b01-switcher > * > :last-child {
  margin-bottom: 0;
}
/* ========================================================================
   Component: Leader
 ========================================================================== */
.b01-leader {
  overflow: hidden;
}
/*
 * 1. Place element in text flow
 * 2. Never break into a new line
 * 3. Get a string back with as many repeating characters to fill the container
 * 4. Prevent wrapping. Overflowing characters will be clipped by the container
 */
.b01-leader-fill::after {
  /* 1 */
  display: inline-block;
  margin-left: 15px;
  /* 2 */
  width: 0;
  /* 3 */
  content: attr(data-fill);
  /* 4 */
  white-space: nowrap;
  color: #919191;
}
/*
 * Hide if media does not match
 */
.b01-leader-fill.b01-leader-hide::after {
  display: none;
}
/*
 * Pass fill character to JS
 */
:root {
  --b01-leader-fill-content: '.';
}
/* ========================================================================
   Component: Notification
 ========================================================================== */
/*
 * 1. Set position
 * 2. Dimensions
 */
.b01-notification {
  /* 1 */
  position: fixed;
  top: 10px;
  left: 10px;
  z-index: 1040;
  /* 2 */
  box-sizing: border-box;
  width: 350px;
}
/* Position modifiers
========================================================================== */
.b01-notification-top-right,
.b01-notification-bottom-right {
  left: auto;
  right: 10px;
}
.b01-notification-top-center,
.b01-notification-bottom-center {
  left: 50%;
  margin-left: -175px;
}
.b01-notification-bottom-left,
.b01-notification-bottom-right,
.b01-notification-bottom-center {
  top: auto;
  bottom: 10px;
}
/* Responsiveness
========================================================================== */
/* Phones portrait and smaller */
@media (max-width: 639px) {
  .b01-notification {
    left: 10px;
    right: 10px;
    width: auto;
    margin: 0;
  }
}
/* Message
========================================================================== */
.b01-notification-message {
  position: relative;
  padding: 15px;
  background: #f8f8f8;
  color: #666;
  font-size: 1.15rem;
  line-height: 1.4;
  cursor: pointer;
  border: 1px solid #000;
  border-radius: 5px;
}
* + .b01-notification-message {
  margin-top: 10px;
}
/* Close
 * Adopts `b01-close`
 ========================================================================== */
.b01-notification-close {
  display: none;
  position: absolute;
  top: 20px;
  right: 15px;
}
.b01-notification-message:hover .b01-notification-close {
  display: block;
}
/* Style modifiers
 ========================================================================== */
/*
 * Primary
 */
.b01-notification-message-primary {
  color: #00b0ff;
}
/*
 * Success
 */
.b01-notification-message-success {
  color: #4CAF50;
  border-color: #d9eeda;
  background-color: #eaf6eb;
}
/*
 * Warning
 */
.b01-notification-message-warning {
  color: #FFC107;
  border-color: #fff4d3;
  background-color: #fffaec;
}
/*
 * Danger
 */
.b01-notification-message-danger {
  color: #DD2C00;
  border-color: #ffbbaa;
  background-color: #ffcfc3;
}
/* ========================================================================
   Component: Tooltip
 ========================================================================== */
/*
 * 1. Hide by default
 * 2. Position
 * 3. Remove tooltip from document flow to keep the UIkit container from changing its size when injected into the document initially
 * 4. Dimensions
 * 5. Style
 */
.b01-tooltip {
  /* 1 */
  display: none;
  /* 2 */
  position: absolute;
  z-index: 1030;
  --b01-position-offset: 10px;
  /* 3 */
  top: 0;
  /* 4 */
  box-sizing: border-box;
  max-width: 280px;
  padding: 6px 10px;
  /* 5 */
  background: #002333;
  border-radius: 4px;
  color: #fff;
  font-size: 13px;
}
/* Show */
.b01-tooltip.b01-active {
  display: block;
}
/* ========================================================================
   Component: Sortable
 ========================================================================== */
.b01-sortable {
  position: relative;
}
/*
 * Remove margin from the last-child
 */
.b01-sortable > :last-child {
  margin-bottom: 0;
}
/* Drag
 ========================================================================== */
.b01-sortable-drag {
  position: fixed !important;
  z-index: 1050 !important;
  pointer-events: none;
}
/* Placeholder
 ========================================================================== */
.b01-sortable-placeholder {
  opacity: 0;
  pointer-events: none;
}
/* Empty modifier
 ========================================================================== */
.b01-sortable-empty {
  min-height: 50px;
}
/* Handle
 ========================================================================== */
/* Hover */
.b01-sortable-handle:hover {
  cursor: move;
}
/* ========================================================================
   Component: Countdown
 ========================================================================== */
/* Item
 ========================================================================== */
/* Number
 ========================================================================== */
/*
 * 1. Make numbers all of the same size to prevent jumping. Must be supported by the font.
 * 2. Style
 */
.b01-countdown-number {
  /* 1 */
  font-variant-numeric: tabular-nums;
  /* 2 */
  font-size: 2rem;
  line-height: 0.8;
}
/* Phone landscape and bigger */
@media (min-width: 640px) {
  .b01-countdown-number {
    font-size: 4rem;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 960px) {
  .b01-countdown-number {
    font-size: 6rem;
  }
}
/* Separator
 ========================================================================== */
.b01-countdown-separator {
  font-size: 1rem;
  line-height: 1.6;
}
/* Phone landscape and bigger */
@media (min-width: 640px) {
  .b01-countdown-separator {
    font-size: 2rem;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 960px) {
  .b01-countdown-separator {
    font-size: 3rem;
  }
}
/* Label
 ========================================================================== */
/* ========================================================================
   Component: Grid
 ========================================================================== */
/*
 * 1. Allow cells to wrap into the next line
 * 2. Reset list
 */
.b01-grid {
  display: flex;
  /* 1 */
  flex-wrap: wrap;
  /* 2 */
  margin: 0;
  padding: 0;
  list-style: none;
}
/*
 * Grid cell
 * Note: Space is allocated solely based on content dimensions, but shrinks: 0 1 auto
 * Reset margin for e.g. paragraphs
 */
.b01-grid > * {
  margin: 0;
}
/*
 * Remove margin from the last-child
 */
.b01-grid > * > :last-child {
  margin-bottom: 0;
}
/* Gutter
 ========================================================================== */
/*
 * Default
 */
/* Horizontal */
.b01-grid {
  margin-left: -30px;
}
.b01-grid > * {
  padding-left: 30px;
}
/* Vertical */
.b01-grid + .b01-grid,
.b01-grid > .b01-grid-margin,
* + .b01-grid-margin {
  margin-top: 30px;
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  /* Horizontal */
  .b01-grid {
    margin-left: -40px;
  }
  .b01-grid > * {
    padding-left: 40px;
  }
  /* Vertical */
  .b01-grid + .b01-grid,
  .b01-grid > .b01-grid-margin,
  * + .b01-grid-margin {
    margin-top: 40px;
  }
}
/*
 * Small
 */
/* Horizontal */
.b01-grid-small,
.b01-grid-column-small {
  margin-left: -15px;
}
.b01-grid-small > *,
.b01-grid-column-small > * {
  padding-left: 15px;
}
/* Vertical */
.b01-grid + .b01-grid-small,
.b01-grid + .b01-grid-row-small,
.b01-grid-small > .b01-grid-margin,
.b01-grid-row-small > .b01-grid-margin,
* + .b01-grid-margin-small {
  margin-top: 15px;
}
/*
 * Medium
 */
/* Horizontal */
.b01-grid-medium,
.b01-grid-column-medium {
  margin-left: -30px;
}
.b01-grid-medium > *,
.b01-grid-column-medium > * {
  padding-left: 30px;
}
/* Vertical */
.b01-grid + .b01-grid-medium,
.b01-grid + .b01-grid-row-medium,
.b01-grid-medium > .b01-grid-margin,
.b01-grid-row-medium > .b01-grid-margin,
* + .b01-grid-margin-medium {
  margin-top: 30px;
}
/*
 * Large
 */
/* Horizontal */
.b01-grid-large,
.b01-grid-column-large {
  margin-left: -40px;
}
.b01-grid-large > *,
.b01-grid-column-large > * {
  padding-left: 40px;
}
/* Vertical */
.b01-grid + .b01-grid-large,
.b01-grid + .b01-grid-row-large,
.b01-grid-large > .b01-grid-margin,
.b01-grid-row-large > .b01-grid-margin,
* + .b01-grid-margin-large {
  margin-top: 40px;
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  /* Horizontal */
  .b01-grid-large,
  .b01-grid-column-large {
    margin-left: -70px;
  }
  .b01-grid-large > *,
  .b01-grid-column-large > * {
    padding-left: 70px;
  }
  /* Vertical */
  .b01-grid + .b01-grid-large,
  .b01-grid + .b01-grid-row-large,
  .b01-grid-large > .b01-grid-margin,
  .b01-grid-row-large > .b01-grid-margin,
  * + .b01-grid-margin-large {
    margin-top: 70px;
  }
}
/*
 * Collapse
 */
/* Horizontal */
.b01-grid-collapse,
.b01-grid-column-collapse {
  margin-left: 0;
}
.b01-grid-collapse > *,
.b01-grid-column-collapse > * {
  padding-left: 0;
}
/* Vertical */
.b01-grid + .b01-grid-collapse,
.b01-grid + .b01-grid-row-collapse,
.b01-grid-collapse > .b01-grid-margin,
.b01-grid-row-collapse > .b01-grid-margin {
  margin-top: 0;
}
/* Divider
 ========================================================================== */
.b01-grid-divider > * {
  position: relative;
}
.b01-grid-divider > :not(.b01-first-column)::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  border-left: 1px solid #d9d9d9;
}
/* Vertical */
.b01-grid-divider.b01-grid-stack > .b01-grid-margin::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  border-top: 1px solid #d9d9d9;
}
/*
 * Default
 */
/* Horizontal */
.b01-grid-divider {
  margin-left: -60px;
}
.b01-grid-divider > * {
  padding-left: 60px;
}
.b01-grid-divider > :not(.b01-first-column)::before {
  left: 30px;
}
/* Vertical */
.b01-grid-divider.b01-grid-stack > .b01-grid-margin {
  margin-top: 60px;
}
.b01-grid-divider.b01-grid-stack > .b01-grid-margin::before {
  top: -30px;
  left: 60px;
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  /* Horizontal */
  .b01-grid-divider {
    margin-left: -80px;
  }
  .b01-grid-divider > * {
    padding-left: 80px;
  }
  .b01-grid-divider > :not(.b01-first-column)::before {
    left: 40px;
  }
  /* Vertical */
  .b01-grid-divider.b01-grid-stack > .b01-grid-margin {
    margin-top: 80px;
  }
  .b01-grid-divider.b01-grid-stack > .b01-grid-margin::before {
    top: -40px;
    left: 80px;
  }
}
/*
 * Small
 */
/* Horizontal */
.b01-grid-divider.b01-grid-small,
.b01-grid-divider.b01-grid-column-small {
  margin-left: -30px;
}
.b01-grid-divider.b01-grid-small > *,
.b01-grid-divider.b01-grid-column-small > * {
  padding-left: 30px;
}
.b01-grid-divider.b01-grid-small > :not(.b01-first-column)::before,
.b01-grid-divider.b01-grid-column-small > :not(.b01-first-column)::before {
  left: 15px;
}
/* Vertical */
.b01-grid-divider.b01-grid-small.b01-grid-stack > .b01-grid-margin,
.b01-grid-divider.b01-grid-row-small.b01-grid-stack > .b01-grid-margin {
  margin-top: 30px;
}
.b01-grid-divider.b01-grid-small.b01-grid-stack > .b01-grid-margin::before {
  top: -15px;
  left: 30px;
}
.b01-grid-divider.b01-grid-row-small.b01-grid-stack > .b01-grid-margin::before {
  top: -15px;
}
.b01-grid-divider.b01-grid-column-small.b01-grid-stack > .b01-grid-margin::before {
  left: 30px;
}
/*
 * Medium
 */
/* Horizontal */
.b01-grid-divider.b01-grid-medium,
.b01-grid-divider.b01-grid-column-medium {
  margin-left: -60px;
}
.b01-grid-divider.b01-grid-medium > *,
.b01-grid-divider.b01-grid-column-medium > * {
  padding-left: 60px;
}
.b01-grid-divider.b01-grid-medium > :not(.b01-first-column)::before,
.b01-grid-divider.b01-grid-column-medium > :not(.b01-first-column)::before {
  left: 30px;
}
/* Vertical */
.b01-grid-divider.b01-grid-medium.b01-grid-stack > .b01-grid-margin,
.b01-grid-divider.b01-grid-row-medium.b01-grid-stack > .b01-grid-margin {
  margin-top: 60px;
}
.b01-grid-divider.b01-grid-medium.b01-grid-stack > .b01-grid-margin::before {
  top: -30px;
  left: 60px;
}
.b01-grid-divider.b01-grid-row-medium.b01-grid-stack > .b01-grid-margin::before {
  top: -30px;
}
.b01-grid-divider.b01-grid-column-medium.b01-grid-stack > .b01-grid-margin::before {
  left: 60px;
}
/*
 * Large
 */
/* Horizontal */
.b01-grid-divider.b01-grid-large,
.b01-grid-divider.b01-grid-column-large {
  margin-left: -80px;
}
.b01-grid-divider.b01-grid-large > *,
.b01-grid-divider.b01-grid-column-large > * {
  padding-left: 80px;
}
.b01-grid-divider.b01-grid-large > :not(.b01-first-column)::before,
.b01-grid-divider.b01-grid-column-large > :not(.b01-first-column)::before {
  left: 40px;
}
/* Vertical */
.b01-grid-divider.b01-grid-large.b01-grid-stack > .b01-grid-margin,
.b01-grid-divider.b01-grid-row-large.b01-grid-stack > .b01-grid-margin {
  margin-top: 80px;
}
.b01-grid-divider.b01-grid-large.b01-grid-stack > .b01-grid-margin::before {
  top: -40px;
  left: 80px;
}
.b01-grid-divider.b01-grid-row-large.b01-grid-stack > .b01-grid-margin::before {
  top: -40px;
}
.b01-grid-divider.b01-grid-column-large.b01-grid-stack > .b01-grid-margin::before {
  left: 80px;
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  /* Horizontal */
  .b01-grid-divider.b01-grid-large,
  .b01-grid-divider.b01-grid-column-large {
    margin-left: -140px;
  }
  .b01-grid-divider.b01-grid-large > *,
  .b01-grid-divider.b01-grid-column-large > * {
    padding-left: 140px;
  }
  .b01-grid-divider.b01-grid-large > :not(.b01-first-column)::before,
  .b01-grid-divider.b01-grid-column-large > :not(.b01-first-column)::before {
    left: 70px;
  }
  /* Vertical */
  .b01-grid-divider.b01-grid-large.b01-grid-stack > .b01-grid-margin,
  .b01-grid-divider.b01-grid-row-large.b01-grid-stack > .b01-grid-margin {
    margin-top: 140px;
  }
  .b01-grid-divider.b01-grid-large.b01-grid-stack > .b01-grid-margin::before {
    top: -70px;
    left: 140px;
  }
  .b01-grid-divider.b01-grid-row-large.b01-grid-stack > .b01-grid-margin::before {
    top: -70px;
  }
  .b01-grid-divider.b01-grid-column-large.b01-grid-stack > .b01-grid-margin::before {
    left: 140px;
  }
}
/* Match child of a grid cell
 ========================================================================== */
/*
 * Behave like a block element
 * 1. Wrap into the next line
 * 2. Take the full width, at least 100%. Only if no class from the Width component is set.
 * 3. Expand width even if larger than 100%, e.g. because of negative margin (Needed for nested grids)
 */
.b01-grid-match > *,
.b01-grid-item-match {
  display: flex;
  /* 1 */
  flex-wrap: wrap;
}
.b01-grid-match > * > :not([class*='b01-width']),
.b01-grid-item-match > :not([class*='b01-width']) {
  /* 2 */
  box-sizing: border-box;
  width: 100%;
  /* 3 */
  flex: auto;
}
/* ========================================================================
   Component: Nav
 ========================================================================== */
/*
 * Reset
 */
.b01-nav,
.b01-nav ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
/*
* 1. Center content vertically, e.g. an icon
* 2. Imitate white space gap when using flexbox
* 3. Reset link
 */
.b01-nav li > a {
  /* 1 */
  display: flex;
  align-items: center;
  /* 2 */
  column-gap: 0.25em;
  /* 3*/
  text-decoration: none;
}
/*
 * Items
 * Must target `a` elements to exclude other elements (e.g. lists)
 */
.b01-nav > li > a {
  padding: 5px 0;
}
/* Sublists
 ========================================================================== */
/*
 * Level 2
 * `ul` needed for higher specificity to override padding
 */
ul.b01-nav-sub {
  padding: 5px 0 5px 15px;
}
/*
 * Level 3 and deeper
 */
.b01-nav-sub ul {
  padding-left: 15px;
}
/*
 * Items
 */
.b01-nav-sub a {
  padding: 2px 0;
}
/* Parent icon modifier
 ========================================================================== */
.b01-nav-parent-icon > .b01-parent > a::after {
  content: "";
  width: 1.5em;
  height: 1.5em;
  margin-left: auto;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolyline%20fill%3D%22none%22%20stroke%3D%22%23666%22%20stroke-width%3D%221.1%22%20points%3D%2210%201%204%207%2010%2013%22%20%2F%3E%0A%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: 50% 50%;
}
.b01-nav-parent-icon > .b01-parent.b01-open > a::after {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolyline%20fill%3D%22none%22%20stroke%3D%22%23666%22%20stroke-width%3D%221.1%22%20points%3D%221%204%207%2010%2013%204%22%20%2F%3E%0A%3C%2Fsvg%3E");
}
/* Header
 ========================================================================== */
.b01-nav-header {
  padding: 5px 0;
  text-transform: uppercase;
  font-size: 0.875rem;
}
.b01-nav-header:not(:first-child) {
  margin-top: 20px;
}
/* Divider
 ========================================================================== */
.b01-nav .b01-nav-divider {
  margin: 5px 0;
}
/* Default modifier
 ========================================================================== */
.b01-nav-default {
  font-size: 0.875rem;
}
/*
 * Items
 */
.b01-nav-default > li > a {
  color: #777;
}
/* Hover */
.b01-nav-default > li > a:hover {
  color: #666;
}
/* Active */
.b01-nav-default > li.b01-active > a {
  color: #00b0ff;
  font-weight: 600;
}
/*
 * Header
 */
.b01-nav-default .b01-nav-header {
  color: #333;
}
/*
 * Divider
 */
.b01-nav-default .b01-nav-divider {
  border-top: 1px solid #d9d9d9;
}
/*
 * Sublists
 */
.b01-nav-default .b01-nav-sub a {
  color: #777;
}
.b01-nav-default .b01-nav-sub a:hover {
  color: #666;
}
.b01-nav-default .b01-nav-sub li.b01-active > a {
  color: #333;
}
/* Primary modifier
 ========================================================================== */
/*
 * Items
 */
.b01-nav-primary > li > a {
  font-size: 1.3rem;
  line-height: 1.5;
  color: #777;
}
/* Hover */
.b01-nav-primary > li > a:hover {
  color: #666;
}
/* Active */
.b01-nav-primary > li.b01-active > a {
  color: #333;
}
/*
 * Header
 */
.b01-nav-primary .b01-nav-header {
  color: #333;
}
/*
 * Divider
 */
.b01-nav-primary .b01-nav-divider {
  border-top: 1px solid #d9d9d9;
}
/*
 * Sublists
 */
.b01-nav-primary .b01-nav-sub a {
  color: #777;
}
.b01-nav-primary .b01-nav-sub a:hover {
  color: #666;
}
.b01-nav-primary .b01-nav-sub li.b01-active > a {
  color: #333;
}
/* Alignment modifier
 ========================================================================== */
/*
 * 1. Center header
 * 2. Center items
 */
/* 1 */
.b01-nav-center {
  text-align: center;
}
/* 2 */
.b01-nav-center li > a {
  justify-content: center;
}
/* Sublists */
.b01-nav-center .b01-nav-sub,
.b01-nav-center .b01-nav-sub ul {
  padding-left: 0;
}
/* Parent icon modifier  */
.b01-nav-center.b01-nav-parent-icon > .b01-parent > a::after {
  margin-left: 0;
}
/* Style modifier
 ========================================================================== */
.b01-nav.b01-nav-divider > :not(.b01-nav-divider) + :not(.b01-nav-header, .b01-nav-divider) {
  margin-top: 0;
  padding-top: 0;
  border-top: 1px solid #d9d9d9;
}
/* ========================================================================
   Component: Navbar
 ========================================================================== */
/*
 * 1. Create position context to center navbar group
 */
.b01-navbar {
  display: flex;
  /* 1 */
  position: relative;
}
/* Container
 ========================================================================== */
.b01-navbar-container:not(.b01-navbar-transparent) {
  background: #f8f8f8;
}
/* Groups
 ========================================================================== */
/*
 * 1. Align navs and items vertically if they have a different height
 * 2. Note: IE 11 requires an extra `div` which affects the center selector
 */
.b01-navbar-left,
.b01-navbar-right,
.b01-navbar-center,
.b01-navbar-center-left > *,
.b01-navbar-center-right > * {
  display: flex;
  /* 1 */
  align-items: center;
}
/*
 * Horizontal alignment
 * 1. Create position context for centered navbar with sub groups (left/right)
 * 2. Fix text wrapping if content is larger than 50% of the container.
 * 3. Needed for dropdowns because a new position context is created
 *    `z-index` must be smaller than off-canvas
 * 4. Align sub groups for centered navbar
 */
.b01-navbar-right {
  margin-left: auto;
}
.b01-navbar-center:only-child {
  margin-left: auto;
  margin-right: auto;
  /* 1 */
  position: relative;
}
.b01-navbar-center:not(:only-child) {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  /* 2 */
  width: max-content;
  box-sizing: border-box;
  /* 3 */
  z-index: 990;
}
/* 4 */
.b01-navbar-center-left,
.b01-navbar-center-right {
  position: absolute;
  top: 0;
}
.b01-navbar-center-left {
  right: 100%;
}
.b01-navbar-center-right {
  left: 100%;
}
[class*='b01-navbar-center-'] {
  width: max-content;
  box-sizing: border-box;
}
/* Nav
 ========================================================================== */
/*
 * 1. Reset list
 */
.b01-navbar-nav {
  display: flex;
  /* 1 */
  margin: 0;
  padding: 0;
  list-style: none;
}
/*
 * Allow items to wrap into the next line
 * Only not `absolute` positioned groups
 */
.b01-navbar-left,
.b01-navbar-right,
.b01-navbar-center:only-child {
  flex-wrap: wrap;
}
/*
 * Items
 * 1. Center content vertically and horizontally
 * 2. Imitate white space gap when using flexbox
 * 3. Dimensions
 * 4. Style
 * 5. Required for `a`
 */
.b01-navbar-nav > li > a,
.b01-navbar-item,
.b01-navbar-toggle {
  /* 1 */
  display: flex;
  justify-content: center;
  align-items: center;
  /* 2 */
  column-gap: 0.25em;
  /* 3 */
  box-sizing: border-box;
  min-height: 80px;
  padding: 0 15px;
  /* 4 */
  font-size: 0.875rem;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  /* 5 */
  text-decoration: none;
}
/*
 * Nav items
 */
.b01-navbar-nav > li > a {
  color: #777;
  text-transform: none;
  transition: 0.1s ease-in-out;
  transition-property: color, background-color;
}
/*
 * Hover
 * Apply hover style also if dropdown is opened
 */
.b01-navbar-nav > li:hover > a,
.b01-navbar-nav > li > a[aria-expanded="true"] {
  color: #666;
}
/* OnClick */
.b01-navbar-nav > li > a:active {
  color: #333;
}
/* Active */
.b01-navbar-nav > li.b01-active > a {
  color: #333;
}
/* Item
 ========================================================================== */
.b01-navbar-item {
  color: #666;
}
/*
 * Remove margin from the last-child
 */
.b01-navbar-item > :last-child {
  margin-bottom: 0;
}
/* Toggle
 ========================================================================== */
.b01-navbar-toggle {
  color: #777;
}
.b01-navbar-toggle:hover,
.b01-navbar-toggle[aria-expanded="true"] {
  color: #666;
  text-decoration: none;
}
/*
 * Icon
 * Adopts `b01-icon`
 */
/* Hover */
/* Subtitle
 ========================================================================== */
.b01-navbar-subtitle {
  font-size: 0.875rem;
}
/* Style modifiers
 ========================================================================== */
/* Dropdown
 ========================================================================== */
/*
 * Adopts `b01-dropdown`
 * 1. Hide by default
 * 2. Set position
 * 3. Set a default width
 * 4. Style
 */
.b01-navbar-dropdown {
  /* 1 */
  display: none;
  /* 2 */
  position: absolute;
  z-index: 1020;
  --b01-position-offset: 0px;
  /* 3 */
  box-sizing: border-box;
  width: 200px;
  max-width: 100vw;
  /* 4 */
  padding: 25px;
  background: #fff;
  color: #666;
  box-shadow: 0 5px 7px rgba(0, 0, 0, 0.15);
}
/* Show */
.b01-navbar-dropdown.b01-open {
  display: block;
}
/*
 * Grid
 * Adopts `b01-grid`
 */
/* Gutter Horizontal */
.b01-navbar-dropdown-grid {
  margin-left: -50px;
}
.b01-navbar-dropdown-grid > * {
  padding-left: 50px;
}
/* Gutter Vertical */
.b01-navbar-dropdown-grid > .b01-grid-margin {
  margin-top: 50px;
}
/* Stack */
.b01-navbar-dropdown-stack .b01-navbar-dropdown-grid > * {
  width: 100% !important;
}
/*
 * Width modifier
 */
.b01-navbar-dropdown-width-2:not(.b01-navbar-dropdown-stack) {
  width: 400px;
}
.b01-navbar-dropdown-width-3:not(.b01-navbar-dropdown-stack) {
  width: 600px;
}
.b01-navbar-dropdown-width-4:not(.b01-navbar-dropdown-stack) {
  width: 800px;
}
.b01-navbar-dropdown-width-5:not(.b01-navbar-dropdown-stack) {
  width: 1000px;
}
/*
 * Dropbar modifier
 * 1. Set position
 * 2. Bottom padding for dropbar
 * 3. Horizontal padding
 */
.b01-navbar-dropdown-dropbar {
  /* 1 */
  --b01-position-offset: 0px;
  /* 2 */
  margin-bottom: 0px;
  padding: 15px;
  box-shadow: none;
}
/* Dropdown Nav
 * Adopts `b01-nav`
 ========================================================================== */
.b01-navbar-dropdown-nav {
  font-size: 0.875rem;
}
/*
 * Items
 */
.b01-navbar-dropdown-nav > li > a {
  color: #777;
}
/* Hover */
.b01-navbar-dropdown-nav > li > a:hover {
  color: #666;
}
/* Active */
.b01-navbar-dropdown-nav > li.b01-active > a {
  color: #333;
}
/*
 * Header
 */
.b01-navbar-dropdown-nav .b01-nav-header {
  color: #333;
}
/*
 * Divider
 */
.b01-navbar-dropdown-nav .b01-nav-divider {
  border-top: 1px solid #d9d9d9;
}
/*
 * Sublists
 */
.b01-navbar-dropdown-nav .b01-nav-sub a {
  color: #777;
}
.b01-navbar-dropdown-nav .b01-nav-sub a:hover {
  color: #666;
}
.b01-navbar-dropdown-nav .b01-nav-sub li.b01-active > a {
  color: #333;
}
/* Dropbar
 ========================================================================== */
.b01-navbar-dropbar {
  position: absolute;
  z-index: 980;
  left: 0;
  right: 0;
  background: #fff;
  box-shadow: 0 5px 7px rgba(0, 0, 0, 0.05);
}
/*
     * Navbar
     */
.b01-navbar-container > .b01-container .b01-navbar-left {
  margin-left: -15px;
  margin-right: -15px;
}
.b01-navbar-container > .b01-container .b01-navbar-right {
  margin-right: -15px;
}
/*
     * Grid Divider
     */
.b01-navbar-dropdown-grid > * {
  position: relative;
}
.b01-navbar-dropdown-grid > :not(.b01-first-column)::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 25px;
  border-left: 1px solid #d9d9d9;
}
/* Vertical */
.b01-navbar-dropdown-grid.b01-grid-stack > .b01-grid-margin::before {
  content: "";
  position: absolute;
  top: -25px;
  left: 50px;
  right: 0;
  border-top: 1px solid #d9d9d9;
}
/* ========================================================================
   Component: Subnav
 ========================================================================== */
/*
 * 1. Allow items to wrap into the next line
 * 2. Center items vertically if they have a different height
 * 3. Gutter
 * 4. Reset list
 */
.b01-subnav {
  display: flex;
  /* 1 */
  flex-wrap: wrap;
  /* 2 */
  align-items: center;
  /* 3 */
  margin-left: -20px;
  /* 4 */
  padding: 0;
  list-style: none;
}
/*
 * 1. Space is allocated solely based on content dimensions: 0 0 auto
 * 2. Gutter
 * 3. Create position context for dropdowns
 */
.b01-subnav > * {
  /* 1 */
  flex: none;
  /* 2 */
  padding-left: 20px;
  /* 3 */
  position: relative;
}
/* Items
 ========================================================================== */
/*
 * Items must target `a` elements to exclude other elements (e.g. dropdowns)
 * Using `:first-child` instead of `a` to support `span` elements for text
 * 1. Center content vertically, e.g. an icon
 * 2. Imitate white space gap when using flexbox
 * 3. Style
 */
.b01-subnav > * > :first-child {
  /* 1 */
  display: flex;
  align-items: center;
  /* 2 */
  column-gap: 0.25em;
  /* 3 */
  color: #777;
  font-size: 0.875rem;
  text-transform: uppercase;
  transition: 0.1s ease-in-out;
  transition-property: color, background-color;
}
/* Hover */
.b01-subnav > * > a:hover {
  color: #666;
  text-decoration: none;
}
/* Active */
.b01-subnav > .b01-active > a {
  color: #333;
}
/* Divider modifier
 ========================================================================== */
/*
 * Set gutter
 */
.b01-subnav-divider {
  margin-left: -41px;
}
/*
 * Align items and divider vertically
 */
.b01-subnav-divider > * {
  display: flex;
  align-items: center;
}
/*
 * Divider
 * 1. `nth-child` makes it also work without JS if it's only one row
 */
.b01-subnav-divider > ::before {
  content: "";
  height: 1.5em;
  margin-left: 0px;
  margin-right: 20px;
  border-left: 1px solid transparent;
}
/* 1 */
.b01-subnav-divider > :nth-child(n+2):not(.b01-first-column)::before {
  border-left-color: #d9d9d9;
}
/* Pill modifier
 ========================================================================== */
.b01-subnav-pill > * > :first-child {
  padding: 5px 10px;
  background: transparent;
  color: #777;
  border-radius: 3px;
  padding: 2px 10px;
}
/* Hover */
.b01-subnav-pill > * > a:hover {
  background-color: #f8f8f8;
  color: #666;
}
/* OnClick */
.b01-subnav-pill > * > a:active {
  background-color: #f8f8f8;
  color: #666;
}
/* Active */
.b01-subnav-pill > .b01-active > a {
  background-color: #00b0ff;
  color: #fff;
}
/* Disabled
 * The same for all style modifiers
 ========================================================================== */
.b01-subnav > .b01-disabled > a {
  color: #777;
}
/* ========================================================================
   Component: Breadcrumb
 ========================================================================== */
/*
 * Reset list
 */
.b01-breadcrumb {
  padding: 0;
  list-style: none;
}
/*
 * 1. Doesn't generate any box and replaced by child boxes
 */
.b01-breadcrumb > * {
  display: contents;
}
/* Items
 ========================================================================== */
.b01-breadcrumb > * > * {
  font-size: 0.875rem;
  color: #777;
}
/* Hover */
.b01-breadcrumb > * > :hover {
  color: #666;
  text-decoration: none;
}
/* Disabled */
/* Active */
.b01-breadcrumb > :last-child > span,
.b01-breadcrumb > :last-child > a:not([href]) {
  color: #666;
}
/*
 * Divider
 * `nth-child` makes it also work without JS if it's only one row
 * 1. Remove space between inline block elements.
 * 2. Style
 */
.b01-breadcrumb > :nth-child(n+2):not(.b01-first-column)::before {
  content: "/";
  display: inline-block;
  /* 1 */
  margin: 0 20px 0 calc(20px - 4px);
  /* 2 */
  font-size: 0.875rem;
  color: #777;
}
/* ========================================================================
   Component: Pagination
 ========================================================================== */
/*
 * 1. Allow items to wrap into the next line
 * 2. Gutter
 * 3. Reset list
 */
.b01-pagination {
  display: flex;
  /* 1 */
  flex-wrap: wrap;
  /* 2 */
  margin-left: -10px;
  /* 3 */
  padding: 0;
  list-style: none;
}
/*
 * 1. Space is allocated solely based on content dimensions: 0 0 auto
 * 2. Gutter
 * 3. Create position context for dropdowns
 */
.b01-pagination > * {
  /* 1 */
  flex: none;
  /* 2 */
  padding-left: 10px;
  /* 3 */
  position: relative;
}
/* Items
 ========================================================================== */
/*
 * 1. Prevent gap if child element is `inline-block`, e.g. an icon
 * 2. Style
 */
.b01-pagination > * > * {
  /* 1 */
  display: block;
  /* 2 */
  padding: 5px 10px;
  color: #777;
  transition: color 0.1s ease-in-out;
}
/* Hover */
.b01-pagination > * > :hover {
  color: #666;
  text-decoration: none;
}
/* Active */
.b01-pagination > .b01-active > * {
  color: #666;
}
/* Disabled */
.b01-pagination > .b01-disabled > * {
  color: #777;
}
/* ========================================================================
   Component: Tab
 ========================================================================== */
/*
 * 1. Allow items to wrap into the next line
 * 2. Gutter
 * 3. Reset list
 */
.b01-tab {
  display: flex;
  /* 1 */
  flex-wrap: wrap;
  /* 2 */
  margin-left: -20px;
  /* 3 */
  padding: 0;
  list-style: none;
  position: relative;
}
.b01-tab::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 20px;
  right: 0;
  border-bottom: 1px solid #d9d9d9;
}
/*
 * 1. Space is allocated solely based on content dimensions: 0 0 auto
 * 2. Gutter
 * 3. Create position context for dropdowns
 */
.b01-tab > * {
  /* 1 */
  flex: none;
  /* 2 */
  padding-left: 20px;
  /* 3 */
  position: relative;
}
/* Items
 ========================================================================== */
/*
 * Items must target `a` elements to exclude other elements (e.g. dropdowns)
 * 1. Center content vertically, e.g. an icon
 * 2. Imitate white space gap when using flexbox
 * 3. Center content if a width is set
 * 4. Style
 */
.b01-tab > * > a {
  /* 1 */
  display: flex;
  align-items: center;
  /* 2 */
  column-gap: 0.25em;
  /* 3 */
  justify-content: center;
  /* 4 */
  padding: 5px 14px;
  color: #777;
  border-bottom: 1px solid transparent;
  font-size: 0.875rem;
  text-transform: none;
  transition: color 0.1s ease-in-out;
}
/* Hover */
.b01-tab > * > a:hover {
  color: #666;
  text-decoration: none;
}
/* Active */
.b01-tab > .b01-active > a {
  color: #333;
  border-color: #00b0ff;
}
/* Disabled */
.b01-tab > .b01-disabled > a {
  color: #777;
}
/* Position modifier
 ========================================================================== */
/*
 * Bottom
 */
.b01-tab-bottom::before {
  top: 0;
  bottom: auto;
}
.b01-tab-bottom > * > a {
  border-top: 1px solid transparent;
  border-bottom: none;
}
/*
 * Left + Right
 * 1. Reset Gutter
 */
.b01-tab-left,
.b01-tab-right {
  flex-direction: column;
  /* 1 */
  margin-left: 0;
}
/* 1 */
.b01-tab-left > *,
.b01-tab-right > * {
  padding-left: 0;
}
.b01-tab-left::before {
  top: 0;
  bottom: 0;
  left: auto;
  right: 0;
  border-left: 1px solid #d9d9d9;
  border-bottom: none;
}
.b01-tab-right::before {
  top: 0;
  bottom: 0;
  left: 0;
  right: auto;
  border-left: 1px solid #d9d9d9;
  border-bottom: none;
}
.b01-tab-left > * > a {
  justify-content: left;
  border-right: 1px solid transparent;
  border-bottom: none;
}
.b01-tab-right > * > a {
  justify-content: left;
  border-left: 1px solid transparent;
  border-bottom: none;
}
.b01-tab .b01-dropdown {
  margin-left: 34px;
}
/* ========================================================================
   Component: Slidenav
 ========================================================================== */
/*
 * Adopts `b01-icon`
 */
.b01-slidenav {
  padding: 0 20px;
  color: rgba(102, 102, 102, 0.5);
  transition: color 0.1s ease-in-out;
  height: 100%;
  transition: 0.2s ease-in-out;
  transition-property: color, background-color, border-color, box-shadow, opacity;
  z-index: 9;
  display: flex;
  align-items: center;
  opacity: 0;
}
.b01-slidenav.b01-icon:not(.b01-preserve) [stroke*='#']:not(.b01-preserve) {
  stroke: #fff;
  stroke-width: 2;
}
.b01-slidenav.b01-slidenav-previous {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.3) 100%, #000 100%);
}
.b01-slidenav.b01-slidenav-next {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.3) 100%, #000 100%);
}
/* Hover */
.b01-slidenav:hover {
  color: rgba(102, 102, 102, 0.9);
  opacity: 1;
  color: #fff;
  outline: 0;
}
/* OnClick */
.b01-slidenav:active {
  color: rgba(102, 102, 102, 0.5);
}
/* Icon modifier
 ========================================================================== */
/*
 * Previous
 */
/*
 * Next
 */
/* Size modifier
 ========================================================================== */
.b01-slidenav-large {
  padding: 10px 10px;
}
/* Container
 ========================================================================== */
.b01-slidenav-container {
  display: flex;
}
/* ========================================================================
   Component: Dotnav
 ========================================================================== */
/*
 * 1. Allow items to wrap into the next line
 * 2. Reset list
 * 3. Gutter
 */
.b01-dotnav {
  display: flex;
  /* 1 */
  flex-wrap: wrap;
  /* 2 */
  margin: 0;
  padding: 0;
  list-style: none;
  /* 3 */
  margin-left: -12px;
}
/*
 * 1. Space is allocated solely based on content dimensions: 0 0 auto
 * 2. Gutter
 */
.b01-dotnav > * {
  /* 1 */
  flex: none;
  /* 2 */
  padding-left: 12px;
}
/* Items
 ========================================================================== */
/*
 * Items
 * 1. Hide text if present
 */
.b01-dotnav > * > * {
  display: block;
  box-sizing: border-box;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: transparent;
  /* 1 */
  text-indent: 100%;
  overflow: hidden;
  white-space: nowrap;
  border: 1px solid rgba(102, 102, 102, 0.4);
  transition: 0.2s ease-in-out;
  transition-property: background-color, border-color;
}
/* Hover */
.b01-dotnav > * > :hover {
  background-color: rgba(102, 102, 102, 0.6);
  border-color: transparent;
}
/* OnClick */
.b01-dotnav > * > :active {
  background-color: rgba(102, 102, 102, 0.2);
  border-color: transparent;
}
/* Active */
.b01-dotnav > .b01-active > * {
  background-color: rgba(102, 102, 102, 0.6);
  border-color: transparent;
}
/* Modifier: 'b01-dotnav-vertical'
 ========================================================================== */
/*
 * 1. Change direction
 * 2. Gutter
 */
.b01-dotnav-vertical {
  /* 1 */
  flex-direction: column;
  /* 2 */
  margin-left: 0;
  margin-top: -12px;
}
/* 2 */
.b01-dotnav-vertical > * {
  padding-left: 0;
  padding-top: 12px;
}
/* ========================================================================
   Component: Thumbnav
 ========================================================================== */
/*
 * 1. Allow items to wrap into the next line
 * 2. Reset list
 * 3. Gutter
 */
.b01-thumbnav {
  display: flex;
  /* 1 */
  flex-wrap: wrap;
  /* 2 */
  margin: 0;
  padding: 0;
  list-style: none;
  /* 3 */
  margin-left: -15px;
}
/*
 * Space is allocated based on content dimensions, but shrinks: 0 1 auto
 * 1. Gutter
 */
.b01-thumbnav > * {
  /* 1 */
  padding-left: 15px;
}
/* Items
 ========================================================================== */
/*
 * Items
 */
.b01-thumbnav > * > * {
  display: inline-block;
  position: relative;
}
.b01-thumbnav > * > *::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(0, 176, 255, 0.2);
  transition: background-color 0.1s ease-in-out;
}
/* Hover */
.b01-thumbnav > * > :hover::after {
  background-color: transparent;
}
/* Active */
.b01-thumbnav > .b01-active > *::after {
  background-color: transparent;
}
/* Modifier: 'b01-thumbnav-vertical'
 ========================================================================== */
/*
 * 1. Change direction
 * 2. Gutter
 */
.b01-thumbnav-vertical {
  /* 1 */
  flex-direction: column;
  /* 2 */
  margin-left: 0;
  margin-top: -15px;
}
/* 2 */
.b01-thumbnav-vertical > * {
  padding-left: 0;
  padding-top: 15px;
}
/* ========================================================================
   Component: Iconnav
 ========================================================================== */
/*
 * 1. Allow items to wrap into the next line
 * 2. Reset list
 * 3. Gutter
 */
.b01-iconnav {
  display: flex;
  /* 1 */
  flex-wrap: wrap;
  /* 2 */
  margin: 0;
  padding: 0;
  list-style: none;
  /* 3 */
  margin-left: -10px;
}
/*
 * Space is allocated based on content dimensions, but shrinks: 0 1 auto
 * 1. Gutter
 */
.b01-iconnav > * {
  /* 1 */
  padding-left: 10px;
}
/* Items
 ========================================================================== */
/*
 * Items must target `a` elements to exclude other elements (e.g. dropdowns)
 * 1. Center content vertically if there is still some text
 * 2. Imitate white space gap when using flexbox
 * 3. Force text not to affect item height
 * 4. Style
 * 5. Required for `a` if there is still some text
 */
.b01-iconnav > * > a {
  /* 1 */
  display: flex;
  align-items: center;
  /* 2 */
  column-gap: 0.25em;
  /* 3 */
  line-height: 0;
  /* 4 */
  color: #777;
  /* 5 */
  text-decoration: none;
  font-size: 0.875rem;
  transition: 0.1s ease-in-out;
  transition-property: color, background-color;
}
/* Hover */
.b01-iconnav > * > a:hover {
  color: #666;
}
/* Active */
.b01-iconnav > .b01-active > a {
  color: #666;
}
/* Modifier: 'b01-iconnav-vertical'
 ========================================================================== */
/*
 * 1. Change direction
 * 2. Gutter
 */
.b01-iconnav-vertical {
  /* 1 */
  flex-direction: column;
  /* 2 */
  margin-left: 0;
  margin-top: -10px;
}
/* 2 */
.b01-iconnav-vertical > * {
  padding-left: 0;
  padding-top: 10px;
}
/* ========================================================================
   Component: Lightbox
 ========================================================================== */
/*
 * 1. Hide by default
 * 2. Set position
 * 3. Allow scrolling for the modal dialog
 * 4. Horizontal padding
 * 5. Mask the background page
 * 6. Fade-in transition
 * 7. Prevent cancellation of pointer events while dragging
 */
.b01-lightbox {
  /* 1 */
  display: none;
  /* 2 */
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1010;
  /* 5 */
  background: #000;
  /* 6 */
  opacity: 0;
  transition: opacity 0.15s linear;
  /* 7 */
  touch-action: pinch-zoom;
}
/*
 * Open
 * 1. Center child
 * 2. Fade-in
 */
.b01-lightbox.b01-open {
  display: block;
  /* 2 */
  opacity: 1;
}
/*
 * Focus
 */
.b01-lightbox :focus {
  outline-color: rgba(255, 255, 255, 0.7);
}
.b01-lightbox :focus-visible {
  outline-color: rgba(255, 255, 255, 0.7);
}
/* Page
 ========================================================================== */
/*
 * Prevent scrollbars
 */
.b01-lightbox-page {
  overflow: hidden;
}
/* Item
 ========================================================================== */
/*
 * 1. Center child within the viewport
 * 2. Not visible by default
 * 3. Color needed for spinner icon
 * 4. Optimize animation
 * 5. Responsiveness
 *    Using `vh` for `max-height` to fix image proportions after resize in Safari and Opera
 */
.b01-lightbox-items > * {
  /* 1 */
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  /* 2 */
  display: none;
  justify-content: center;
  align-items: center;
  /* 3 */
  color: rgba(255, 255, 255, 0.7);
  /* 4 */
  will-change: transform, opacity;
}
/* 5 */
.b01-lightbox-items > * > * {
  max-width: 100vw;
  max-height: 100vh;
}
.b01-lightbox-items > * > :not(iframe) {
  width: auto;
  height: auto;
}
.b01-lightbox-items > .b01-active {
  display: flex;
}
/* Toolbar
 ========================================================================== */
.b01-lightbox-toolbar {
  padding: 10px 10px;
  background: rgba(0, 0, 0, 0.3);
  color: rgba(255, 255, 255, 0.7);
}
.b01-lightbox-toolbar > * {
  color: rgba(255, 255, 255, 0.7);
}
/* Toolbar Icon (Close)
 ========================================================================== */
.b01-lightbox-toolbar-icon {
  padding: 5px;
  color: rgba(255, 255, 255, 0.7);
}
/*
 * Hover
 */
.b01-lightbox-toolbar-icon:hover {
  color: #fff;
}
/* Button (Slidenav)
 ========================================================================== */
/*
 * 1. Center icon vertically and horizontally
 */
.b01-lightbox-button {
  box-sizing: border-box;
  width: 50px;
  height: 50px;
  background: rgba(0, 0, 0, 0.3);
  color: rgba(255, 255, 255, 0.7);
  /* 1 */
  display: inline-flex;
  justify-content: center;
  align-items: center;
}
/* Hover */
.b01-lightbox-button:hover {
  color: #fff;
}
/* OnClick */
/* Caption
 ========================================================================== */
.b01-lightbox-caption:empty {
  display: none;
}
/* Iframe
 ========================================================================== */
.b01-lightbox-iframe {
  width: 80%;
  height: 80%;
}
/* ========================================================================
   Component: Animation
 ========================================================================== */
[class*='b01-animation-'] {
  animation: 0.5s ease-out both;
}
/* Animations
 ========================================================================== */
/*
 * Fade
 */
.b01-animation-fade {
  animation-name: b01-fade;
  animation-duration: 0.8s;
  animation-timing-function: linear;
}
/*
 * Scale
 */
.b01-animation-scale-up {
  animation-name: b01-fade, b01-scale-up;
}
.b01-animation-scale-down {
  animation-name: b01-fade, b01-scale-down;
}
/*
 * Slide
 */
.b01-animation-slide-top {
  animation-name: b01-fade, b01-slide-top;
}
.b01-animation-slide-bottom {
  animation-name: b01-fade, b01-slide-bottom;
}
.b01-animation-slide-left {
  animation-name: b01-fade, b01-slide-left;
}
.b01-animation-slide-right {
  animation-name: b01-fade, b01-slide-right;
}
/*
 * Slide Small
 */
.b01-animation-slide-top-small {
  animation-name: b01-fade, b01-slide-top-small;
}
.b01-animation-slide-bottom-small {
  animation-name: b01-fade, b01-slide-bottom-small;
}
.b01-animation-slide-left-small {
  animation-name: b01-fade, b01-slide-left-small;
}
.b01-animation-slide-right-small {
  animation-name: b01-fade, b01-slide-right-small;
}
/*
 * Slide Medium
 */
.b01-animation-slide-top-medium {
  animation-name: b01-fade, b01-slide-top-medium;
}
.b01-animation-slide-bottom-medium {
  animation-name: b01-fade, b01-slide-bottom-medium;
}
.b01-animation-slide-left-medium {
  animation-name: b01-fade, b01-slide-left-medium;
}
.b01-animation-slide-right-medium {
  animation-name: b01-fade, b01-slide-right-medium;
}
/*
 * Kenburns
 */
.b01-animation-kenburns {
  animation-name: b01-kenburns;
  animation-duration: 15s;
}
/*
 * Shake
 */
.b01-animation-shake {
  animation-name: b01-shake;
}
/*
 * SVG Stroke
 * The `--b01-animation-stroke` custom property contains the longest path length.
 * Set it manually or use `b01-svg="stroke-animation: true"` to set it automatically.
 * All strokes are animated by the same pace and doesn't end simultaneously.
 * To end simultaneously, `pathLength="1"` could be used, but it's not working in Safari yet.
 */
.b01-animation-stroke {
  animation-name: b01-stroke;
  animation-duration: 2s;
  stroke-dasharray: var(--b01-animation-stroke);
}
/* Direction modifier
 ========================================================================== */
.b01-animation-reverse {
  animation-direction: reverse;
  animation-timing-function: ease-in;
}
/* Duration modifier
 ========================================================================== */
.b01-animation-fast {
  animation-duration: 0.1s;
}
/* Toggle animation based on the State of the Parent Element
 ========================================================================== */
.b01-animation-toggle:not(:hover):not(:focus) [class*='b01-animation-'] {
  animation-name: none;
}
/* Keyframes used by animation classes
 ========================================================================== */
/*
 * Fade
 */
@keyframes b01-fade {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/*
 * Scale
 */
@keyframes b01-scale-up {
  0% {
    transform: scale(0.9);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes b01-scale-down {
  0% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}
/*
 * Slide
 */
@keyframes b01-slide-top {
  0% {
    transform: translateY(-100%);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes b01-slide-bottom {
  0% {
    transform: translateY(100%);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes b01-slide-left {
  0% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes b01-slide-right {
  0% {
    transform: translateX(100%);
  }
  100% {
    transform: translateX(0);
  }
}
/*
 * Slide Small
 */
@keyframes b01-slide-top-small {
  0% {
    transform: translateY(-10px);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes b01-slide-bottom-small {
  0% {
    transform: translateY(10px);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes b01-slide-left-small {
  0% {
    transform: translateX(-10px);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes b01-slide-right-small {
  0% {
    transform: translateX(10px);
  }
  100% {
    transform: translateX(0);
  }
}
/*
 * Slide Medium
 */
@keyframes b01-slide-top-medium {
  0% {
    transform: translateY(-50px);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes b01-slide-bottom-medium {
  0% {
    transform: translateY(50px);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes b01-slide-left-medium {
  0% {
    transform: translateX(-50px);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes b01-slide-right-medium {
  0% {
    transform: translateX(50px);
  }
  100% {
    transform: translateX(0);
  }
}
/*
 * Kenburns
 */
@keyframes b01-kenburns {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.2);
  }
}
/*
 * Shake
 */
@keyframes b01-shake {
  0%,
  100% {
    transform: translateX(0);
  }
  10% {
    transform: translateX(-9px);
  }
  20% {
    transform: translateX(8px);
  }
  30% {
    transform: translateX(-7px);
  }
  40% {
    transform: translateX(6px);
  }
  50% {
    transform: translateX(-5px);
  }
  60% {
    transform: translateX(4px);
  }
  70% {
    transform: translateX(-3px);
  }
  80% {
    transform: translateX(2px);
  }
  90% {
    transform: translateX(-1px);
  }
}
/*
 * Stroke
 */
@keyframes b01-stroke {
  0% {
    stroke-dashoffset: var(--b01-animation-stroke);
  }
  100% {
    stroke-dashoffset: 0;
  }
}
/* ========================================================================
   Component: Width
 ========================================================================== */
/* Equal child widths
 ========================================================================== */
[class*='b01-child-width'] > * {
  box-sizing: border-box;
  width: 100%;
}
.b01-child-width-1-2 > * {
  width: 50%;
}
.b01-child-width-1-3 > * {
  width: calc(100% * 1 / 3.001);
}
.b01-child-width-1-4 > * {
  width: 25%;
}
.b01-child-width-1-5 > * {
  width: 20%;
}
.b01-child-width-1-6 > * {
  width: calc(100% * 1 / 6.001);
}
.b01-child-width-auto > * {
  width: auto;
}
/*
 * 1. Reset the `min-width`, which is set to auto by default, because
 *    flex items won't shrink below their minimum intrinsic content size.
 *    Using `1px` instead of `0`, so items still wrap into the next line,
 *    if they have zero width and padding and the predecessor is 100% wide.
 */
.b01-child-width-expand > :not([class*='b01-width']) {
  flex: 1;
  /* 1 */
  min-width: 1px;
}
/* Phone landscape and bigger */
@media (min-width: 640px) {
  .b01-child-width-1-1\@s > * {
    width: 100%;
  }
  .b01-child-width-1-2\@s > * {
    width: 50%;
  }
  .b01-child-width-1-3\@s > * {
    width: calc(100% * 1 / 3.001);
  }
  .b01-child-width-1-4\@s > * {
    width: 25%;
  }
  .b01-child-width-1-5\@s > * {
    width: 20%;
  }
  .b01-child-width-1-6\@s > * {
    width: calc(100% * 1 / 6.001);
  }
  .b01-child-width-auto\@s > * {
    width: auto;
  }
  .b01-child-width-expand\@s > :not([class*='b01-width']) {
    flex: 1;
    min-width: 1px;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 960px) {
  .b01-child-width-1-1\@m > * {
    width: 100%;
  }
  .b01-child-width-1-2\@m > * {
    width: 50%;
  }
  .b01-child-width-1-3\@m > * {
    width: calc(100% * 1 / 3.001);
  }
  .b01-child-width-1-4\@m > * {
    width: 25%;
  }
  .b01-child-width-1-5\@m > * {
    width: 20%;
  }
  .b01-child-width-1-6\@m > * {
    width: calc(100% * 1 / 6.001);
  }
  .b01-child-width-auto\@m > * {
    width: auto;
  }
  .b01-child-width-expand\@m > :not([class*='b01-width']) {
    flex: 1;
    min-width: 1px;
  }
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  .b01-child-width-1-1\@l > * {
    width: 100%;
  }
  .b01-child-width-1-2\@l > * {
    width: 50%;
  }
  .b01-child-width-1-3\@l > * {
    width: calc(100% * 1 / 3.001);
  }
  .b01-child-width-1-4\@l > * {
    width: 25%;
  }
  .b01-child-width-1-5\@l > * {
    width: 20%;
  }
  .b01-child-width-1-6\@l > * {
    width: calc(100% * 1 / 6.001);
  }
  .b01-child-width-auto\@l > * {
    width: auto;
  }
  .b01-child-width-expand\@l > :not([class*='b01-width']) {
    flex: 1;
    min-width: 1px;
  }
}
/* Large screen and bigger */
@media (min-width: 1600px) {
  .b01-child-width-1-1\@xl > * {
    width: 100%;
  }
  .b01-child-width-1-2\@xl > * {
    width: 50%;
  }
  .b01-child-width-1-3\@xl > * {
    width: calc(100% * 1 / 3.001);
  }
  .b01-child-width-1-4\@xl > * {
    width: 25%;
  }
  .b01-child-width-1-5\@xl > * {
    width: 20%;
  }
  .b01-child-width-1-6\@xl > * {
    width: calc(100% * 1 / 6.001);
  }
  .b01-child-width-auto\@xl > * {
    width: auto;
  }
  .b01-child-width-expand\@xl > :not([class*='b01-width']) {
    flex: 1;
    min-width: 1px;
  }
}
/* Single Widths
 ========================================================================== */
/*
 * 1. `max-width` is needed for the pixel-based classes
 */
[class*='b01-width'] {
  box-sizing: border-box;
  width: 100%;
  /* 1 */
  max-width: 100%;
}
/* Halves */
.b01-width-1-2 {
  width: 50%;
}
/* Thirds */
.b01-width-1-3 {
  width: calc(100% * 1 / 3.001);
}
.b01-width-2-3 {
  width: calc(100% * 2 / 3.001);
}
/* Quarters */
.b01-width-1-4 {
  width: 25%;
}
.b01-width-3-4 {
  width: 75%;
}
/* Fifths */
.b01-width-1-5 {
  width: 20%;
}
.b01-width-2-5 {
  width: 40%;
}
.b01-width-3-5 {
  width: 60%;
}
.b01-width-4-5 {
  width: 80%;
}
/* Sixths */
.b01-width-1-6 {
  width: calc(100% * 1 / 6.001);
}
.b01-width-5-6 {
  width: calc(100% * 5 / 6.001);
}
/* Pixel */
.b01-width-small {
  width: 150px;
}
.b01-width-medium {
  width: 300px;
}
.b01-width-large {
  width: 450px;
}
.b01-width-xlarge {
  width: 600px;
}
.b01-width-2xlarge {
  width: 750px;
}
/* Auto */
.b01-width-auto {
  width: auto;
}
/* Expand */
.b01-width-expand {
  flex: 1;
  min-width: 1px;
}
/* Phone landscape and bigger */
@media (min-width: 640px) {
  /* Whole */
  .b01-width-1-1\@s {
    width: 100%;
  }
  /* Halves */
  .b01-width-1-2\@s {
    width: 50%;
  }
  /* Thirds */
  .b01-width-1-3\@s {
    width: calc(100% * 1 / 3.001);
  }
  .b01-width-2-3\@s {
    width: calc(100% * 2 / 3.001);
  }
  /* Quarters */
  .b01-width-1-4\@s {
    width: 25%;
  }
  .b01-width-3-4\@s {
    width: 75%;
  }
  /* Fifths */
  .b01-width-1-5\@s {
    width: 20%;
  }
  .b01-width-2-5\@s {
    width: 40%;
  }
  .b01-width-3-5\@s {
    width: 60%;
  }
  .b01-width-4-5\@s {
    width: 80%;
  }
  /* Sixths */
  .b01-width-1-6\@s {
    width: calc(100% * 1 / 6.001);
  }
  .b01-width-5-6\@s {
    width: calc(100% * 5 / 6.001);
  }
  /* Pixel */
  .b01-width-small\@s {
    width: 150px;
  }
  .b01-width-medium\@s {
    width: 300px;
  }
  .b01-width-large\@s {
    width: 450px;
  }
  .b01-width-xlarge\@s {
    width: 600px;
  }
  .b01-width-2xlarge\@s {
    width: 750px;
  }
  /* Auto */
  .b01-width-auto\@s {
    width: auto;
  }
  /* Expand */
  .b01-width-expand\@s {
    flex: 1;
    min-width: 1px;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 960px) {
  /* Whole */
  .b01-width-1-1\@m {
    width: 100%;
  }
  /* Halves */
  .b01-width-1-2\@m {
    width: 50%;
  }
  /* Thirds */
  .b01-width-1-3\@m {
    width: calc(100% * 1 / 3.001);
  }
  .b01-width-2-3\@m {
    width: calc(100% * 2 / 3.001);
  }
  /* Quarters */
  .b01-width-1-4\@m {
    width: 25%;
  }
  .b01-width-3-4\@m {
    width: 75%;
  }
  /* Fifths */
  .b01-width-1-5\@m {
    width: 20%;
  }
  .b01-width-2-5\@m {
    width: 40%;
  }
  .b01-width-3-5\@m {
    width: 60%;
  }
  .b01-width-4-5\@m {
    width: 80%;
  }
  /* Sixths */
  .b01-width-1-6\@m {
    width: calc(100% * 1 / 6.001);
  }
  .b01-width-5-6\@m {
    width: calc(100% * 5 / 6.001);
  }
  /* Pixel */
  .b01-width-small\@m {
    width: 150px;
  }
  .b01-width-medium\@m {
    width: 300px;
  }
  .b01-width-large\@m {
    width: 450px;
  }
  .b01-width-xlarge\@m {
    width: 600px;
  }
  .b01-width-2xlarge\@m {
    width: 750px;
  }
  /* Auto */
  .b01-width-auto\@m {
    width: auto;
  }
  /* Expand */
  .b01-width-expand\@m {
    flex: 1;
    min-width: 1px;
  }
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  /* Whole */
  .b01-width-1-1\@l {
    width: 100%;
  }
  /* Halves */
  .b01-width-1-2\@l {
    width: 50%;
  }
  /* Thirds */
  .b01-width-1-3\@l {
    width: calc(100% * 1 / 3.001);
  }
  .b01-width-2-3\@l {
    width: calc(100% * 2 / 3.001);
  }
  /* Quarters */
  .b01-width-1-4\@l {
    width: 25%;
  }
  .b01-width-3-4\@l {
    width: 75%;
  }
  /* Fifths */
  .b01-width-1-5\@l {
    width: 20%;
  }
  .b01-width-2-5\@l {
    width: 40%;
  }
  .b01-width-3-5\@l {
    width: 60%;
  }
  .b01-width-4-5\@l {
    width: 80%;
  }
  /* Sixths */
  .b01-width-1-6\@l {
    width: calc(100% * 1 / 6.001);
  }
  .b01-width-5-6\@l {
    width: calc(100% * 5 / 6.001);
  }
  /* Pixel */
  .b01-width-small\@l {
    width: 150px;
  }
  .b01-width-medium\@l {
    width: 300px;
  }
  .b01-width-large\@l {
    width: 450px;
  }
  .b01-width-xlarge\@l {
    width: 600px;
  }
  .b01-width-2xlarge\@l {
    width: 750px;
  }
  /* Auto */
  .b01-width-auto\@l {
    width: auto;
  }
  /* Expand */
  .b01-width-expand\@l {
    flex: 1;
    min-width: 1px;
  }
}
/* Large screen and bigger */
@media (min-width: 1600px) {
  /* Whole */
  .b01-width-1-1\@xl {
    width: 100%;
  }
  /* Halves */
  .b01-width-1-2\@xl {
    width: 50%;
  }
  /* Thirds */
  .b01-width-1-3\@xl {
    width: calc(100% * 1 / 3.001);
  }
  .b01-width-2-3\@xl {
    width: calc(100% * 2 / 3.001);
  }
  /* Quarters */
  .b01-width-1-4\@xl {
    width: 25%;
  }
  .b01-width-3-4\@xl {
    width: 75%;
  }
  /* Fifths */
  .b01-width-1-5\@xl {
    width: 20%;
  }
  .b01-width-2-5\@xl {
    width: 40%;
  }
  .b01-width-3-5\@xl {
    width: 60%;
  }
  .b01-width-4-5\@xl {
    width: 80%;
  }
  /* Sixths */
  .b01-width-1-6\@xl {
    width: calc(100% * 1 / 6.001);
  }
  .b01-width-5-6\@xl {
    width: calc(100% * 5 / 6.001);
  }
  /* Pixel */
  .b01-width-small\@xl {
    width: 150px;
  }
  .b01-width-medium\@xl {
    width: 300px;
  }
  .b01-width-large\@xl {
    width: 450px;
  }
  .b01-width-xlarge\@xl {
    width: 600px;
  }
  .b01-width-2xlarge\@xl {
    width: 750px;
  }
  /* Auto */
  .b01-width-auto\@xl {
    width: auto;
  }
  /* Expand */
  .b01-width-expand\@xl {
    flex: 1;
    min-width: 1px;
  }
}
/* Intrinsic Widths
 ========================================================================== */
.b01-width-max-content {
  width: max-content;
}
.b01-width-min-content {
  width: min-content;
}
.b01-width-xmedium {
  width: 420px;
}
@media (min-width: 640px) {
  .b01-width-xmedium\@s {
    width: 420px;
  }
}
@media (min-width: 960px) {
  .b01-width-xmedium\@m {
    width: 420px;
  }
}
@media (min-width: 1200px) {
  .b01-width-xmedium\@l {
    width: 420px;
  }
}
@media (min-width: 1600px) {
  .b01-width-xmedium\@xl {
    width: 420px;
  }
}
/* ========================================================================
   Component: Height
 ========================================================================== */
[class*='b01-height'] {
  box-sizing: border-box;
}
/*
 * Only works if parent element has a height set
 */
.b01-height-1-1 {
  height: 100%;
}
/*
 * Useful to create image teasers
 */
.b01-height-viewport {
  min-height: 100vh;
}
.b01-height-viewport-2 {
  min-height: 200vh;
}
.b01-height-viewport-3 {
  min-height: 300vh;
}
.b01-height-viewport-4 {
  min-height: 400vh;
}
/*
 * Pixel
 * Useful for `overflow: auto`
 */
.b01-height-small {
  height: 150px;
}
.b01-height-medium {
  height: 300px;
}
.b01-height-large {
  height: 450px;
}
.b01-height-max-small {
  max-height: 150px;
}
.b01-height-max-medium {
  max-height: 300px;
}
.b01-height-max-large {
  max-height: 450px;
}
/* ========================================================================
   Component: Text
 ========================================================================== */
/* Style modifiers
 ========================================================================== */
.b01-text-lead {
  font-size: 1.3rem;
  line-height: 1.5;
  color: #333;
}
.b01-text-meta {
  font-size: 0.875rem;
  line-height: 1.4;
  color: #777;
}
.b01-text-meta a {
  color: #777;
}
.b01-text-meta a:hover {
  color: #666;
  text-decoration: none;
}
/* Size modifiers
 ========================================================================== */
.b01-text-small {
  font-size: 0.875rem;
  line-height: 1.5;
}
.b01-text-large {
  font-size: 1.3rem;
  line-height: 1.5;
}
.b01-text-default {
  font-size: 16px;
  line-height: 1.5;
}
/* Weight modifier
 ========================================================================== */
.b01-text-light {
  font-weight: 300;
}
.b01-text-normal {
  font-weight: 400;
}
.b01-text-bold {
  font-weight: 700;
}
.b01-text-lighter {
  font-weight: lighter;
}
.b01-text-bolder {
  font-weight: bolder;
}
/* Style modifier
 ========================================================================== */
.b01-text-italic {
  font-style: italic;
}
/* Transform modifier
 ========================================================================== */
.b01-text-capitalize {
  text-transform: capitalize !important;
}
.b01-text-uppercase {
  text-transform: uppercase !important;
}
.b01-text-lowercase {
  text-transform: lowercase !important;
}
/* Decoration modifier
 ========================================================================== */
.b01-text-decoration-none {
  text-decoration: none !important;
}
/* Color modifiers
 ========================================================================== */
.b01-text-muted {
  color: #777 !important;
}
.b01-text-emphasis {
  color: #333 !important;
}
.b01-text-primary {
  color: #00b0ff !important;
}
.b01-text-secondary {
  color: #333333 !important;
}
.b01-text-success {
  color: #4CAF50 !important;
}
.b01-text-warning {
  color: #FFC107 !important;
}
.b01-text-danger {
  color: #DD2C00 !important;
}
/* Background modifier
 ========================================================================== */
/*
 * 1. The background clips to the foreground text. Works in all browsers.
 * 2. Default color is set to transparent.
 * 3. Container fits the text
 * 4. Style
 */
.b01-text-background {
  /* 1 */
  -webkit-background-clip: text;
  /* 2 */
  color: transparent !important;
  /* 3 */
  display: inline-block;
  /* 4 */
  background-color: #00b0ff;
}
/* Alignment modifiers
 ========================================================================== */
.b01-text-left {
  text-align: left !important;
}
.b01-text-right {
  text-align: right !important;
}
.b01-text-center {
  text-align: center !important;
}
.b01-text-justify {
  text-align: justify !important;
}
/* Phone landscape and bigger */
@media (min-width: 640px) {
  .b01-text-left\@s {
    text-align: left !important;
  }
  .b01-text-right\@s {
    text-align: right !important;
  }
  .b01-text-center\@s {
    text-align: center !important;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 960px) {
  .b01-text-left\@m {
    text-align: left !important;
  }
  .b01-text-right\@m {
    text-align: right !important;
  }
  .b01-text-center\@m {
    text-align: center !important;
  }
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  .b01-text-left\@l {
    text-align: left !important;
  }
  .b01-text-right\@l {
    text-align: right !important;
  }
  .b01-text-center\@l {
    text-align: center !important;
  }
}
/* Large screen and bigger */
@media (min-width: 1600px) {
  .b01-text-left\@xl {
    text-align: left !important;
  }
  .b01-text-right\@xl {
    text-align: right !important;
  }
  .b01-text-center\@xl {
    text-align: center !important;
  }
}
/*
 * Vertical
 */
.b01-text-top {
  vertical-align: top !important;
}
.b01-text-middle {
  vertical-align: middle !important;
}
.b01-text-bottom {
  vertical-align: bottom !important;
}
.b01-text-baseline {
  vertical-align: baseline !important;
}
/* Wrap modifiers
 ========================================================================== */
/*
 * Prevent text from wrapping onto multiple lines
 */
.b01-text-nowrap {
  white-space: nowrap;
}
/*
 * 1. Make sure a max-width is set after which truncation can occur
 * 2. Prevent text from wrapping onto multiple lines, and truncate with an ellipsis
 * 3. Fix for table cells
 */
.b01-text-truncate {
  /* 1 */
  max-width: 100%;
  /* 2 */
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
/* 2 */
th.b01-text-truncate,
td.b01-text-truncate {
  max-width: 0;
}
/*
 * Wrap long words onto the next line and break them if they are too long to fit.
 * 1. Make it work with table cells in all browsers.
 * Note: Not using `hyphens: auto` because it hyphenates text even if not needed.
 */
.b01-text-break {
  overflow-wrap: break-word;
}
/* 1 */
th.b01-text-break,
td.b01-text-break {
  word-break: break-word;
}
/* ========================================================================
   Component: Column
 ========================================================================== */
[class*='b01-column-'] {
  column-gap: 30px;
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  [class*='b01-column-'] {
    column-gap: 40px;
  }
}
/*
 * Fix image 1px line wrapping into the next column in Chrome
 */
[class*='b01-column-'] img {
  transform: translate3d(0, 0, 0);
}
/* Divider
 ========================================================================== */
/*
 * 1. Double the column gap
 */
.b01-column-divider {
  column-rule: 1px solid #d9d9d9;
  /* 1 */
  column-gap: 60px;
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  .b01-column-divider {
    column-gap: 80px;
  }
}
/* Width modifiers
 ========================================================================== */
.b01-column-1-2 {
  column-count: 2;
}
.b01-column-1-3 {
  column-count: 3;
}
.b01-column-1-4 {
  column-count: 4;
}
.b01-column-1-5 {
  column-count: 5;
}
.b01-column-1-6 {
  column-count: 6;
}
/* Phone landscape and bigger */
@media (min-width: 640px) {
  .b01-column-1-2\@s {
    column-count: 2;
  }
  .b01-column-1-3\@s {
    column-count: 3;
  }
  .b01-column-1-4\@s {
    column-count: 4;
  }
  .b01-column-1-5\@s {
    column-count: 5;
  }
  .b01-column-1-6\@s {
    column-count: 6;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 960px) {
  .b01-column-1-2\@m {
    column-count: 2;
  }
  .b01-column-1-3\@m {
    column-count: 3;
  }
  .b01-column-1-4\@m {
    column-count: 4;
  }
  .b01-column-1-5\@m {
    column-count: 5;
  }
  .b01-column-1-6\@m {
    column-count: 6;
  }
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  .b01-column-1-2\@l {
    column-count: 2;
  }
  .b01-column-1-3\@l {
    column-count: 3;
  }
  .b01-column-1-4\@l {
    column-count: 4;
  }
  .b01-column-1-5\@l {
    column-count: 5;
  }
  .b01-column-1-6\@l {
    column-count: 6;
  }
}
/* Large screen and bigger */
@media (min-width: 1600px) {
  .b01-column-1-2\@xl {
    column-count: 2;
  }
  .b01-column-1-3\@xl {
    column-count: 3;
  }
  .b01-column-1-4\@xl {
    column-count: 4;
  }
  .b01-column-1-5\@xl {
    column-count: 5;
  }
  .b01-column-1-6\@xl {
    column-count: 6;
  }
}
/* Make element span across all columns
 * Does not work in Firefox yet
 ========================================================================== */
.b01-column-span {
  column-span: all;
}
/* ========================================================================
   Component: Cover
 ========================================================================== */
/*
 * Works with iframes and embedded content
 * 1. Use attribute to apply transform instantly. Needed if transform is transitioned.
 * 2. Reset responsiveness for embedded content
 * 3. Center object
 * Note: Percent values on the `top` property only works if this element
 *       is absolute positioned or if the container has a height
 */
/* 1 */
[b01-cover],
[data-b01-cover] {
  /* 2 */
  max-width: none;
  /* 3 */
  position: absolute;
  left: 50%;
  top: 50%;
  --b01-position-translate-x: -50%;
  --b01-position-translate-y: -50%;
  transform: translate(var(--b01-position-translate-x), var(--b01-position-translate-y));
}
iframe[b01-cover],
iframe[data-b01-cover] {
  pointer-events: none;
}
/* Container
 ========================================================================== */
/*
 * 1. Parent container which clips resized object
 * 2. Needed if the child is positioned absolute. See note above
 */
.b01-cover-container {
  /* 1 */
  overflow: hidden;
  /* 2 */
  position: relative;
}
/* ========================================================================
   Component: Background
 ========================================================================== */
/* Color
 ========================================================================== */
.b01-background-default {
  background-color: #fff;
}
.b01-background-muted {
  background-color: #f8f8f8;
}
.b01-background-primary {
  background-color: #00b0ff;
}
.b01-background-secondary {
  background-color: #333333;
}
/* Size
 ========================================================================== */
.b01-background-cover,
.b01-background-contain,
.b01-background-width-1-1,
.b01-background-height-1-1 {
  background-position: 50% 50%;
  background-repeat: no-repeat;
}
.b01-background-cover {
  background-size: cover;
}
.b01-background-contain {
  background-size: contain;
}
.b01-background-width-1-1 {
  background-size: 100%;
}
.b01-background-height-1-1 {
  background-size: auto 100%;
}
/* Position
 ========================================================================== */
.b01-background-top-left {
  background-position: 0 0;
}
.b01-background-top-center {
  background-position: 50% 0;
}
.b01-background-top-right {
  background-position: 100% 0;
}
.b01-background-center-left {
  background-position: 0 50%;
}
.b01-background-center-center {
  background-position: 50% 50%;
}
.b01-background-center-right {
  background-position: 100% 50%;
}
.b01-background-bottom-left {
  background-position: 0 100%;
}
.b01-background-bottom-center {
  background-position: 50% 100%;
}
.b01-background-bottom-right {
  background-position: 100% 100%;
}
/* Repeat
 ========================================================================== */
.b01-background-norepeat {
  background-repeat: no-repeat;
}
/* Attachment
 ========================================================================== */
/*
 * 1. Fix bug introduced in Chrome 67: the background image is not visible if any element on the page uses `translate3d`
 */
.b01-background-fixed {
  background-attachment: fixed;
  /* 1 */
  backface-visibility: hidden;
}
/*
 * Exclude touch devices because `fixed` doesn't work on iOS and Android
 */
@media (pointer: coarse) {
  .b01-background-fixed {
    background-attachment: scroll;
  }
}
/* Image
 ========================================================================== */
/* Phone portrait and smaller */
@media (max-width: 639px) {
  .b01-background-image\@s {
    background-image: none !important;
  }
}
/* Phone landscape and smaller */
@media (max-width: 959px) {
  .b01-background-image\@m {
    background-image: none !important;
  }
}
/* Tablet landscape and smaller */
@media (max-width: 1199px) {
  .b01-background-image\@l {
    background-image: none !important;
  }
}
/* Desktop and smaller */
@media (max-width: 1599px) {
  .b01-background-image\@xl {
    background-image: none !important;
  }
}
/* Blend modes
 ========================================================================== */
.b01-background-blend-multiply {
  background-blend-mode: multiply;
}
.b01-background-blend-screen {
  background-blend-mode: screen;
}
.b01-background-blend-overlay {
  background-blend-mode: overlay;
}
.b01-background-blend-darken {
  background-blend-mode: darken;
}
.b01-background-blend-lighten {
  background-blend-mode: lighten;
}
.b01-background-blend-color-dodge {
  background-blend-mode: color-dodge;
}
.b01-background-blend-color-burn {
  background-blend-mode: color-burn;
}
.b01-background-blend-hard-light {
  background-blend-mode: hard-light;
}
.b01-background-blend-soft-light {
  background-blend-mode: soft-light;
}
.b01-background-blend-difference {
  background-blend-mode: difference;
}
.b01-background-blend-exclusion {
  background-blend-mode: exclusion;
}
.b01-background-blend-hue {
  background-blend-mode: hue;
}
.b01-background-blend-saturation {
  background-blend-mode: saturation;
}
.b01-background-blend-color {
  background-blend-mode: color;
}
.b01-background-blend-luminosity {
  background-blend-mode: luminosity;
}
/* ========================================================================
   Component: Align
 ========================================================================== */
/*
 * Default
 */
[class*='b01-align'] {
  display: block;
  margin-bottom: 30px;
}
* + [class*='b01-align'] {
  margin-top: 30px;
}
/*
 * Center
 */
.b01-align-center {
  margin-left: auto;
  margin-right: auto;
}
/*
 * Left/Right
 */
.b01-align-left {
  margin-top: 0;
  margin-right: 30px;
  float: left;
}
.b01-align-right {
  margin-top: 0;
  margin-left: 30px;
  float: right;
}
/* Phone landscape and bigger */
@media (min-width: 640px) {
  .b01-align-left\@s {
    margin-top: 0;
    margin-right: 30px;
    float: left;
  }
  .b01-align-right\@s {
    margin-top: 0;
    margin-left: 30px;
    float: right;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 960px) {
  .b01-align-left\@m {
    margin-top: 0;
    margin-right: 30px;
    float: left;
  }
  .b01-align-right\@m {
    margin-top: 0;
    margin-left: 30px;
    float: right;
  }
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  .b01-align-left\@l {
    margin-top: 0;
    float: left;
  }
  .b01-align-right\@l {
    margin-top: 0;
    float: right;
  }
  .b01-align-left,
  .b01-align-left\@s,
  .b01-align-left\@m,
  .b01-align-left\@l {
    margin-right: 40px;
  }
  .b01-align-right,
  .b01-align-right\@s,
  .b01-align-right\@m,
  .b01-align-right\@l {
    margin-left: 40px;
  }
}
/* Large screen and bigger */
@media (min-width: 1600px) {
  .b01-align-left\@xl {
    margin-top: 0;
    margin-right: 40px;
    float: left;
  }
  .b01-align-right\@xl {
    margin-top: 0;
    margin-left: 40px;
    float: right;
  }
}
/* ========================================================================
   Component: SVG
 ========================================================================== */
/*
 * 1. Fill all SVG elements with the current text color if no `fill` attribute is set
 * 2. Set the fill and stroke color of all SVG elements to the current text color
 */
/* 1 */
.b01-svg,
.b01-svg:not(.b01-preserve) [fill*='#']:not(.b01-preserve) {
  fill: currentcolor;
}
.b01-svg:not(.b01-preserve) [stroke*='#']:not(.b01-preserve) {
  stroke: currentcolor;
}
/*
 * Fix Firefox blurry SVG rendering: https://bugzilla.mozilla.org/show_bug.cgi?id=1046835
 */
.b01-svg {
  transform: translate(0, 0);
}
/* ========================================================================
   Component: Utility
 ========================================================================== */
/* Panel
 ========================================================================== */
.b01-panel {
  display: flow-root;
  position: relative;
  box-sizing: border-box;
}
/*
 * Remove margin from the last-child
 */
.b01-panel > :last-child {
  margin-bottom: 0;
}
/*
 * Scrollable
 */
.b01-panel-scrollable {
  height: 170px;
  padding: 10px;
  border: 1px solid #d9d9d9;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  resize: both;
}
/* Clearfix
 ========================================================================== */
/*
 * 1. `table-cell` is used with `::before` because `table` creates a 1px gap when it becomes a flex item, only in Webkit
 * 2. `table` is used again with `::after` because `clear` only works with block elements.
 * Note: `display: block` with `overflow: hidden` is currently not working in the latest Safari
 */
/* 1 */
.b01-clearfix::before {
  content: "";
  display: table-cell;
}
/* 2 */
.b01-clearfix::after {
  content: "";
  display: table;
  clear: both;
}
/* Float
 ========================================================================== */
/*
 * 1. Prevent content overflow
 */
.b01-float-left {
  float: left;
}
.b01-float-right {
  float: right;
}
/* 1 */
[class*='b01-float-'] {
  max-width: 100%;
}
/* Overfow
 ========================================================================== */
.b01-overflow-hidden {
  overflow: hidden;
}
/*
 * Enable scrollbars if content is clipped
 * Note: Firefox ignores `padding-bottom` for the scrollable overflow https://bugzilla.mozilla.org/show_bug.cgi?id=748518
 */
.b01-overflow-auto {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}
.b01-overflow-auto > :last-child {
  margin-bottom: 0;
}
/* Resize
 ========================================================================== */
.b01-resize {
  resize: both;
}
.b01-resize-vertical {
  resize: vertical;
}
/* Display
 ========================================================================== */
.b01-display-block {
  display: block !important;
}
.b01-display-inline {
  display: inline !important;
}
.b01-display-inline-block {
  display: inline-block !important;
}
/* Inline
 ========================================================================== */
/*
 * 1. Container fits its content
 * 2. Create position context
 * 3. Prevent content overflow
 * 4. Behave like most inline-block elements
 * 5. Force new layer without creating a new stacking context
 *    to fix 1px glitch when combined with overlays and transitions in Webkit
 * 6. Clip child elements
 */
[class*='b01-inline'] {
  /* 1 */
  display: inline-block;
  /* 2 */
  position: relative;
  /* 3 */
  max-width: 100%;
  /* 4 */
  vertical-align: middle;
  /* 5 */
  -webkit-backface-visibility: hidden;
}
.b01-inline-clip {
  /* 6 */
  overflow: hidden;
}
/* Responsive objects
 ========================================================================== */
/*
 * Preserve original dimensions
 * Because `img, `video`, `canvas` and  `audio` are already responsive by default, see Base component
 */
.b01-preserve-width,
.b01-preserve-width canvas,
.b01-preserve-width img,
.b01-preserve-width svg,
.b01-preserve-width video {
  max-width: none;
}
/*
 * Responsiveness
 * Corrects `max-width` and `max-height` behavior if padding and border are used
 */
.b01-responsive-width,
.b01-responsive-height {
  box-sizing: border-box;
}
/*
 * 1. Set a maximum width. `important` needed to override `b01-preserve-width img`
 * 2. Auto scale the height. Only needed if `height` attribute is present
 */
.b01-responsive-width {
  /* 1 */
  max-width: 100% !important;
  /* 2 */
  height: auto;
}
/*
 * 1. Set a maximum height. Only works if the parent element has a fixed height
 * 2. Auto scale the width. Only needed if `width` attribute is present
 * 3. Reset max-width, which `img, `video`, `canvas` and  `audio` already have by default
 */
.b01-responsive-height {
  /* 1 */
  max-height: 100%;
  /* 2 */
  width: auto;
  /* 3 */
  max-width: none;
}
/*
 * Fix initial iframe width. Without the viewport is expanded on iOS devices
 */
[b01-responsive],
[data-b01-responsive] {
  max-width: 100%;
}
/* Object
 ========================================================================== */
.b01-object-cover {
  object-fit: cover;
}
.b01-object-contain {
  object-fit: contain;
}
.b01-object-fill {
  object-fit: fill;
}
.b01-object-none {
  object-fit: none;
}
.b01-object-scale-down {
  object-fit: scale-down;
}
/* 
 * Position
 */
.b01-object-top-left {
  object-position: 0 0;
}
.b01-object-top-center {
  object-position: 50% 0;
}
.b01-object-top-right {
  object-position: 100% 0;
}
.b01-object-center-left {
  object-position: 0 50%;
}
.b01-object-center-center {
  object-position: 50% 50%;
}
.b01-object-center-right {
  object-position: 100% 50%;
}
.b01-object-bottom-left {
  object-position: 0 100%;
}
.b01-object-bottom-center {
  object-position: 50% 100%;
}
.b01-object-bottom-right {
  object-position: 100% 100%;
}
/* Border
 ========================================================================== */
.b01-border-circle {
  border-radius: 50%;
}
.b01-border-pill {
  border-radius: 500px;
}
.b01-border-rounded {
  border-radius: 5px;
}
/*
 * Fix `overflow: hidden` to be ignored with border-radius and CSS transforms in Webkit
 */
.b01-inline-clip[class*='b01-border-'] {
  -webkit-transform: translateZ(0);
}
/* Box-shadow
 ========================================================================== */
.b01-box-shadow-small {
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.12);
}
.b01-box-shadow-medium {
  box-shadow: 0px 1px 1px 2px rgba(0, 0, 0, 0.15);
}
.b01-box-shadow-large {
  box-shadow: 1px 6px 8px rgba(0, 0, 0, 0.16);
}
.b01-box-shadow-xlarge {
  box-shadow: 1px 28px 50px rgba(0, 0, 0, 0.16);
}
/*
 * Hover
 */
[class*='b01-box-shadow-hover'] {
  transition: box-shadow 0.1s ease-in-out;
}
.b01-box-shadow-hover-small:hover {
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.12);
}
.b01-box-shadow-hover-medium:hover {
  box-shadow: 0px 1px 1px 2px rgba(0, 0, 0, 0.15);
}
.b01-box-shadow-hover-large:hover {
  box-shadow: 1px 6px 8px rgba(0, 0, 0, 0.16);
}
.b01-box-shadow-hover-xlarge:hover {
  box-shadow: 1px 28px 50px rgba(0, 0, 0, 0.16);
}
/* Box-shadow bottom
 ========================================================================== */
/*
 * 1. Set position.
 * 2. Set style
 * 3. Fix shadow being clipped in Safari if container is animated
 */
@supports (filter: blur(0)) {
  .b01-box-shadow-bottom {
    display: inline-block;
    position: relative;
    z-index: 0;
    max-width: 100%;
    vertical-align: middle;
  }
  .b01-box-shadow-bottom::after {
    content: "";
    /* 1 */
    position: absolute;
    bottom: -30px;
    left: 0;
    right: 0;
    z-index: -1;
    /* 2 */
    height: 30px;
    border-radius: 100%;
    background: #444;
    filter: blur(20px);
    /* 3 */
    will-change: filter;
  }
}
/* Drop cap
 ========================================================================== */
/*
 * 1. Firefox doesn't apply `::first-letter` if the first letter is inside child elements
 *    https://bugzilla.mozilla.org/show_bug.cgi?id=214004
 * 2. In Firefox, a floating `::first-letter` doesn't have a line box and there for no `line-height`
 *    https://bugzilla.mozilla.org/show_bug.cgi?id=317933
 */
.b01-dropcap::first-letter,
.b01-dropcap > p:first-of-type::first-letter {
  display: block;
  margin-right: 10px;
  float: left;
  font-size: 4.5em;
  line-height: 1;
  margin-bottom: -2px;
}
/* 2 */
@-moz-document url-prefix() {
  .b01-dropcap::first-letter,
  .b01-dropcap > p:first-of-type::first-letter {
    margin-top: 1.1%;
  }
}
/* Logo
 ========================================================================== */
/*
 * 1. Required for `a`
 */
.b01-logo {
  font-size: 1.3rem;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  color: #333;
  /* 1 */
  text-decoration: none;
}
/* Hover */
.b01-logo:hover {
  color: #333;
  /* 1 */
  text-decoration: none;
}
.b01-logo > :where(img, svg, video) {
  display: block;
}
.b01-logo-inverse {
  display: none;
}
/* Disabled State
 ========================================================================== */
.b01-disabled {
  pointer-events: none;
}
/* Drag State
 ========================================================================== */
/*
 * 1. Needed if moving over elements with have their own cursor on hover, e.g. links or buttons
 * 2. Fix dragging over iframes
 */
.b01-drag,
.b01-drag * {
  cursor: move;
}
/* 2 */
.b01-drag iframe {
  pointer-events: none;
}
/* Dragover State
 ========================================================================== */
/*
 * Create a box-shadow when dragging a file over the upload area
 */
.b01-dragover {
  box-shadow: 0 0 20px rgba(100, 100, 100, 0.3);
}
/* Blend modes
 ========================================================================== */
.b01-blend-multiply {
  mix-blend-mode: multiply;
}
.b01-blend-screen {
  mix-blend-mode: screen;
}
.b01-blend-overlay {
  mix-blend-mode: overlay;
}
.b01-blend-darken {
  mix-blend-mode: darken;
}
.b01-blend-lighten {
  mix-blend-mode: lighten;
}
.b01-blend-color-dodge {
  mix-blend-mode: color-dodge;
}
.b01-blend-color-burn {
  mix-blend-mode: color-burn;
}
.b01-blend-hard-light {
  mix-blend-mode: hard-light;
}
.b01-blend-soft-light {
  mix-blend-mode: soft-light;
}
.b01-blend-difference {
  mix-blend-mode: difference;
}
.b01-blend-exclusion {
  mix-blend-mode: exclusion;
}
.b01-blend-hue {
  mix-blend-mode: hue;
}
.b01-blend-saturation {
  mix-blend-mode: saturation;
}
.b01-blend-color {
  mix-blend-mode: color;
}
.b01-blend-luminosity {
  mix-blend-mode: luminosity;
}
/* Transform
========================================================================== */
.b01-transform-center {
  transform: translate(-50%, -50%);
}
/* Transform Origin
========================================================================== */
.b01-transform-origin-top-left {
  transform-origin: 0 0;
}
.b01-transform-origin-top-center {
  transform-origin: 50% 0;
}
.b01-transform-origin-top-right {
  transform-origin: 100% 0;
}
.b01-transform-origin-center-left {
  transform-origin: 0 50%;
}
.b01-transform-origin-center-right {
  transform-origin: 100% 50%;
}
.b01-transform-origin-bottom-left {
  transform-origin: 0 100%;
}
.b01-transform-origin-bottom-center {
  transform-origin: 50% 100%;
}
.b01-transform-origin-bottom-right {
  transform-origin: 100% 100%;
}
/* ========================================================================
   Component: Flex
 ========================================================================== */
.b01-flex {
  display: flex;
}
.b01-flex-inline {
  display: inline-flex;
}
/* Alignment
 ========================================================================== */
/*
 * Align items along the main axis of the current line of the flex container
 * Row: Horizontal
 */
.b01-flex-left {
  justify-content: flex-start;
}
.b01-flex-center {
  justify-content: center;
}
.b01-flex-right {
  justify-content: flex-end;
}
.b01-flex-between {
  justify-content: space-between;
}
.b01-flex-around {
  justify-content: space-around;
}
/* Phone landscape and bigger */
@media (min-width: 640px) {
  .b01-flex-left\@s {
    justify-content: flex-start;
  }
  .b01-flex-center\@s {
    justify-content: center;
  }
  .b01-flex-right\@s {
    justify-content: flex-end;
  }
  .b01-flex-between\@s {
    justify-content: space-between;
  }
  .b01-flex-around\@s {
    justify-content: space-around;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 960px) {
  .b01-flex-left\@m {
    justify-content: flex-start;
  }
  .b01-flex-center\@m {
    justify-content: center;
  }
  .b01-flex-right\@m {
    justify-content: flex-end;
  }
  .b01-flex-between\@m {
    justify-content: space-between;
  }
  .b01-flex-around\@m {
    justify-content: space-around;
  }
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  .b01-flex-left\@l {
    justify-content: flex-start;
  }
  .b01-flex-center\@l {
    justify-content: center;
  }
  .b01-flex-right\@l {
    justify-content: flex-end;
  }
  .b01-flex-between\@l {
    justify-content: space-between;
  }
  .b01-flex-around\@l {
    justify-content: space-around;
  }
}
/* Large screen and bigger */
@media (min-width: 1600px) {
  .b01-flex-left\@xl {
    justify-content: flex-start;
  }
  .b01-flex-center\@xl {
    justify-content: center;
  }
  .b01-flex-right\@xl {
    justify-content: flex-end;
  }
  .b01-flex-between\@xl {
    justify-content: space-between;
  }
  .b01-flex-around\@xl {
    justify-content: space-around;
  }
}
/*
 * Align items in the cross axis of the current line of the flex container
 * Row: Vertical
 */
.b01-flex-stretch {
  align-items: stretch;
}
.b01-flex-top {
  align-items: flex-start;
}
.b01-flex-middle {
  align-items: center;
}
.b01-flex-bottom {
  align-items: flex-end;
}
/* Direction
 ========================================================================== */
.b01-flex-row {
  flex-direction: row;
}
.b01-flex-row-reverse {
  flex-direction: row-reverse;
}
.b01-flex-column {
  flex-direction: column;
}
.b01-flex-column-reverse {
  flex-direction: column-reverse;
}
/* Wrap
 ========================================================================== */
.b01-flex-nowrap {
  flex-wrap: nowrap;
}
.b01-flex-wrap {
  flex-wrap: wrap;
}
.b01-flex-wrap-reverse {
  flex-wrap: wrap-reverse;
}
/*
 * Aligns items within the flex container when there is extra space in the cross-axis
 * Only works if there is more than one line of flex items
 */
.b01-flex-wrap-stretch {
  align-content: stretch;
}
.b01-flex-wrap-top {
  align-content: flex-start;
}
.b01-flex-wrap-middle {
  align-content: center;
}
.b01-flex-wrap-bottom {
  align-content: flex-end;
}
.b01-flex-wrap-between {
  align-content: space-between;
}
.b01-flex-wrap-around {
  align-content: space-around;
}
/* Item ordering
 ========================================================================== */
/*
 * Default is 0
 */
.b01-flex-first {
  order: -1;
}
.b01-flex-last {
  order: 99;
}
/* Phone landscape and bigger */
@media (min-width: 640px) {
  .b01-flex-first\@s {
    order: -1;
  }
  .b01-flex-last\@s {
    order: 99;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 960px) {
  .b01-flex-first\@m {
    order: -1;
  }
  .b01-flex-last\@m {
    order: 99;
  }
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  .b01-flex-first\@l {
    order: -1;
  }
  .b01-flex-last\@l {
    order: 99;
  }
}
/* Large screen and bigger */
@media (min-width: 1600px) {
  .b01-flex-first\@xl {
    order: -1;
  }
  .b01-flex-last\@xl {
    order: 99;
  }
}
/* Item dimensions
 ========================================================================== */
/*
 * Initial: 0 1 auto
 * Content dimensions, but shrinks
 */
/*
 * No Flex: 0 0 auto
 * Content dimensions
 */
.b01-flex-none {
  flex: none;
}
/*
 * Relative Flex: 1 1 auto
 * Space is allocated considering content
 */
.b01-flex-auto {
  flex: auto;
}
/*
 * Absolute Flex: 1 1 0%
 * Space is allocated solely based on flex
 */
.b01-flex-1 {
  flex: 1;
}
/* ========================================================================
   Component: Margin
 ========================================================================== */
/*
 * Default
 */
.b01-margin {
  margin-bottom: 20px;
}
* + .b01-margin {
  margin-top: 20px !important;
}
.b01-margin-top {
  margin-top: 20px !important;
}
.b01-margin-bottom {
  margin-bottom: 20px !important;
}
.b01-margin-left {
  margin-left: 20px !important;
}
.b01-margin-right {
  margin-right: 20px !important;
}
/* Small
 ========================================================================== */
.b01-margin-small {
  margin-bottom: 10px;
}
* + .b01-margin-small {
  margin-top: 10px !important;
}
.b01-margin-small-top {
  margin-top: 10px !important;
}
.b01-margin-small-bottom {
  margin-bottom: 10px !important;
}
.b01-margin-small-left {
  margin-left: 10px !important;
}
.b01-margin-small-right {
  margin-right: 10px !important;
}
/* Medium
 ========================================================================== */
.b01-margin-medium {
  margin-bottom: 40px;
}
* + .b01-margin-medium {
  margin-top: 40px !important;
}
.b01-margin-medium-top {
  margin-top: 40px !important;
}
.b01-margin-medium-bottom {
  margin-bottom: 40px !important;
}
.b01-margin-medium-left {
  margin-left: 40px !important;
}
.b01-margin-medium-right {
  margin-right: 40px !important;
}
/* Large
 ========================================================================== */
.b01-margin-large {
  margin-bottom: 40px;
}
* + .b01-margin-large {
  margin-top: 40px !important;
}
.b01-margin-large-top {
  margin-top: 40px !important;
}
.b01-margin-large-bottom {
  margin-bottom: 40px !important;
}
.b01-margin-large-left {
  margin-left: 40px !important;
}
.b01-margin-large-right {
  margin-right: 40px !important;
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  .b01-margin-large {
    margin-bottom: 70px;
  }
  * + .b01-margin-large {
    margin-top: 70px !important;
  }
  .b01-margin-large-top {
    margin-top: 70px !important;
  }
  .b01-margin-large-bottom {
    margin-bottom: 70px !important;
  }
  .b01-margin-large-left {
    margin-left: 70px !important;
  }
  .b01-margin-large-right {
    margin-right: 70px !important;
  }
}
/* XLarge
 ========================================================================== */
.b01-margin-xlarge {
  margin-bottom: 70px;
}
* + .b01-margin-xlarge {
  margin-top: 70px !important;
}
.b01-margin-xlarge-top {
  margin-top: 70px !important;
}
.b01-margin-xlarge-bottom {
  margin-bottom: 70px !important;
}
.b01-margin-xlarge-left {
  margin-left: 70px !important;
}
.b01-margin-xlarge-right {
  margin-right: 70px !important;
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  .b01-margin-xlarge {
    margin-bottom: 140px;
  }
  * + .b01-margin-xlarge {
    margin-top: 140px !important;
  }
  .b01-margin-xlarge-top {
    margin-top: 140px !important;
  }
  .b01-margin-xlarge-bottom {
    margin-bottom: 140px !important;
  }
  .b01-margin-xlarge-left {
    margin-left: 140px !important;
  }
  .b01-margin-xlarge-right {
    margin-right: 140px !important;
  }
}
/* Auto
 ========================================================================== */
.b01-margin-auto {
  margin-left: auto !important;
  margin-right: auto !important;
}
.b01-margin-auto-top {
  margin-top: auto !important;
}
.b01-margin-auto-bottom {
  margin-bottom: auto !important;
}
.b01-margin-auto-left {
  margin-left: auto !important;
}
.b01-margin-auto-right {
  margin-right: auto !important;
}
.b01-margin-auto-vertical {
  margin-top: auto !important;
  margin-bottom: auto !important;
}
/* Phone landscape and bigger */
@media (min-width: 640px) {
  .b01-margin-auto\@s {
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .b01-margin-auto-left\@s {
    margin-left: auto !important;
  }
  .b01-margin-auto-right\@s {
    margin-right: auto !important;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 960px) {
  .b01-margin-auto\@m {
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .b01-margin-auto-left\@m {
    margin-left: auto !important;
  }
  .b01-margin-auto-right\@m {
    margin-right: auto !important;
  }
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  .b01-margin-auto\@l {
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .b01-margin-auto-left\@l {
    margin-left: auto !important;
  }
  .b01-margin-auto-right\@l {
    margin-right: auto !important;
  }
}
/* Large screen and bigger */
@media (min-width: 1600px) {
  .b01-margin-auto\@xl {
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .b01-margin-auto-left\@xl {
    margin-left: auto !important;
  }
  .b01-margin-auto-right\@xl {
    margin-right: auto !important;
  }
}
/* Remove
 ========================================================================== */
.b01-margin-remove {
  margin: 0 !important;
}
.b01-margin-remove-top {
  margin-top: 0 !important;
}
.b01-margin-remove-bottom {
  margin-bottom: 0 !important;
}
.b01-margin-remove-left {
  margin-left: 0 !important;
}
.b01-margin-remove-right {
  margin-right: 0 !important;
}
.b01-margin-remove-vertical {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.b01-margin-remove-adjacent + *,
.b01-margin-remove-first-child > :first-child {
  margin-top: 0 !important;
}
.b01-margin-remove-last-child > :last-child {
  margin-bottom: 0 !important;
}
/* Phone landscape and bigger */
@media (min-width: 640px) {
  .b01-margin-remove-left\@s {
    margin-left: 0 !important;
  }
  .b01-margin-remove-right\@s {
    margin-right: 0 !important;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 960px) {
  .b01-margin-remove-left\@m {
    margin-left: 0 !important;
  }
  .b01-margin-remove-right\@m {
    margin-right: 0 !important;
  }
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  .b01-margin-remove-left\@l {
    margin-left: 0 !important;
  }
  .b01-margin-remove-right\@l {
    margin-right: 0 !important;
  }
}
/* Large screen and bigger */
@media (min-width: 1600px) {
  .b01-margin-remove-left\@xl {
    margin-left: 0 !important;
  }
  .b01-margin-remove-right\@xl {
    margin-right: 0 !important;
  }
}
/* ========================================================================
   Component: Padding
 ========================================================================== */
.b01-padding {
  padding: 30px;
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  .b01-padding {
    padding: 40px;
  }
}
/* Small
 ========================================================================== */
.b01-padding-small {
  padding: 15px;
}
/* Large
 ========================================================================== */
.b01-padding-large {
  padding: 40px;
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  .b01-padding-large {
    padding: 70px;
  }
}
/* Remove
 ========================================================================== */
.b01-padding-remove {
  padding: 0 !important;
}
.b01-padding-remove-top {
  padding-top: 0 !important;
}
.b01-padding-remove-bottom {
  padding-bottom: 0 !important;
}
.b01-padding-remove-left {
  padding-left: 0 !important;
}
.b01-padding-remove-right {
  padding-right: 0 !important;
}
.b01-padding-remove-vertical {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
.b01-padding-remove-horizontal {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
/* ========================================================================
   Component: Position
 ========================================================================== */
:root {
  --b01-position-margin-offset: 0px;
}
/* Directions
 ========================================================================== */
/*
 * 1. Prevent content overflow.
 */
[class*='b01-position-top'],
[class*='b01-position-bottom'],
[class*='b01-position-left'],
[class*='b01-position-right'],
[class*='b01-position-center'] {
  position: absolute !important;
  /* 1 */
  max-width: calc(100% - (var(--b01-position-margin-offset) * 2));
  box-sizing: border-box;
}
/*
 * Edges
 * Don't use `width: 100%` because it's wrong if the parent has padding.
 */
.b01-position-top {
  top: 0;
  left: 0;
  right: 0;
}
.b01-position-bottom {
  bottom: 0;
  left: 0;
  right: 0;
}
.b01-position-left {
  top: 0;
  bottom: 0;
  left: 0;
}
.b01-position-right {
  top: 0;
  bottom: 0;
  right: 0;
}
/*
 * Corners
 */
.b01-position-top-left {
  top: 0;
  left: 0;
}
.b01-position-top-right {
  top: 0;
  right: 0;
}
.b01-position-bottom-left {
  bottom: 0;
  left: 0;
}
.b01-position-bottom-right {
  bottom: 0;
  right: 0;
}
/*
 * Center
 * 1. Fix text wrapping if content is larger than 50% of the container.
 *    Using `max-content` requires `max-width` of 100% which is set generally.
 */
.b01-position-center {
  top: calc(50% - var(--b01-position-margin-offset));
  left: calc(50% - var(--b01-position-margin-offset));
  --b01-position-translate-x: -50%;
  --b01-position-translate-y: -50%;
  transform: translate(var(--b01-position-translate-x), var(--b01-position-translate-y));
  /* 1 */
  width: max-content;
}
/* Vertical */
[class*='b01-position-center-left'],
[class*='b01-position-center-right'] {
  top: calc(50% - var(--b01-position-margin-offset));
  --b01-position-translate-y: -50%;
  transform: translate(0, var(--b01-position-translate-y));
}
.b01-position-center-left {
  left: 0;
}
.b01-position-center-right {
  right: 0;
}
.b01-position-center-left-out {
  right: 100%;
  width: max-content;
}
.b01-position-center-right-out {
  left: 100%;
  width: max-content;
}
/* Horizontal */
.b01-position-top-center,
.b01-position-bottom-center {
  left: calc(50% - var(--b01-position-margin-offset));
  --b01-position-translate-x: -50%;
  transform: translate(var(--b01-position-translate-x), 0);
  /* 1 */
  width: max-content;
}
.b01-position-top-center {
  top: 0;
}
.b01-position-bottom-center {
  bottom: 0;
}
/*
 * Cover
 */
.b01-position-cover {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
/* Margin
 ========================================================================== */
.b01-position-small {
  margin: 15px;
  --b01-position-margin-offset: 15px;
}
.b01-position-medium {
  margin: 30px;
  --b01-position-margin-offset: 30px;
}
.b01-position-large {
  margin: 30px;
  --b01-position-margin-offset: 30px;
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  .b01-position-large {
    margin: 50px;
    --b01-position-margin-offset: 50px;
  }
}
/* Schemes
 ========================================================================== */
.b01-position-relative {
  position: relative  !important;
}
.b01-position-absolute {
  position: absolute  !important;
}
.b01-position-fixed {
  position: fixed  !important;
}
.b01-position-sticky {
  position: sticky  !important;
}
/* Layer
 ========================================================================== */
.b01-position-z-index {
  z-index: 1;
}
.b01-position-z-index-negative {
  z-index: -1;
}
/* ========================================================================
   Component: Transition
 ========================================================================== */
/* Transitions
 ========================================================================== */
/*
 * The toggle is triggered on touch devices by two methods:
 * 1. Using `:focus` and tabindex
 * 2. Using `:hover` and a `touchstart` event listener registered on the document
 *    (Doesn't work on Surface touch devices)
 */
:where(.b01-transition-fade),
:where([class*='b01-transition-scale']),
:where([class*='b01-transition-slide']) {
  --b01-position-translate-x: 0;
  --b01-position-translate-y: 0;
}
.b01-transition-fade,
[class*='b01-transition-scale'],
[class*='b01-transition-slide'] {
  --b01-translate-x: 0;
  --b01-translate-y: 0;
  --b01-scale-x: 1;
  --b01-scale-y: 1;
  transform: translate(var(--b01-position-translate-x), var(--b01-position-translate-y)) translate(var(--b01-translate-x), var(--b01-translate-y)) scale(var(--b01-scale-x), var(--b01-scale-y));
  transition: 0.4s ease-out;
  transition-property: opacity, transform, filter;
  opacity: 0;
}
/*
 * Fade
 */
.b01-transition-toggle:hover .b01-transition-fade,
.b01-transition-toggle:focus .b01-transition-fade,
.b01-transition-toggle .b01-transition-fade:focus-within,
.b01-transition-active.b01-active .b01-transition-fade {
  opacity: 1;
}
/*
 * Scale
 * 1. Make image rendering the same during the transition as before and after. Prefixed because of Safari.
 */
/* 1 */
[class*='b01-transition-scale'] {
  -webkit-backface-visibility: hidden;
}
.b01-transition-scale-up {
  --b01-scale-x: 1;
  --b01-scale-y: 1;
}
.b01-transition-scale-down {
  --b01-scale-x: 1.08;
  --b01-scale-y: 1.08;
}
/* Show */
.b01-transition-toggle:hover .b01-transition-scale-up,
.b01-transition-toggle:focus .b01-transition-scale-up,
.b01-transition-toggle .b01-transition-scale-up:focus-within,
.b01-transition-active.b01-active .b01-transition-scale-up {
  --b01-scale-x: 1.08;
  --b01-scale-y: 1.08;
  opacity: 1;
}
.b01-transition-toggle:hover .b01-transition-scale-down,
.b01-transition-toggle:focus .b01-transition-scale-down,
.b01-transition-toggle .b01-transition-scale-down:focus-within,
.b01-transition-active.b01-active .b01-transition-scale-down {
  --b01-scale-x: 1;
  --b01-scale-y: 1;
  opacity: 1;
}
/*
 * Slide
 */
.b01-transition-slide-top {
  --b01-translate-y: -100%;
}
.b01-transition-slide-bottom {
  --b01-translate-y: 100%;
}
.b01-transition-slide-left {
  --b01-translate-x: -100%;
}
.b01-transition-slide-right {
  --b01-translate-x: 100%;
}
.b01-transition-slide-top-small {
  --b01-translate-y: calc(-1 * 10px);
}
.b01-transition-slide-bottom-small {
  --b01-translate-y: 10px;
}
.b01-transition-slide-left-small {
  --b01-translate-x: calc(-1 * 10px);
}
.b01-transition-slide-right-small {
  --b01-translate-x: 10px;
}
.b01-transition-slide-top-medium {
  --b01-translate-y: calc(-1 * 50px);
}
.b01-transition-slide-bottom-medium {
  --b01-translate-y: 50px;
}
.b01-transition-slide-left-medium {
  --b01-translate-x: calc(-1 * 50px);
}
.b01-transition-slide-right-medium {
  --b01-translate-x: 50px;
}
/* Show */
.b01-transition-toggle:hover [class*='b01-transition-slide'],
.b01-transition-toggle:focus [class*='b01-transition-slide'],
.b01-transition-toggle [class*='b01-transition-slide']:focus-within,
.b01-transition-active.b01-active [class*='b01-transition-slide'] {
  --b01-translate-x: 0;
  --b01-translate-y: 0;
  opacity: 1;
}
/* Opacity modifier
 ========================================================================== */
.b01-transition-opaque {
  opacity: 1;
}
/* Duration modifiers
 ========================================================================== */
.b01-transition-slow {
  transition-duration: 0.7s;
}
/* ========================================================================
   Component: Visibility
 ========================================================================== */
/*
 * Hidden
 * `hidden` attribute also set here to make it stronger
 */
[hidden],
.b01-hidden {
  display: none !important;
}
/* Phone landscape and bigger */
@media (min-width: 640px) {
  .b01-hidden\@s {
    display: none !important;
  }
}
/* Tablet landscape and bigger */
@media (min-width: 960px) {
  .b01-hidden\@m {
    display: none !important;
  }
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  .b01-hidden\@l {
    display: none !important;
  }
}
/* Large screen and bigger */
@media (min-width: 1600px) {
  .b01-hidden\@xl {
    display: none !important;
  }
}
/*
 * Visible
 */
/* Phone portrait and smaller */
@media (max-width: 639px) {
  .b01-visible\@s {
    display: none !important;
  }
}
/* Phone landscape and smaller */
@media (max-width: 959px) {
  .b01-visible\@m {
    display: none !important;
  }
}
/* Tablet landscape and smaller */
@media (max-width: 1199px) {
  .b01-visible\@l {
    display: none !important;
  }
}
/* Desktop and smaller */
@media (max-width: 1599px) {
  .b01-visible\@xl {
    display: none !important;
  }
}
/* Visibility
 ========================================================================== */
.b01-invisible {
  visibility: hidden !important;
}
/* Based on the State of the Parent Element
 ========================================================================== */
/*
 * Can't use `display: none` nor `visibility: hidden` because both are not focusable.
 * The target stays visible if any element within receives focus through keyboard.
 */
/*
 * Discard space when hidden.
 */
.b01-visible-toggle:not(:hover):not(:focus) .b01-hidden-hover:not(:focus-within) {
  position: absolute !important;
  width: 0 !important;
  height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
}
/*
 * Keep space when hidden.
 */
.b01-visible-toggle:not(:hover):not(:focus) .b01-invisible-hover:not(:focus-within) {
  opacity: 0 !important;
}
/* Based on Hover Capability of the Pointing Device
 ========================================================================== */
/*
 * Hover
 */
/* Hide if primary pointing device doesn't support hover, e.g. touch screens. */
@media (hover: none) {
  .b01-hidden-touch {
    display: none !important;
  }
}
/* Hide if primary pointing device supports hover, e.g. mice. */
@media (hover) {
  .b01-hidden-notouch {
    display: none !important;
  }
}
/* ========================================================================
   Component: Inverse
 ========================================================================== */
/*
 * Implemented class depends on the general theme color
 * `b01-light` is for light colors on dark backgrounds
 * `b01-dark` is or dark colors on light backgrounds
 */
.b01-light,
.b01-tile-primary:not(.b01-preserve-color),
.b01-tile-secondary:not(.b01-preserve-color),
.b01-card-primary.b01-card-body,
.b01-card-primary > :not([class*='b01-card-media']),
.b01-card-secondary.b01-card-body,
.b01-card-secondary > :not([class*='b01-card-media']),
.b01-overlay-primary,
.b01-offcanvas-bar {
  color: rgba(255, 255, 255, 0.9);
}
.b01-light a,
.b01-light .b01-link,
.b01-tile-primary:not(.b01-preserve-color) a,
.b01-tile-primary:not(.b01-preserve-color) .b01-link,
.b01-tile-secondary:not(.b01-preserve-color) a,
.b01-tile-secondary:not(.b01-preserve-color) .b01-link,
.b01-card-primary.b01-card-body a,
.b01-card-primary.b01-card-body .b01-link,
.b01-card-primary > :not([class*='b01-card-media']) a,
.b01-card-primary > :not([class*='b01-card-media']) .b01-link,
.b01-card-secondary.b01-card-body a,
.b01-card-secondary.b01-card-body .b01-link,
.b01-card-secondary > :not([class*='b01-card-media']) a,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-link,
.b01-overlay-primary a,
.b01-overlay-primary .b01-link,
.b01-offcanvas-bar a,
.b01-offcanvas-bar .b01-link {
  color: #fff;
}
.b01-light a:hover,
.b01-light .b01-link:hover,
.b01-light .b01-link-toggle:hover .b01-link,
.b01-tile-primary:not(.b01-preserve-color) a:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-link:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-link-toggle:hover .b01-link,
.b01-tile-secondary:not(.b01-preserve-color) a:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-link:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-link-toggle:hover .b01-link,
.b01-card-primary.b01-card-body a:hover,
.b01-card-primary.b01-card-body .b01-link:hover,
.b01-card-primary.b01-card-body .b01-link-toggle:hover .b01-link,
.b01-card-primary > :not([class*='b01-card-media']) a:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-link:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-link-toggle:hover .b01-link,
.b01-card-secondary.b01-card-body a:hover,
.b01-card-secondary.b01-card-body .b01-link:hover,
.b01-card-secondary.b01-card-body .b01-link-toggle:hover .b01-link,
.b01-card-secondary > :not([class*='b01-card-media']) a:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-link:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-link-toggle:hover .b01-link,
.b01-overlay-primary a:hover,
.b01-overlay-primary .b01-link:hover,
.b01-overlay-primary .b01-link-toggle:hover .b01-link,
.b01-offcanvas-bar a:hover,
.b01-offcanvas-bar .b01-link:hover,
.b01-offcanvas-bar .b01-link-toggle:hover .b01-link {
  color: #fff;
}
.b01-light :not(pre) > code,
.b01-light :not(pre) > kbd,
.b01-light :not(pre) > samp,
.b01-tile-primary:not(.b01-preserve-color) :not(pre) > code,
.b01-tile-primary:not(.b01-preserve-color) :not(pre) > kbd,
.b01-tile-primary:not(.b01-preserve-color) :not(pre) > samp,
.b01-tile-secondary:not(.b01-preserve-color) :not(pre) > code,
.b01-tile-secondary:not(.b01-preserve-color) :not(pre) > kbd,
.b01-tile-secondary:not(.b01-preserve-color) :not(pre) > samp,
.b01-card-primary.b01-card-body :not(pre) > code,
.b01-card-primary.b01-card-body :not(pre) > kbd,
.b01-card-primary.b01-card-body :not(pre) > samp,
.b01-card-primary > :not([class*='b01-card-media']) :not(pre) > code,
.b01-card-primary > :not([class*='b01-card-media']) :not(pre) > kbd,
.b01-card-primary > :not([class*='b01-card-media']) :not(pre) > samp,
.b01-card-secondary.b01-card-body :not(pre) > code,
.b01-card-secondary.b01-card-body :not(pre) > kbd,
.b01-card-secondary.b01-card-body :not(pre) > samp,
.b01-card-secondary > :not([class*='b01-card-media']) :not(pre) > code,
.b01-card-secondary > :not([class*='b01-card-media']) :not(pre) > kbd,
.b01-card-secondary > :not([class*='b01-card-media']) :not(pre) > samp,
.b01-overlay-primary :not(pre) > code,
.b01-overlay-primary :not(pre) > kbd,
.b01-overlay-primary :not(pre) > samp,
.b01-offcanvas-bar :not(pre) > code,
.b01-offcanvas-bar :not(pre) > kbd,
.b01-offcanvas-bar :not(pre) > samp {
  color: rgba(255, 255, 255, 0.9);
  background: rgba(255, 255, 255, 0.3);
}
.b01-light em,
.b01-tile-primary:not(.b01-preserve-color) em,
.b01-tile-secondary:not(.b01-preserve-color) em,
.b01-card-primary.b01-card-body em,
.b01-card-primary > :not([class*='b01-card-media']) em,
.b01-card-secondary.b01-card-body em,
.b01-card-secondary > :not([class*='b01-card-media']) em,
.b01-overlay-primary em,
.b01-offcanvas-bar em {
  color: #fff;
}
.b01-light h1,
.b01-light .b01-h1,
.b01-light h2,
.b01-light .b01-h2,
.b01-light h3,
.b01-light .b01-h3,
.b01-light h4,
.b01-light .b01-h4,
.b01-light h5,
.b01-light .b01-h5,
.b01-light h6,
.b01-light .b01-h6,
.b01-light .b01-heading-small,
.b01-light .b01-heading-medium,
.b01-light .b01-heading-large,
.b01-light .b01-heading-xlarge,
.b01-light .b01-heading-2xlarge,
.b01-tile-primary:not(.b01-preserve-color) h1,
.b01-tile-primary:not(.b01-preserve-color) .b01-h1,
.b01-tile-primary:not(.b01-preserve-color) h2,
.b01-tile-primary:not(.b01-preserve-color) .b01-h2,
.b01-tile-primary:not(.b01-preserve-color) h3,
.b01-tile-primary:not(.b01-preserve-color) .b01-h3,
.b01-tile-primary:not(.b01-preserve-color) h4,
.b01-tile-primary:not(.b01-preserve-color) .b01-h4,
.b01-tile-primary:not(.b01-preserve-color) h5,
.b01-tile-primary:not(.b01-preserve-color) .b01-h5,
.b01-tile-primary:not(.b01-preserve-color) h6,
.b01-tile-primary:not(.b01-preserve-color) .b01-h6,
.b01-tile-primary:not(.b01-preserve-color) .b01-heading-small,
.b01-tile-primary:not(.b01-preserve-color) .b01-heading-medium,
.b01-tile-primary:not(.b01-preserve-color) .b01-heading-large,
.b01-tile-primary:not(.b01-preserve-color) .b01-heading-xlarge,
.b01-tile-primary:not(.b01-preserve-color) .b01-heading-2xlarge,
.b01-tile-secondary:not(.b01-preserve-color) h1,
.b01-tile-secondary:not(.b01-preserve-color) .b01-h1,
.b01-tile-secondary:not(.b01-preserve-color) h2,
.b01-tile-secondary:not(.b01-preserve-color) .b01-h2,
.b01-tile-secondary:not(.b01-preserve-color) h3,
.b01-tile-secondary:not(.b01-preserve-color) .b01-h3,
.b01-tile-secondary:not(.b01-preserve-color) h4,
.b01-tile-secondary:not(.b01-preserve-color) .b01-h4,
.b01-tile-secondary:not(.b01-preserve-color) h5,
.b01-tile-secondary:not(.b01-preserve-color) .b01-h5,
.b01-tile-secondary:not(.b01-preserve-color) h6,
.b01-tile-secondary:not(.b01-preserve-color) .b01-h6,
.b01-tile-secondary:not(.b01-preserve-color) .b01-heading-small,
.b01-tile-secondary:not(.b01-preserve-color) .b01-heading-medium,
.b01-tile-secondary:not(.b01-preserve-color) .b01-heading-large,
.b01-tile-secondary:not(.b01-preserve-color) .b01-heading-xlarge,
.b01-tile-secondary:not(.b01-preserve-color) .b01-heading-2xlarge,
.b01-card-primary.b01-card-body h1,
.b01-card-primary.b01-card-body .b01-h1,
.b01-card-primary.b01-card-body h2,
.b01-card-primary.b01-card-body .b01-h2,
.b01-card-primary.b01-card-body h3,
.b01-card-primary.b01-card-body .b01-h3,
.b01-card-primary.b01-card-body h4,
.b01-card-primary.b01-card-body .b01-h4,
.b01-card-primary.b01-card-body h5,
.b01-card-primary.b01-card-body .b01-h5,
.b01-card-primary.b01-card-body h6,
.b01-card-primary.b01-card-body .b01-h6,
.b01-card-primary.b01-card-body .b01-heading-small,
.b01-card-primary.b01-card-body .b01-heading-medium,
.b01-card-primary.b01-card-body .b01-heading-large,
.b01-card-primary.b01-card-body .b01-heading-xlarge,
.b01-card-primary.b01-card-body .b01-heading-2xlarge,
.b01-card-primary > :not([class*='b01-card-media']) h1,
.b01-card-primary > :not([class*='b01-card-media']) .b01-h1,
.b01-card-primary > :not([class*='b01-card-media']) h2,
.b01-card-primary > :not([class*='b01-card-media']) .b01-h2,
.b01-card-primary > :not([class*='b01-card-media']) h3,
.b01-card-primary > :not([class*='b01-card-media']) .b01-h3,
.b01-card-primary > :not([class*='b01-card-media']) h4,
.b01-card-primary > :not([class*='b01-card-media']) .b01-h4,
.b01-card-primary > :not([class*='b01-card-media']) h5,
.b01-card-primary > :not([class*='b01-card-media']) .b01-h5,
.b01-card-primary > :not([class*='b01-card-media']) h6,
.b01-card-primary > :not([class*='b01-card-media']) .b01-h6,
.b01-card-primary > :not([class*='b01-card-media']) .b01-heading-small,
.b01-card-primary > :not([class*='b01-card-media']) .b01-heading-medium,
.b01-card-primary > :not([class*='b01-card-media']) .b01-heading-large,
.b01-card-primary > :not([class*='b01-card-media']) .b01-heading-xlarge,
.b01-card-primary > :not([class*='b01-card-media']) .b01-heading-2xlarge,
.b01-card-secondary.b01-card-body h1,
.b01-card-secondary.b01-card-body .b01-h1,
.b01-card-secondary.b01-card-body h2,
.b01-card-secondary.b01-card-body .b01-h2,
.b01-card-secondary.b01-card-body h3,
.b01-card-secondary.b01-card-body .b01-h3,
.b01-card-secondary.b01-card-body h4,
.b01-card-secondary.b01-card-body .b01-h4,
.b01-card-secondary.b01-card-body h5,
.b01-card-secondary.b01-card-body .b01-h5,
.b01-card-secondary.b01-card-body h6,
.b01-card-secondary.b01-card-body .b01-h6,
.b01-card-secondary.b01-card-body .b01-heading-small,
.b01-card-secondary.b01-card-body .b01-heading-medium,
.b01-card-secondary.b01-card-body .b01-heading-large,
.b01-card-secondary.b01-card-body .b01-heading-xlarge,
.b01-card-secondary.b01-card-body .b01-heading-2xlarge,
.b01-card-secondary > :not([class*='b01-card-media']) h1,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-h1,
.b01-card-secondary > :not([class*='b01-card-media']) h2,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-h2,
.b01-card-secondary > :not([class*='b01-card-media']) h3,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-h3,
.b01-card-secondary > :not([class*='b01-card-media']) h4,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-h4,
.b01-card-secondary > :not([class*='b01-card-media']) h5,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-h5,
.b01-card-secondary > :not([class*='b01-card-media']) h6,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-h6,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-heading-small,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-heading-medium,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-heading-large,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-heading-xlarge,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-heading-2xlarge,
.b01-overlay-primary h1,
.b01-overlay-primary .b01-h1,
.b01-overlay-primary h2,
.b01-overlay-primary .b01-h2,
.b01-overlay-primary h3,
.b01-overlay-primary .b01-h3,
.b01-overlay-primary h4,
.b01-overlay-primary .b01-h4,
.b01-overlay-primary h5,
.b01-overlay-primary .b01-h5,
.b01-overlay-primary h6,
.b01-overlay-primary .b01-h6,
.b01-overlay-primary .b01-heading-small,
.b01-overlay-primary .b01-heading-medium,
.b01-overlay-primary .b01-heading-large,
.b01-overlay-primary .b01-heading-xlarge,
.b01-overlay-primary .b01-heading-2xlarge,
.b01-offcanvas-bar h1,
.b01-offcanvas-bar .b01-h1,
.b01-offcanvas-bar h2,
.b01-offcanvas-bar .b01-h2,
.b01-offcanvas-bar h3,
.b01-offcanvas-bar .b01-h3,
.b01-offcanvas-bar h4,
.b01-offcanvas-bar .b01-h4,
.b01-offcanvas-bar h5,
.b01-offcanvas-bar .b01-h5,
.b01-offcanvas-bar h6,
.b01-offcanvas-bar .b01-h6,
.b01-offcanvas-bar .b01-heading-small,
.b01-offcanvas-bar .b01-heading-medium,
.b01-offcanvas-bar .b01-heading-large,
.b01-offcanvas-bar .b01-heading-xlarge,
.b01-offcanvas-bar .b01-heading-2xlarge {
  color: #fff;
}
.b01-light blockquote,
.b01-tile-primary:not(.b01-preserve-color) blockquote,
.b01-tile-secondary:not(.b01-preserve-color) blockquote,
.b01-card-primary.b01-card-body blockquote,
.b01-card-primary > :not([class*='b01-card-media']) blockquote,
.b01-card-secondary.b01-card-body blockquote,
.b01-card-secondary > :not([class*='b01-card-media']) blockquote,
.b01-overlay-primary blockquote,
.b01-offcanvas-bar blockquote {
  color: #fff;
}
.b01-light blockquote footer,
.b01-tile-primary:not(.b01-preserve-color) blockquote footer,
.b01-tile-secondary:not(.b01-preserve-color) blockquote footer,
.b01-card-primary.b01-card-body blockquote footer,
.b01-card-primary > :not([class*='b01-card-media']) blockquote footer,
.b01-card-secondary.b01-card-body blockquote footer,
.b01-card-secondary > :not([class*='b01-card-media']) blockquote footer,
.b01-overlay-primary blockquote footer,
.b01-offcanvas-bar blockquote footer {
  color: rgba(255, 255, 255, 0.9);
}
.b01-light hr,
.b01-light .b01-hr,
.b01-tile-primary:not(.b01-preserve-color) hr,
.b01-tile-primary:not(.b01-preserve-color) .b01-hr,
.b01-tile-secondary:not(.b01-preserve-color) hr,
.b01-tile-secondary:not(.b01-preserve-color) .b01-hr,
.b01-card-primary.b01-card-body hr,
.b01-card-primary.b01-card-body .b01-hr,
.b01-card-primary > :not([class*='b01-card-media']) hr,
.b01-card-primary > :not([class*='b01-card-media']) .b01-hr,
.b01-card-secondary.b01-card-body hr,
.b01-card-secondary.b01-card-body .b01-hr,
.b01-card-secondary > :not([class*='b01-card-media']) hr,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-hr,
.b01-overlay-primary hr,
.b01-overlay-primary .b01-hr,
.b01-offcanvas-bar hr,
.b01-offcanvas-bar .b01-hr {
  border-top-color: rgba(255, 255, 255, 0.4);
}
.b01-light :focus,
.b01-tile-primary:not(.b01-preserve-color) :focus,
.b01-tile-secondary:not(.b01-preserve-color) :focus,
.b01-card-primary.b01-card-body :focus,
.b01-card-primary > :not([class*='b01-card-media']) :focus,
.b01-card-secondary.b01-card-body :focus,
.b01-card-secondary > :not([class*='b01-card-media']) :focus,
.b01-overlay-primary :focus,
.b01-offcanvas-bar :focus {
  outline-color: #fff;
}
.b01-light :focus-visible,
.b01-tile-primary:not(.b01-preserve-color) :focus-visible,
.b01-tile-secondary:not(.b01-preserve-color) :focus-visible,
.b01-card-primary.b01-card-body :focus-visible,
.b01-card-primary > :not([class*='b01-card-media']) :focus-visible,
.b01-card-secondary.b01-card-body :focus-visible,
.b01-card-secondary > :not([class*='b01-card-media']) :focus-visible,
.b01-overlay-primary :focus-visible,
.b01-offcanvas-bar :focus-visible {
  outline-color: #fff;
}
.b01-light a.b01-link-muted,
.b01-light .b01-link-muted a,
.b01-tile-primary:not(.b01-preserve-color) a.b01-link-muted,
.b01-tile-primary:not(.b01-preserve-color) .b01-link-muted a,
.b01-tile-secondary:not(.b01-preserve-color) a.b01-link-muted,
.b01-tile-secondary:not(.b01-preserve-color) .b01-link-muted a,
.b01-card-primary.b01-card-body a.b01-link-muted,
.b01-card-primary.b01-card-body .b01-link-muted a,
.b01-card-primary > :not([class*='b01-card-media']) a.b01-link-muted,
.b01-card-primary > :not([class*='b01-card-media']) .b01-link-muted a,
.b01-card-secondary.b01-card-body a.b01-link-muted,
.b01-card-secondary.b01-card-body .b01-link-muted a,
.b01-card-secondary > :not([class*='b01-card-media']) a.b01-link-muted,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-link-muted a,
.b01-overlay-primary a.b01-link-muted,
.b01-overlay-primary .b01-link-muted a,
.b01-offcanvas-bar a.b01-link-muted,
.b01-offcanvas-bar .b01-link-muted a {
  color: rgba(255, 255, 255, 0.85);
}
.b01-light a.b01-link-muted:hover,
.b01-light .b01-link-muted a:hover,
.b01-light .b01-link-toggle:hover .b01-link-muted,
.b01-tile-primary:not(.b01-preserve-color) a.b01-link-muted:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-link-muted a:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-link-toggle:hover .b01-link-muted,
.b01-tile-secondary:not(.b01-preserve-color) a.b01-link-muted:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-link-muted a:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-link-toggle:hover .b01-link-muted,
.b01-card-primary.b01-card-body a.b01-link-muted:hover,
.b01-card-primary.b01-card-body .b01-link-muted a:hover,
.b01-card-primary.b01-card-body .b01-link-toggle:hover .b01-link-muted,
.b01-card-primary > :not([class*='b01-card-media']) a.b01-link-muted:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-link-muted a:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-link-toggle:hover .b01-link-muted,
.b01-card-secondary.b01-card-body a.b01-link-muted:hover,
.b01-card-secondary.b01-card-body .b01-link-muted a:hover,
.b01-card-secondary.b01-card-body .b01-link-toggle:hover .b01-link-muted,
.b01-card-secondary > :not([class*='b01-card-media']) a.b01-link-muted:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-link-muted a:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-link-toggle:hover .b01-link-muted,
.b01-overlay-primary a.b01-link-muted:hover,
.b01-overlay-primary .b01-link-muted a:hover,
.b01-overlay-primary .b01-link-toggle:hover .b01-link-muted,
.b01-offcanvas-bar a.b01-link-muted:hover,
.b01-offcanvas-bar .b01-link-muted a:hover,
.b01-offcanvas-bar .b01-link-toggle:hover .b01-link-muted {
  color: rgba(255, 255, 255, 0.9);
}
.b01-light a.b01-link-text:hover,
.b01-light .b01-link-text a:hover,
.b01-light .b01-link-toggle:hover .b01-link-text,
.b01-tile-primary:not(.b01-preserve-color) a.b01-link-text:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-link-text a:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-link-toggle:hover .b01-link-text,
.b01-tile-secondary:not(.b01-preserve-color) a.b01-link-text:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-link-text a:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-link-toggle:hover .b01-link-text,
.b01-card-primary.b01-card-body a.b01-link-text:hover,
.b01-card-primary.b01-card-body .b01-link-text a:hover,
.b01-card-primary.b01-card-body .b01-link-toggle:hover .b01-link-text,
.b01-card-primary > :not([class*='b01-card-media']) a.b01-link-text:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-link-text a:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-link-toggle:hover .b01-link-text,
.b01-card-secondary.b01-card-body a.b01-link-text:hover,
.b01-card-secondary.b01-card-body .b01-link-text a:hover,
.b01-card-secondary.b01-card-body .b01-link-toggle:hover .b01-link-text,
.b01-card-secondary > :not([class*='b01-card-media']) a.b01-link-text:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-link-text a:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-link-toggle:hover .b01-link-text,
.b01-overlay-primary a.b01-link-text:hover,
.b01-overlay-primary .b01-link-text a:hover,
.b01-overlay-primary .b01-link-toggle:hover .b01-link-text,
.b01-offcanvas-bar a.b01-link-text:hover,
.b01-offcanvas-bar .b01-link-text a:hover,
.b01-offcanvas-bar .b01-link-toggle:hover .b01-link-text {
  color: rgba(255, 255, 255, 0.85);
}
.b01-light a.b01-link-heading:hover,
.b01-light .b01-link-heading a:hover,
.b01-light .b01-link-toggle:hover .b01-link-heading,
.b01-tile-primary:not(.b01-preserve-color) a.b01-link-heading:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-link-heading a:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-link-toggle:hover .b01-link-heading,
.b01-tile-secondary:not(.b01-preserve-color) a.b01-link-heading:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-link-heading a:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-link-toggle:hover .b01-link-heading,
.b01-card-primary.b01-card-body a.b01-link-heading:hover,
.b01-card-primary.b01-card-body .b01-link-heading a:hover,
.b01-card-primary.b01-card-body .b01-link-toggle:hover .b01-link-heading,
.b01-card-primary > :not([class*='b01-card-media']) a.b01-link-heading:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-link-heading a:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-link-toggle:hover .b01-link-heading,
.b01-card-secondary.b01-card-body a.b01-link-heading:hover,
.b01-card-secondary.b01-card-body .b01-link-heading a:hover,
.b01-card-secondary.b01-card-body .b01-link-toggle:hover .b01-link-heading,
.b01-card-secondary > :not([class*='b01-card-media']) a.b01-link-heading:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-link-heading a:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-link-toggle:hover .b01-link-heading,
.b01-overlay-primary a.b01-link-heading:hover,
.b01-overlay-primary .b01-link-heading a:hover,
.b01-overlay-primary .b01-link-toggle:hover .b01-link-heading,
.b01-offcanvas-bar a.b01-link-heading:hover,
.b01-offcanvas-bar .b01-link-heading a:hover,
.b01-offcanvas-bar .b01-link-toggle:hover .b01-link-heading {
  color: #fff;
}
.b01-light .b01-heading-divider,
.b01-tile-primary:not(.b01-preserve-color) .b01-heading-divider,
.b01-tile-secondary:not(.b01-preserve-color) .b01-heading-divider,
.b01-card-primary.b01-card-body .b01-heading-divider,
.b01-card-primary > :not([class*='b01-card-media']) .b01-heading-divider,
.b01-card-secondary.b01-card-body .b01-heading-divider,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-heading-divider,
.b01-overlay-primary .b01-heading-divider,
.b01-offcanvas-bar .b01-heading-divider {
  border-bottom-color: rgba(255, 255, 255, 0.4);
}
.b01-light .b01-heading-bullet::before,
.b01-tile-primary:not(.b01-preserve-color) .b01-heading-bullet::before,
.b01-tile-secondary:not(.b01-preserve-color) .b01-heading-bullet::before,
.b01-card-primary.b01-card-body .b01-heading-bullet::before,
.b01-card-primary > :not([class*='b01-card-media']) .b01-heading-bullet::before,
.b01-card-secondary.b01-card-body .b01-heading-bullet::before,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-heading-bullet::before,
.b01-overlay-primary .b01-heading-bullet::before,
.b01-offcanvas-bar .b01-heading-bullet::before {
  border-left-color: rgba(255, 255, 255, 0.4);
}
.b01-light .b01-heading-line > ::before,
.b01-light .b01-heading-line > ::after,
.b01-tile-primary:not(.b01-preserve-color) .b01-heading-line > ::before,
.b01-tile-primary:not(.b01-preserve-color) .b01-heading-line > ::after,
.b01-tile-secondary:not(.b01-preserve-color) .b01-heading-line > ::before,
.b01-tile-secondary:not(.b01-preserve-color) .b01-heading-line > ::after,
.b01-card-primary.b01-card-body .b01-heading-line > ::before,
.b01-card-primary.b01-card-body .b01-heading-line > ::after,
.b01-card-primary > :not([class*='b01-card-media']) .b01-heading-line > ::before,
.b01-card-primary > :not([class*='b01-card-media']) .b01-heading-line > ::after,
.b01-card-secondary.b01-card-body .b01-heading-line > ::before,
.b01-card-secondary.b01-card-body .b01-heading-line > ::after,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-heading-line > ::before,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-heading-line > ::after,
.b01-overlay-primary .b01-heading-line > ::before,
.b01-overlay-primary .b01-heading-line > ::after,
.b01-offcanvas-bar .b01-heading-line > ::before,
.b01-offcanvas-bar .b01-heading-line > ::after {
  border-bottom-color: rgba(255, 255, 255, 0.4);
}
.b01-light .b01-divider-icon,
.b01-tile-primary:not(.b01-preserve-color) .b01-divider-icon,
.b01-tile-secondary:not(.b01-preserve-color) .b01-divider-icon,
.b01-card-primary.b01-card-body .b01-divider-icon,
.b01-card-primary > :not([class*='b01-card-media']) .b01-divider-icon,
.b01-card-secondary.b01-card-body .b01-divider-icon,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-divider-icon,
.b01-overlay-primary .b01-divider-icon,
.b01-offcanvas-bar .b01-divider-icon {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Ccircle%20fill%3D%22none%22%20stroke%3D%22rgba%28255,%20255,%20255,%200.4%29%22%20stroke-width%3D%222%22%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%227%22%20%2F%3E%0A%3C%2Fsvg%3E%0A");
}
.b01-light .b01-divider-icon::before,
.b01-light .b01-divider-icon::after,
.b01-tile-primary:not(.b01-preserve-color) .b01-divider-icon::before,
.b01-tile-primary:not(.b01-preserve-color) .b01-divider-icon::after,
.b01-tile-secondary:not(.b01-preserve-color) .b01-divider-icon::before,
.b01-tile-secondary:not(.b01-preserve-color) .b01-divider-icon::after,
.b01-card-primary.b01-card-body .b01-divider-icon::before,
.b01-card-primary.b01-card-body .b01-divider-icon::after,
.b01-card-primary > :not([class*='b01-card-media']) .b01-divider-icon::before,
.b01-card-primary > :not([class*='b01-card-media']) .b01-divider-icon::after,
.b01-card-secondary.b01-card-body .b01-divider-icon::before,
.b01-card-secondary.b01-card-body .b01-divider-icon::after,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-divider-icon::before,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-divider-icon::after,
.b01-overlay-primary .b01-divider-icon::before,
.b01-overlay-primary .b01-divider-icon::after,
.b01-offcanvas-bar .b01-divider-icon::before,
.b01-offcanvas-bar .b01-divider-icon::after {
  border-bottom-color: rgba(255, 255, 255, 0.4);
}
.b01-light .b01-divider-small::after,
.b01-tile-primary:not(.b01-preserve-color) .b01-divider-small::after,
.b01-tile-secondary:not(.b01-preserve-color) .b01-divider-small::after,
.b01-card-primary.b01-card-body .b01-divider-small::after,
.b01-card-primary > :not([class*='b01-card-media']) .b01-divider-small::after,
.b01-card-secondary.b01-card-body .b01-divider-small::after,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-divider-small::after,
.b01-overlay-primary .b01-divider-small::after,
.b01-offcanvas-bar .b01-divider-small::after {
  border-top-color: rgba(255, 255, 255, 0.4);
}
.b01-light .b01-divider-vertical,
.b01-tile-primary:not(.b01-preserve-color) .b01-divider-vertical,
.b01-tile-secondary:not(.b01-preserve-color) .b01-divider-vertical,
.b01-card-primary.b01-card-body .b01-divider-vertical,
.b01-card-primary > :not([class*='b01-card-media']) .b01-divider-vertical,
.b01-card-secondary.b01-card-body .b01-divider-vertical,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-divider-vertical,
.b01-overlay-primary .b01-divider-vertical,
.b01-offcanvas-bar .b01-divider-vertical {
  border-left-color: rgba(255, 255, 255, 0.4);
}
.b01-light .b01-list-muted > ::before,
.b01-tile-primary:not(.b01-preserve-color) .b01-list-muted > ::before,
.b01-tile-secondary:not(.b01-preserve-color) .b01-list-muted > ::before,
.b01-card-primary.b01-card-body .b01-list-muted > ::before,
.b01-card-primary > :not([class*='b01-card-media']) .b01-list-muted > ::before,
.b01-card-secondary.b01-card-body .b01-list-muted > ::before,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-list-muted > ::before,
.b01-overlay-primary .b01-list-muted > ::before,
.b01-offcanvas-bar .b01-list-muted > ::before {
  color: rgba(255, 255, 255, 0.85) !important;
}
.b01-light .b01-list-emphasis > ::before,
.b01-tile-primary:not(.b01-preserve-color) .b01-list-emphasis > ::before,
.b01-tile-secondary:not(.b01-preserve-color) .b01-list-emphasis > ::before,
.b01-card-primary.b01-card-body .b01-list-emphasis > ::before,
.b01-card-primary > :not([class*='b01-card-media']) .b01-list-emphasis > ::before,
.b01-card-secondary.b01-card-body .b01-list-emphasis > ::before,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-list-emphasis > ::before,
.b01-overlay-primary .b01-list-emphasis > ::before,
.b01-offcanvas-bar .b01-list-emphasis > ::before {
  color: #fff !important;
}
.b01-light .b01-list-primary > ::before,
.b01-tile-primary:not(.b01-preserve-color) .b01-list-primary > ::before,
.b01-tile-secondary:not(.b01-preserve-color) .b01-list-primary > ::before,
.b01-card-primary.b01-card-body .b01-list-primary > ::before,
.b01-card-primary > :not([class*='b01-card-media']) .b01-list-primary > ::before,
.b01-card-secondary.b01-card-body .b01-list-primary > ::before,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-list-primary > ::before,
.b01-overlay-primary .b01-list-primary > ::before,
.b01-offcanvas-bar .b01-list-primary > ::before {
  color: #fff !important;
}
.b01-light .b01-list-secondary > ::before,
.b01-tile-primary:not(.b01-preserve-color) .b01-list-secondary > ::before,
.b01-tile-secondary:not(.b01-preserve-color) .b01-list-secondary > ::before,
.b01-card-primary.b01-card-body .b01-list-secondary > ::before,
.b01-card-primary > :not([class*='b01-card-media']) .b01-list-secondary > ::before,
.b01-card-secondary.b01-card-body .b01-list-secondary > ::before,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-list-secondary > ::before,
.b01-overlay-primary .b01-list-secondary > ::before,
.b01-offcanvas-bar .b01-list-secondary > ::before {
  color: #fff !important;
}
.b01-light .b01-list-bullet > ::before,
.b01-tile-primary:not(.b01-preserve-color) .b01-list-bullet > ::before,
.b01-tile-secondary:not(.b01-preserve-color) .b01-list-bullet > ::before,
.b01-card-primary.b01-card-body .b01-list-bullet > ::before,
.b01-card-primary > :not([class*='b01-card-media']) .b01-list-bullet > ::before,
.b01-card-secondary.b01-card-body .b01-list-bullet > ::before,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-list-bullet > ::before,
.b01-overlay-primary .b01-list-bullet > ::before,
.b01-offcanvas-bar .b01-list-bullet > ::before {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%226%22%20height%3D%226%22%20viewBox%3D%220%200%206%206%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Ccircle%20fill%3D%22rgba%28255,%20255,%20255,%200.9%29%22%20cx%3D%223%22%20cy%3D%223%22%20r%3D%223%22%20%2F%3E%0A%3C%2Fsvg%3E");
}
.b01-light .b01-list-divider > :nth-child(n+2),
.b01-tile-primary:not(.b01-preserve-color) .b01-list-divider > :nth-child(n+2),
.b01-tile-secondary:not(.b01-preserve-color) .b01-list-divider > :nth-child(n+2),
.b01-card-primary.b01-card-body .b01-list-divider > :nth-child(n+2),
.b01-card-primary > :not([class*='b01-card-media']) .b01-list-divider > :nth-child(n+2),
.b01-card-secondary.b01-card-body .b01-list-divider > :nth-child(n+2),
.b01-card-secondary > :not([class*='b01-card-media']) .b01-list-divider > :nth-child(n+2),
.b01-overlay-primary .b01-list-divider > :nth-child(n+2),
.b01-offcanvas-bar .b01-list-divider > :nth-child(n+2) {
  border-top-color: rgba(255, 255, 255, 0.4);
}
.b01-light .b01-list-striped > *:nth-of-type(odd),
.b01-tile-primary:not(.b01-preserve-color) .b01-list-striped > *:nth-of-type(odd),
.b01-tile-secondary:not(.b01-preserve-color) .b01-list-striped > *:nth-of-type(odd),
.b01-card-primary.b01-card-body .b01-list-striped > *:nth-of-type(odd),
.b01-card-primary > :not([class*='b01-card-media']) .b01-list-striped > *:nth-of-type(odd),
.b01-card-secondary.b01-card-body .b01-list-striped > *:nth-of-type(odd),
.b01-card-secondary > :not([class*='b01-card-media']) .b01-list-striped > *:nth-of-type(odd),
.b01-overlay-primary .b01-list-striped > *:nth-of-type(odd),
.b01-offcanvas-bar .b01-list-striped > *:nth-of-type(odd) {
  border-top-color: rgba(255, 255, 255, 0.4);
  border-bottom-color: rgba(255, 255, 255, 0.4);
}
.b01-light .b01-list-striped > :nth-of-type(odd),
.b01-tile-primary:not(.b01-preserve-color) .b01-list-striped > :nth-of-type(odd),
.b01-tile-secondary:not(.b01-preserve-color) .b01-list-striped > :nth-of-type(odd),
.b01-card-primary.b01-card-body .b01-list-striped > :nth-of-type(odd),
.b01-card-primary > :not([class*='b01-card-media']) .b01-list-striped > :nth-of-type(odd),
.b01-card-secondary.b01-card-body .b01-list-striped > :nth-of-type(odd),
.b01-card-secondary > :not([class*='b01-card-media']) .b01-list-striped > :nth-of-type(odd),
.b01-overlay-primary .b01-list-striped > :nth-of-type(odd),
.b01-offcanvas-bar .b01-list-striped > :nth-of-type(odd) {
  background-color: rgba(255, 255, 255, 0.3);
}
.b01-light .b01-table th,
.b01-tile-primary:not(.b01-preserve-color) .b01-table th,
.b01-tile-secondary:not(.b01-preserve-color) .b01-table th,
.b01-card-primary.b01-card-body .b01-table th,
.b01-card-primary > :not([class*='b01-card-media']) .b01-table th,
.b01-card-secondary.b01-card-body .b01-table th,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-table th,
.b01-overlay-primary .b01-table th,
.b01-offcanvas-bar .b01-table th {
  color: rgba(255, 255, 255, 0.9);
}
.b01-light .b01-table caption,
.b01-tile-primary:not(.b01-preserve-color) .b01-table caption,
.b01-tile-secondary:not(.b01-preserve-color) .b01-table caption,
.b01-card-primary.b01-card-body .b01-table caption,
.b01-card-primary > :not([class*='b01-card-media']) .b01-table caption,
.b01-card-secondary.b01-card-body .b01-table caption,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-table caption,
.b01-overlay-primary .b01-table caption,
.b01-offcanvas-bar .b01-table caption {
  color: rgba(255, 255, 255, 0.85);
}
.b01-light .b01-table > tr.b01-active,
.b01-light .b01-table tbody tr.b01-active,
.b01-tile-primary:not(.b01-preserve-color) .b01-table > tr.b01-active,
.b01-tile-primary:not(.b01-preserve-color) .b01-table tbody tr.b01-active,
.b01-tile-secondary:not(.b01-preserve-color) .b01-table > tr.b01-active,
.b01-tile-secondary:not(.b01-preserve-color) .b01-table tbody tr.b01-active,
.b01-card-primary.b01-card-body .b01-table > tr.b01-active,
.b01-card-primary.b01-card-body .b01-table tbody tr.b01-active,
.b01-card-primary > :not([class*='b01-card-media']) .b01-table > tr.b01-active,
.b01-card-primary > :not([class*='b01-card-media']) .b01-table tbody tr.b01-active,
.b01-card-secondary.b01-card-body .b01-table > tr.b01-active,
.b01-card-secondary.b01-card-body .b01-table tbody tr.b01-active,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-table > tr.b01-active,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-table tbody tr.b01-active,
.b01-overlay-primary .b01-table > tr.b01-active,
.b01-overlay-primary .b01-table tbody tr.b01-active,
.b01-offcanvas-bar .b01-table > tr.b01-active,
.b01-offcanvas-bar .b01-table tbody tr.b01-active {
  background: rgba(255, 255, 255, 0.28);
}
.b01-light .b01-table-divider > tr:not(:first-child),
.b01-light .b01-table-divider > :not(:first-child) > tr,
.b01-light .b01-table-divider > :first-child > tr:not(:first-child),
.b01-tile-primary:not(.b01-preserve-color) .b01-table-divider > tr:not(:first-child),
.b01-tile-primary:not(.b01-preserve-color) .b01-table-divider > :not(:first-child) > tr,
.b01-tile-primary:not(.b01-preserve-color) .b01-table-divider > :first-child > tr:not(:first-child),
.b01-tile-secondary:not(.b01-preserve-color) .b01-table-divider > tr:not(:first-child),
.b01-tile-secondary:not(.b01-preserve-color) .b01-table-divider > :not(:first-child) > tr,
.b01-tile-secondary:not(.b01-preserve-color) .b01-table-divider > :first-child > tr:not(:first-child),
.b01-card-primary.b01-card-body .b01-table-divider > tr:not(:first-child),
.b01-card-primary.b01-card-body .b01-table-divider > :not(:first-child) > tr,
.b01-card-primary.b01-card-body .b01-table-divider > :first-child > tr:not(:first-child),
.b01-card-primary > :not([class*='b01-card-media']) .b01-table-divider > tr:not(:first-child),
.b01-card-primary > :not([class*='b01-card-media']) .b01-table-divider > :not(:first-child) > tr,
.b01-card-primary > :not([class*='b01-card-media']) .b01-table-divider > :first-child > tr:not(:first-child),
.b01-card-secondary.b01-card-body .b01-table-divider > tr:not(:first-child),
.b01-card-secondary.b01-card-body .b01-table-divider > :not(:first-child) > tr,
.b01-card-secondary.b01-card-body .b01-table-divider > :first-child > tr:not(:first-child),
.b01-card-secondary > :not([class*='b01-card-media']) .b01-table-divider > tr:not(:first-child),
.b01-card-secondary > :not([class*='b01-card-media']) .b01-table-divider > :not(:first-child) > tr,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-table-divider > :first-child > tr:not(:first-child),
.b01-overlay-primary .b01-table-divider > tr:not(:first-child),
.b01-overlay-primary .b01-table-divider > :not(:first-child) > tr,
.b01-overlay-primary .b01-table-divider > :first-child > tr:not(:first-child),
.b01-offcanvas-bar .b01-table-divider > tr:not(:first-child),
.b01-offcanvas-bar .b01-table-divider > :not(:first-child) > tr,
.b01-offcanvas-bar .b01-table-divider > :first-child > tr:not(:first-child) {
  border-top-color: rgba(255, 255, 255, 0.4);
}
.b01-light .b01-table-striped > tr:nth-of-type(odd),
.b01-light .b01-table-striped tbody tr:nth-of-type(odd),
.b01-tile-primary:not(.b01-preserve-color) .b01-table-striped > tr:nth-of-type(odd),
.b01-tile-primary:not(.b01-preserve-color) .b01-table-striped tbody tr:nth-of-type(odd),
.b01-tile-secondary:not(.b01-preserve-color) .b01-table-striped > tr:nth-of-type(odd),
.b01-tile-secondary:not(.b01-preserve-color) .b01-table-striped tbody tr:nth-of-type(odd),
.b01-card-primary.b01-card-body .b01-table-striped > tr:nth-of-type(odd),
.b01-card-primary.b01-card-body .b01-table-striped tbody tr:nth-of-type(odd),
.b01-card-primary > :not([class*='b01-card-media']) .b01-table-striped > tr:nth-of-type(odd),
.b01-card-primary > :not([class*='b01-card-media']) .b01-table-striped tbody tr:nth-of-type(odd),
.b01-card-secondary.b01-card-body .b01-table-striped > tr:nth-of-type(odd),
.b01-card-secondary.b01-card-body .b01-table-striped tbody tr:nth-of-type(odd),
.b01-card-secondary > :not([class*='b01-card-media']) .b01-table-striped > tr:nth-of-type(odd),
.b01-card-secondary > :not([class*='b01-card-media']) .b01-table-striped tbody tr:nth-of-type(odd),
.b01-overlay-primary .b01-table-striped > tr:nth-of-type(odd),
.b01-overlay-primary .b01-table-striped tbody tr:nth-of-type(odd),
.b01-offcanvas-bar .b01-table-striped > tr:nth-of-type(odd),
.b01-offcanvas-bar .b01-table-striped tbody tr:nth-of-type(odd) {
  background: rgba(255, 255, 255, 0.3);
  border-top-color: rgba(255, 255, 255, 0.4);
  border-bottom-color: rgba(255, 255, 255, 0.4);
}
.b01-light .b01-table-hover > tr:hover,
.b01-light .b01-table-hover tbody tr:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-table-hover > tr:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-table-hover tbody tr:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-table-hover > tr:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-table-hover tbody tr:hover,
.b01-card-primary.b01-card-body .b01-table-hover > tr:hover,
.b01-card-primary.b01-card-body .b01-table-hover tbody tr:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-table-hover > tr:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-table-hover tbody tr:hover,
.b01-card-secondary.b01-card-body .b01-table-hover > tr:hover,
.b01-card-secondary.b01-card-body .b01-table-hover tbody tr:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-table-hover > tr:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-table-hover tbody tr:hover,
.b01-overlay-primary .b01-table-hover > tr:hover,
.b01-overlay-primary .b01-table-hover tbody tr:hover,
.b01-offcanvas-bar .b01-table-hover > tr:hover,
.b01-offcanvas-bar .b01-table-hover tbody tr:hover {
  background: rgba(255, 255, 255, 0.28);
}
.b01-light .b01-icon-link,
.b01-tile-primary:not(.b01-preserve-color) .b01-icon-link,
.b01-tile-secondary:not(.b01-preserve-color) .b01-icon-link,
.b01-card-primary.b01-card-body .b01-icon-link,
.b01-card-primary > :not([class*='b01-card-media']) .b01-icon-link,
.b01-card-secondary.b01-card-body .b01-icon-link,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-icon-link,
.b01-overlay-primary .b01-icon-link,
.b01-offcanvas-bar .b01-icon-link {
  color: rgba(255, 255, 255, 0.85);
}
.b01-light .b01-icon-link:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-icon-link:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-icon-link:hover,
.b01-card-primary.b01-card-body .b01-icon-link:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-icon-link:hover,
.b01-card-secondary.b01-card-body .b01-icon-link:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-icon-link:hover,
.b01-overlay-primary .b01-icon-link:hover,
.b01-offcanvas-bar .b01-icon-link:hover {
  color: rgba(255, 255, 255, 0.9);
}
.b01-light .b01-icon-link:active,
.b01-light .b01-active > .b01-icon-link,
.b01-tile-primary:not(.b01-preserve-color) .b01-icon-link:active,
.b01-tile-primary:not(.b01-preserve-color) .b01-active > .b01-icon-link,
.b01-tile-secondary:not(.b01-preserve-color) .b01-icon-link:active,
.b01-tile-secondary:not(.b01-preserve-color) .b01-active > .b01-icon-link,
.b01-card-primary.b01-card-body .b01-icon-link:active,
.b01-card-primary.b01-card-body .b01-active > .b01-icon-link,
.b01-card-primary > :not([class*='b01-card-media']) .b01-icon-link:active,
.b01-card-primary > :not([class*='b01-card-media']) .b01-active > .b01-icon-link,
.b01-card-secondary.b01-card-body .b01-icon-link:active,
.b01-card-secondary.b01-card-body .b01-active > .b01-icon-link,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-icon-link:active,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-active > .b01-icon-link,
.b01-overlay-primary .b01-icon-link:active,
.b01-overlay-primary .b01-active > .b01-icon-link,
.b01-offcanvas-bar .b01-icon-link:active,
.b01-offcanvas-bar .b01-active > .b01-icon-link {
  color: rgba(255, 255, 255, 0.9);
}
.b01-light .b01-icon-button,
.b01-tile-primary:not(.b01-preserve-color) .b01-icon-button,
.b01-tile-secondary:not(.b01-preserve-color) .b01-icon-button,
.b01-card-primary.b01-card-body .b01-icon-button,
.b01-card-primary > :not([class*='b01-card-media']) .b01-icon-button,
.b01-card-secondary.b01-card-body .b01-icon-button,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-icon-button,
.b01-overlay-primary .b01-icon-button,
.b01-offcanvas-bar .b01-icon-button {
  background-color: rgba(255, 255, 255, 0.3);
  color: rgba(255, 255, 255, 0.85);
}
.b01-light .b01-icon-button:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-icon-button:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-icon-button:hover,
.b01-card-primary.b01-card-body .b01-icon-button:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-icon-button:hover,
.b01-card-secondary.b01-card-body .b01-icon-button:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-icon-button:hover,
.b01-overlay-primary .b01-icon-button:hover,
.b01-offcanvas-bar .b01-icon-button:hover {
  background-color: rgba(255, 255, 255, 0.35);
  color: rgba(255, 255, 255, 0.9);
}
.b01-light .b01-icon-button:active,
.b01-tile-primary:not(.b01-preserve-color) .b01-icon-button:active,
.b01-tile-secondary:not(.b01-preserve-color) .b01-icon-button:active,
.b01-card-primary.b01-card-body .b01-icon-button:active,
.b01-card-primary > :not([class*='b01-card-media']) .b01-icon-button:active,
.b01-card-secondary.b01-card-body .b01-icon-button:active,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-icon-button:active,
.b01-overlay-primary .b01-icon-button:active,
.b01-offcanvas-bar .b01-icon-button:active {
  background-color: rgba(255, 255, 255, 0.4);
  color: rgba(255, 255, 255, 0.9);
}
.b01-light .b01-input,
.b01-light .b01-select,
.b01-light .b01-textarea,
.b01-tile-primary:not(.b01-preserve-color) .b01-input,
.b01-tile-primary:not(.b01-preserve-color) .b01-select,
.b01-tile-primary:not(.b01-preserve-color) .b01-textarea,
.b01-tile-secondary:not(.b01-preserve-color) .b01-input,
.b01-tile-secondary:not(.b01-preserve-color) .b01-select,
.b01-tile-secondary:not(.b01-preserve-color) .b01-textarea,
.b01-card-primary.b01-card-body .b01-input,
.b01-card-primary.b01-card-body .b01-select,
.b01-card-primary.b01-card-body .b01-textarea,
.b01-card-primary > :not([class*='b01-card-media']) .b01-input,
.b01-card-primary > :not([class*='b01-card-media']) .b01-select,
.b01-card-primary > :not([class*='b01-card-media']) .b01-textarea,
.b01-card-secondary.b01-card-body .b01-input,
.b01-card-secondary.b01-card-body .b01-select,
.b01-card-secondary.b01-card-body .b01-textarea,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-input,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-select,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-textarea,
.b01-overlay-primary .b01-input,
.b01-overlay-primary .b01-select,
.b01-overlay-primary .b01-textarea,
.b01-offcanvas-bar .b01-input,
.b01-offcanvas-bar .b01-select,
.b01-offcanvas-bar .b01-textarea {
  background-color: rgba(255, 255, 255, 0.3);
  color: rgba(255, 255, 255, 0.9);
  background-clip: padding-box;
  border-color: rgba(255, 255, 255, 0.4);
}
.b01-light .b01-input:focus,
.b01-light .b01-select:focus,
.b01-light .b01-textarea:focus,
.b01-tile-primary:not(.b01-preserve-color) .b01-input:focus,
.b01-tile-primary:not(.b01-preserve-color) .b01-select:focus,
.b01-tile-primary:not(.b01-preserve-color) .b01-textarea:focus,
.b01-tile-secondary:not(.b01-preserve-color) .b01-input:focus,
.b01-tile-secondary:not(.b01-preserve-color) .b01-select:focus,
.b01-tile-secondary:not(.b01-preserve-color) .b01-textarea:focus,
.b01-card-primary.b01-card-body .b01-input:focus,
.b01-card-primary.b01-card-body .b01-select:focus,
.b01-card-primary.b01-card-body .b01-textarea:focus,
.b01-card-primary > :not([class*='b01-card-media']) .b01-input:focus,
.b01-card-primary > :not([class*='b01-card-media']) .b01-select:focus,
.b01-card-primary > :not([class*='b01-card-media']) .b01-textarea:focus,
.b01-card-secondary.b01-card-body .b01-input:focus,
.b01-card-secondary.b01-card-body .b01-select:focus,
.b01-card-secondary.b01-card-body .b01-textarea:focus,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-input:focus,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-select:focus,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-textarea:focus,
.b01-overlay-primary .b01-input:focus,
.b01-overlay-primary .b01-select:focus,
.b01-overlay-primary .b01-textarea:focus,
.b01-offcanvas-bar .b01-input:focus,
.b01-offcanvas-bar .b01-select:focus,
.b01-offcanvas-bar .b01-textarea:focus {
  background-color: rgba(255, 255, 255, 0.35);
  color: rgba(255, 255, 255, 0.9);
  border-color: rgba(255, 255, 255, 0.9);
  border-color: #009ee6;
}
.b01-light .b01-input::placeholder,
.b01-tile-primary:not(.b01-preserve-color) .b01-input::placeholder,
.b01-tile-secondary:not(.b01-preserve-color) .b01-input::placeholder,
.b01-card-primary.b01-card-body .b01-input::placeholder,
.b01-card-primary > :not([class*='b01-card-media']) .b01-input::placeholder,
.b01-card-secondary.b01-card-body .b01-input::placeholder,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-input::placeholder,
.b01-overlay-primary .b01-input::placeholder,
.b01-offcanvas-bar .b01-input::placeholder {
  color: rgba(255, 255, 255, 0.85);
}
.b01-light .b01-textarea::placeholder,
.b01-tile-primary:not(.b01-preserve-color) .b01-textarea::placeholder,
.b01-tile-secondary:not(.b01-preserve-color) .b01-textarea::placeholder,
.b01-card-primary.b01-card-body .b01-textarea::placeholder,
.b01-card-primary > :not([class*='b01-card-media']) .b01-textarea::placeholder,
.b01-card-secondary.b01-card-body .b01-textarea::placeholder,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-textarea::placeholder,
.b01-overlay-primary .b01-textarea::placeholder,
.b01-offcanvas-bar .b01-textarea::placeholder {
  color: rgba(255, 255, 255, 0.85);
}
.b01-light .b01-select:not([multiple]):not([size]),
.b01-tile-primary:not(.b01-preserve-color) .b01-select:not([multiple]):not([size]),
.b01-tile-secondary:not(.b01-preserve-color) .b01-select:not([multiple]):not([size]),
.b01-card-primary.b01-card-body .b01-select:not([multiple]):not([size]),
.b01-card-primary > :not([class*='b01-card-media']) .b01-select:not([multiple]):not([size]),
.b01-card-secondary.b01-card-body .b01-select:not([multiple]):not([size]),
.b01-card-secondary > :not([class*='b01-card-media']) .b01-select:not([multiple]):not([size]),
.b01-overlay-primary .b01-select:not([multiple]):not([size]),
.b01-offcanvas-bar .b01-select:not([multiple]):not([size]) {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2224%22%20height%3D%2216%22%20viewBox%3D%220%200%2024%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22rgba%28255,%20255,%20255,%200.9%29%22%20points%3D%2212%201%209%206%2015%206%22%20%2F%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22rgba%28255,%20255,%20255,%200.9%29%22%20points%3D%2212%2013%209%208%2015%208%22%20%2F%3E%0A%3C%2Fsvg%3E%0A");
}
.b01-light .b01-input[list]:hover,
.b01-light .b01-input[list]:focus,
.b01-tile-primary:not(.b01-preserve-color) .b01-input[list]:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-input[list]:focus,
.b01-tile-secondary:not(.b01-preserve-color) .b01-input[list]:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-input[list]:focus,
.b01-card-primary.b01-card-body .b01-input[list]:hover,
.b01-card-primary.b01-card-body .b01-input[list]:focus,
.b01-card-primary > :not([class*='b01-card-media']) .b01-input[list]:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-input[list]:focus,
.b01-card-secondary.b01-card-body .b01-input[list]:hover,
.b01-card-secondary.b01-card-body .b01-input[list]:focus,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-input[list]:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-input[list]:focus,
.b01-overlay-primary .b01-input[list]:hover,
.b01-overlay-primary .b01-input[list]:focus,
.b01-offcanvas-bar .b01-input[list]:hover,
.b01-offcanvas-bar .b01-input[list]:focus {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2224%22%20height%3D%2216%22%20viewBox%3D%220%200%2024%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22rgba%28255,%20255,%20255,%200.9%29%22%20points%3D%2212%2012%208%206%2016%206%22%20%2F%3E%0A%3C%2Fsvg%3E%0A");
}
.b01-light .b01-radio,
.b01-light .b01-checkbox,
.b01-tile-primary:not(.b01-preserve-color) .b01-radio,
.b01-tile-primary:not(.b01-preserve-color) .b01-checkbox,
.b01-tile-secondary:not(.b01-preserve-color) .b01-radio,
.b01-tile-secondary:not(.b01-preserve-color) .b01-checkbox,
.b01-card-primary.b01-card-body .b01-radio,
.b01-card-primary.b01-card-body .b01-checkbox,
.b01-card-primary > :not([class*='b01-card-media']) .b01-radio,
.b01-card-primary > :not([class*='b01-card-media']) .b01-checkbox,
.b01-card-secondary.b01-card-body .b01-radio,
.b01-card-secondary.b01-card-body .b01-checkbox,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-radio,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-checkbox,
.b01-overlay-primary .b01-radio,
.b01-overlay-primary .b01-checkbox,
.b01-offcanvas-bar .b01-radio,
.b01-offcanvas-bar .b01-checkbox {
  background-color: rgba(255, 255, 255, 0.3);
  border-color: rgba(255, 255, 255, 0.4);
}
.b01-light .b01-radio:focus,
.b01-light .b01-checkbox:focus,
.b01-tile-primary:not(.b01-preserve-color) .b01-radio:focus,
.b01-tile-primary:not(.b01-preserve-color) .b01-checkbox:focus,
.b01-tile-secondary:not(.b01-preserve-color) .b01-radio:focus,
.b01-tile-secondary:not(.b01-preserve-color) .b01-checkbox:focus,
.b01-card-primary.b01-card-body .b01-radio:focus,
.b01-card-primary.b01-card-body .b01-checkbox:focus,
.b01-card-primary > :not([class*='b01-card-media']) .b01-radio:focus,
.b01-card-primary > :not([class*='b01-card-media']) .b01-checkbox:focus,
.b01-card-secondary.b01-card-body .b01-radio:focus,
.b01-card-secondary.b01-card-body .b01-checkbox:focus,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-radio:focus,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-checkbox:focus,
.b01-overlay-primary .b01-radio:focus,
.b01-overlay-primary .b01-checkbox:focus,
.b01-offcanvas-bar .b01-radio:focus,
.b01-offcanvas-bar .b01-checkbox:focus {
  background-color: rgba(255, 255, 255, 0.35);
  border-color: rgba(255, 255, 255, 0.9);
}
.b01-light .b01-radio:checked,
.b01-light .b01-checkbox:checked,
.b01-light .b01-checkbox:indeterminate,
.b01-tile-primary:not(.b01-preserve-color) .b01-radio:checked,
.b01-tile-primary:not(.b01-preserve-color) .b01-checkbox:checked,
.b01-tile-primary:not(.b01-preserve-color) .b01-checkbox:indeterminate,
.b01-tile-secondary:not(.b01-preserve-color) .b01-radio:checked,
.b01-tile-secondary:not(.b01-preserve-color) .b01-checkbox:checked,
.b01-tile-secondary:not(.b01-preserve-color) .b01-checkbox:indeterminate,
.b01-card-primary.b01-card-body .b01-radio:checked,
.b01-card-primary.b01-card-body .b01-checkbox:checked,
.b01-card-primary.b01-card-body .b01-checkbox:indeterminate,
.b01-card-primary > :not([class*='b01-card-media']) .b01-radio:checked,
.b01-card-primary > :not([class*='b01-card-media']) .b01-checkbox:checked,
.b01-card-primary > :not([class*='b01-card-media']) .b01-checkbox:indeterminate,
.b01-card-secondary.b01-card-body .b01-radio:checked,
.b01-card-secondary.b01-card-body .b01-checkbox:checked,
.b01-card-secondary.b01-card-body .b01-checkbox:indeterminate,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-radio:checked,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-checkbox:checked,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-checkbox:indeterminate,
.b01-overlay-primary .b01-radio:checked,
.b01-overlay-primary .b01-checkbox:checked,
.b01-overlay-primary .b01-checkbox:indeterminate,
.b01-offcanvas-bar .b01-radio:checked,
.b01-offcanvas-bar .b01-checkbox:checked,
.b01-offcanvas-bar .b01-checkbox:indeterminate {
  background-color: #fff;
  border-color: rgba(255, 255, 255, 0.9);
}
.b01-light .b01-radio:checked:focus,
.b01-light .b01-checkbox:checked:focus,
.b01-light .b01-checkbox:indeterminate:focus,
.b01-tile-primary:not(.b01-preserve-color) .b01-radio:checked:focus,
.b01-tile-primary:not(.b01-preserve-color) .b01-checkbox:checked:focus,
.b01-tile-primary:not(.b01-preserve-color) .b01-checkbox:indeterminate:focus,
.b01-tile-secondary:not(.b01-preserve-color) .b01-radio:checked:focus,
.b01-tile-secondary:not(.b01-preserve-color) .b01-checkbox:checked:focus,
.b01-tile-secondary:not(.b01-preserve-color) .b01-checkbox:indeterminate:focus,
.b01-card-primary.b01-card-body .b01-radio:checked:focus,
.b01-card-primary.b01-card-body .b01-checkbox:checked:focus,
.b01-card-primary.b01-card-body .b01-checkbox:indeterminate:focus,
.b01-card-primary > :not([class*='b01-card-media']) .b01-radio:checked:focus,
.b01-card-primary > :not([class*='b01-card-media']) .b01-checkbox:checked:focus,
.b01-card-primary > :not([class*='b01-card-media']) .b01-checkbox:indeterminate:focus,
.b01-card-secondary.b01-card-body .b01-radio:checked:focus,
.b01-card-secondary.b01-card-body .b01-checkbox:checked:focus,
.b01-card-secondary.b01-card-body .b01-checkbox:indeterminate:focus,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-radio:checked:focus,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-checkbox:checked:focus,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-checkbox:indeterminate:focus,
.b01-overlay-primary .b01-radio:checked:focus,
.b01-overlay-primary .b01-checkbox:checked:focus,
.b01-overlay-primary .b01-checkbox:indeterminate:focus,
.b01-offcanvas-bar .b01-radio:checked:focus,
.b01-offcanvas-bar .b01-checkbox:checked:focus,
.b01-offcanvas-bar .b01-checkbox:indeterminate:focus {
  background-color: #ffffff;
}
.b01-light .b01-radio:checked,
.b01-tile-primary:not(.b01-preserve-color) .b01-radio:checked,
.b01-tile-secondary:not(.b01-preserve-color) .b01-radio:checked,
.b01-card-primary.b01-card-body .b01-radio:checked,
.b01-card-primary > :not([class*='b01-card-media']) .b01-radio:checked,
.b01-card-secondary.b01-card-body .b01-radio:checked,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-radio:checked,
.b01-overlay-primary .b01-radio:checked,
.b01-offcanvas-bar .b01-radio:checked {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Ccircle%20fill%3D%22%23666%22%20cx%3D%228%22%20cy%3D%228%22%20r%3D%222%22%20%2F%3E%0A%3C%2Fsvg%3E");
}
.b01-light .b01-checkbox:checked,
.b01-tile-primary:not(.b01-preserve-color) .b01-checkbox:checked,
.b01-tile-secondary:not(.b01-preserve-color) .b01-checkbox:checked,
.b01-card-primary.b01-card-body .b01-checkbox:checked,
.b01-card-primary > :not([class*='b01-card-media']) .b01-checkbox:checked,
.b01-card-secondary.b01-card-body .b01-checkbox:checked,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-checkbox:checked,
.b01-overlay-primary .b01-checkbox:checked,
.b01-offcanvas-bar .b01-checkbox:checked {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2214%22%20height%3D%2211%22%20viewBox%3D%220%200%2014%2011%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%23666%22%20points%3D%2212%201%205%207.5%202%205%201%205.5%205%2010%2013%201.5%22%20%2F%3E%0A%3C%2Fsvg%3E%0A");
}
.b01-light .b01-checkbox:indeterminate,
.b01-tile-primary:not(.b01-preserve-color) .b01-checkbox:indeterminate,
.b01-tile-secondary:not(.b01-preserve-color) .b01-checkbox:indeterminate,
.b01-card-primary.b01-card-body .b01-checkbox:indeterminate,
.b01-card-primary > :not([class*='b01-card-media']) .b01-checkbox:indeterminate,
.b01-card-secondary.b01-card-body .b01-checkbox:indeterminate,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-checkbox:indeterminate,
.b01-overlay-primary .b01-checkbox:indeterminate,
.b01-offcanvas-bar .b01-checkbox:indeterminate {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Crect%20fill%3D%22%23666%22%20x%3D%223%22%20y%3D%228%22%20width%3D%2210%22%20height%3D%221%22%20%2F%3E%0A%3C%2Fsvg%3E");
}
.b01-light .b01-form-label,
.b01-tile-primary:not(.b01-preserve-color) .b01-form-label,
.b01-tile-secondary:not(.b01-preserve-color) .b01-form-label,
.b01-card-primary.b01-card-body .b01-form-label,
.b01-card-primary > :not([class*='b01-card-media']) .b01-form-label,
.b01-card-secondary.b01-card-body .b01-form-label,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-form-label,
.b01-overlay-primary .b01-form-label,
.b01-offcanvas-bar .b01-form-label {
  color: #fff;
}
.b01-light .b01-form-icon,
.b01-tile-primary:not(.b01-preserve-color) .b01-form-icon,
.b01-tile-secondary:not(.b01-preserve-color) .b01-form-icon,
.b01-card-primary.b01-card-body .b01-form-icon,
.b01-card-primary > :not([class*='b01-card-media']) .b01-form-icon,
.b01-card-secondary.b01-card-body .b01-form-icon,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-form-icon,
.b01-overlay-primary .b01-form-icon,
.b01-offcanvas-bar .b01-form-icon {
  color: rgba(255, 255, 255, 0.85);
}
.b01-light .b01-form-icon:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-form-icon:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-form-icon:hover,
.b01-card-primary.b01-card-body .b01-form-icon:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-form-icon:hover,
.b01-card-secondary.b01-card-body .b01-form-icon:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-form-icon:hover,
.b01-overlay-primary .b01-form-icon:hover,
.b01-offcanvas-bar .b01-form-icon:hover {
  color: rgba(255, 255, 255, 0.9);
}
.b01-light .b01-button-default,
.b01-tile-primary:not(.b01-preserve-color) .b01-button-default,
.b01-tile-secondary:not(.b01-preserve-color) .b01-button-default,
.b01-card-primary.b01-card-body .b01-button-default,
.b01-card-primary > :not([class*='b01-card-media']) .b01-button-default,
.b01-card-secondary.b01-card-body .b01-button-default,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-button-default,
.b01-overlay-primary .b01-button-default,
.b01-offcanvas-bar .b01-button-default {
  background-color: transparent;
  color: #fff;
  border-color: rgba(255, 255, 255, 0.9);
}
.b01-light .b01-button-default:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-button-default:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-button-default:hover,
.b01-card-primary.b01-card-body .b01-button-default:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-button-default:hover,
.b01-card-secondary.b01-card-body .b01-button-default:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-button-default:hover,
.b01-overlay-primary .b01-button-default:hover,
.b01-offcanvas-bar .b01-button-default:hover {
  background-color: transparent;
  color: #fff;
  border-color: #fff;
}
.b01-light .b01-button-default:active,
.b01-light .b01-button-default.b01-active,
.b01-tile-primary:not(.b01-preserve-color) .b01-button-default:active,
.b01-tile-primary:not(.b01-preserve-color) .b01-button-default.b01-active,
.b01-tile-secondary:not(.b01-preserve-color) .b01-button-default:active,
.b01-tile-secondary:not(.b01-preserve-color) .b01-button-default.b01-active,
.b01-card-primary.b01-card-body .b01-button-default:active,
.b01-card-primary.b01-card-body .b01-button-default.b01-active,
.b01-card-primary > :not([class*='b01-card-media']) .b01-button-default:active,
.b01-card-primary > :not([class*='b01-card-media']) .b01-button-default.b01-active,
.b01-card-secondary.b01-card-body .b01-button-default:active,
.b01-card-secondary.b01-card-body .b01-button-default.b01-active,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-button-default:active,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-button-default.b01-active,
.b01-overlay-primary .b01-button-default:active,
.b01-overlay-primary .b01-button-default.b01-active,
.b01-offcanvas-bar .b01-button-default:active,
.b01-offcanvas-bar .b01-button-default.b01-active {
  background-color: transparent;
  color: #fff;
  border-color: #fff;
}
.b01-light .b01-button-primary,
.b01-tile-primary:not(.b01-preserve-color) .b01-button-primary,
.b01-tile-secondary:not(.b01-preserve-color) .b01-button-primary,
.b01-card-primary.b01-card-body .b01-button-primary,
.b01-card-primary > :not([class*='b01-card-media']) .b01-button-primary,
.b01-card-secondary.b01-card-body .b01-button-primary,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-button-primary,
.b01-overlay-primary .b01-button-primary,
.b01-offcanvas-bar .b01-button-primary {
  background-color: #fff;
  color: #666;
}
.b01-light .b01-button-primary:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-button-primary:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-button-primary:hover,
.b01-card-primary.b01-card-body .b01-button-primary:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-button-primary:hover,
.b01-card-secondary.b01-card-body .b01-button-primary:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-button-primary:hover,
.b01-overlay-primary .b01-button-primary:hover,
.b01-offcanvas-bar .b01-button-primary:hover {
  background-color: #f2f2f2;
  color: #666;
}
.b01-light .b01-button-primary:active,
.b01-light .b01-button-primary.b01-active,
.b01-tile-primary:not(.b01-preserve-color) .b01-button-primary:active,
.b01-tile-primary:not(.b01-preserve-color) .b01-button-primary.b01-active,
.b01-tile-secondary:not(.b01-preserve-color) .b01-button-primary:active,
.b01-tile-secondary:not(.b01-preserve-color) .b01-button-primary.b01-active,
.b01-card-primary.b01-card-body .b01-button-primary:active,
.b01-card-primary.b01-card-body .b01-button-primary.b01-active,
.b01-card-primary > :not([class*='b01-card-media']) .b01-button-primary:active,
.b01-card-primary > :not([class*='b01-card-media']) .b01-button-primary.b01-active,
.b01-card-secondary.b01-card-body .b01-button-primary:active,
.b01-card-secondary.b01-card-body .b01-button-primary.b01-active,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-button-primary:active,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-button-primary.b01-active,
.b01-overlay-primary .b01-button-primary:active,
.b01-overlay-primary .b01-button-primary.b01-active,
.b01-offcanvas-bar .b01-button-primary:active,
.b01-offcanvas-bar .b01-button-primary.b01-active {
  background-color: #e6e6e6;
  color: #666;
}
.b01-light .b01-button-secondary,
.b01-tile-primary:not(.b01-preserve-color) .b01-button-secondary,
.b01-tile-secondary:not(.b01-preserve-color) .b01-button-secondary,
.b01-card-primary.b01-card-body .b01-button-secondary,
.b01-card-primary > :not([class*='b01-card-media']) .b01-button-secondary,
.b01-card-secondary.b01-card-body .b01-button-secondary,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-button-secondary,
.b01-overlay-primary .b01-button-secondary,
.b01-offcanvas-bar .b01-button-secondary {
  background-color: #fff;
  color: #666;
}
.b01-light .b01-button-secondary:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-button-secondary:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-button-secondary:hover,
.b01-card-primary.b01-card-body .b01-button-secondary:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-button-secondary:hover,
.b01-card-secondary.b01-card-body .b01-button-secondary:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-button-secondary:hover,
.b01-overlay-primary .b01-button-secondary:hover,
.b01-offcanvas-bar .b01-button-secondary:hover {
  background-color: #f2f2f2;
  color: #666;
}
.b01-light .b01-button-secondary:active,
.b01-light .b01-button-secondary.b01-active,
.b01-tile-primary:not(.b01-preserve-color) .b01-button-secondary:active,
.b01-tile-primary:not(.b01-preserve-color) .b01-button-secondary.b01-active,
.b01-tile-secondary:not(.b01-preserve-color) .b01-button-secondary:active,
.b01-tile-secondary:not(.b01-preserve-color) .b01-button-secondary.b01-active,
.b01-card-primary.b01-card-body .b01-button-secondary:active,
.b01-card-primary.b01-card-body .b01-button-secondary.b01-active,
.b01-card-primary > :not([class*='b01-card-media']) .b01-button-secondary:active,
.b01-card-primary > :not([class*='b01-card-media']) .b01-button-secondary.b01-active,
.b01-card-secondary.b01-card-body .b01-button-secondary:active,
.b01-card-secondary.b01-card-body .b01-button-secondary.b01-active,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-button-secondary:active,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-button-secondary.b01-active,
.b01-overlay-primary .b01-button-secondary:active,
.b01-overlay-primary .b01-button-secondary.b01-active,
.b01-offcanvas-bar .b01-button-secondary:active,
.b01-offcanvas-bar .b01-button-secondary.b01-active {
  background-color: #e6e6e6;
  color: #666;
}
.b01-light .b01-button-text,
.b01-tile-primary:not(.b01-preserve-color) .b01-button-text,
.b01-tile-secondary:not(.b01-preserve-color) .b01-button-text,
.b01-card-primary.b01-card-body .b01-button-text,
.b01-card-primary > :not([class*='b01-card-media']) .b01-button-text,
.b01-card-secondary.b01-card-body .b01-button-text,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-button-text,
.b01-overlay-primary .b01-button-text,
.b01-offcanvas-bar .b01-button-text {
  color: #fff;
}
.b01-light .b01-button-text::before,
.b01-tile-primary:not(.b01-preserve-color) .b01-button-text::before,
.b01-tile-secondary:not(.b01-preserve-color) .b01-button-text::before,
.b01-card-primary.b01-card-body .b01-button-text::before,
.b01-card-primary > :not([class*='b01-card-media']) .b01-button-text::before,
.b01-card-secondary.b01-card-body .b01-button-text::before,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-button-text::before,
.b01-overlay-primary .b01-button-text::before,
.b01-offcanvas-bar .b01-button-text::before {
  border-bottom-color: #fff;
}
.b01-light .b01-button-text:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-button-text:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-button-text:hover,
.b01-card-primary.b01-card-body .b01-button-text:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-button-text:hover,
.b01-card-secondary.b01-card-body .b01-button-text:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-button-text:hover,
.b01-overlay-primary .b01-button-text:hover,
.b01-offcanvas-bar .b01-button-text:hover {
  color: #fff;
}
.b01-light .b01-button-text:disabled,
.b01-tile-primary:not(.b01-preserve-color) .b01-button-text:disabled,
.b01-tile-secondary:not(.b01-preserve-color) .b01-button-text:disabled,
.b01-card-primary.b01-card-body .b01-button-text:disabled,
.b01-card-primary > :not([class*='b01-card-media']) .b01-button-text:disabled,
.b01-card-secondary.b01-card-body .b01-button-text:disabled,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-button-text:disabled,
.b01-overlay-primary .b01-button-text:disabled,
.b01-offcanvas-bar .b01-button-text:disabled {
  color: rgba(255, 255, 255, 0.85);
}
.b01-light .b01-button-link,
.b01-tile-primary:not(.b01-preserve-color) .b01-button-link,
.b01-tile-secondary:not(.b01-preserve-color) .b01-button-link,
.b01-card-primary.b01-card-body .b01-button-link,
.b01-card-primary > :not([class*='b01-card-media']) .b01-button-link,
.b01-card-secondary.b01-card-body .b01-button-link,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-button-link,
.b01-overlay-primary .b01-button-link,
.b01-offcanvas-bar .b01-button-link {
  color: #fff;
}
.b01-light .b01-button-link:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-button-link:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-button-link:hover,
.b01-card-primary.b01-card-body .b01-button-link:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-button-link:hover,
.b01-card-secondary.b01-card-body .b01-button-link:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-button-link:hover,
.b01-overlay-primary .b01-button-link:hover,
.b01-offcanvas-bar .b01-button-link:hover {
  color: rgba(255, 255, 255, 0.85);
}
.b01-light.b01-card-badge,
.b01-tile-primary:not(.b01-preserve-color).b01-card-badge,
.b01-tile-secondary:not(.b01-preserve-color).b01-card-badge,
.b01-card-primary.b01-card-body.b01-card-badge,
.b01-card-primary > :not([class*='b01-card-media']).b01-card-badge,
.b01-card-secondary.b01-card-body.b01-card-badge,
.b01-card-secondary > :not([class*='b01-card-media']).b01-card-badge,
.b01-overlay-primary.b01-card-badge,
.b01-offcanvas-bar.b01-card-badge {
  background-color: #fff;
  color: #666;
}
.b01-light .b01-close,
.b01-tile-primary:not(.b01-preserve-color) .b01-close,
.b01-tile-secondary:not(.b01-preserve-color) .b01-close,
.b01-card-primary.b01-card-body .b01-close,
.b01-card-primary > :not([class*='b01-card-media']) .b01-close,
.b01-card-secondary.b01-card-body .b01-close,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-close,
.b01-overlay-primary .b01-close,
.b01-offcanvas-bar .b01-close {
  color: rgba(255, 255, 255, 0.85);
}
.b01-light .b01-close:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-close:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-close:hover,
.b01-card-primary.b01-card-body .b01-close:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-close:hover,
.b01-card-secondary.b01-card-body .b01-close:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-close:hover,
.b01-overlay-primary .b01-close:hover,
.b01-offcanvas-bar .b01-close:hover {
  color: rgba(255, 255, 255, 0.9);
}
.b01-light .b01-totop,
.b01-tile-primary:not(.b01-preserve-color) .b01-totop,
.b01-tile-secondary:not(.b01-preserve-color) .b01-totop,
.b01-card-primary.b01-card-body .b01-totop,
.b01-card-primary > :not([class*='b01-card-media']) .b01-totop,
.b01-card-secondary.b01-card-body .b01-totop,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-totop,
.b01-overlay-primary .b01-totop,
.b01-offcanvas-bar .b01-totop {
  color: rgba(255, 255, 255, 0.85);
}
.b01-light .b01-totop:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-totop:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-totop:hover,
.b01-card-primary.b01-card-body .b01-totop:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-totop:hover,
.b01-card-secondary.b01-card-body .b01-totop:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-totop:hover,
.b01-overlay-primary .b01-totop:hover,
.b01-offcanvas-bar .b01-totop:hover {
  color: rgba(255, 255, 255, 0.9);
}
.b01-light .b01-totop:active,
.b01-tile-primary:not(.b01-preserve-color) .b01-totop:active,
.b01-tile-secondary:not(.b01-preserve-color) .b01-totop:active,
.b01-card-primary.b01-card-body .b01-totop:active,
.b01-card-primary > :not([class*='b01-card-media']) .b01-totop:active,
.b01-card-secondary.b01-card-body .b01-totop:active,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-totop:active,
.b01-overlay-primary .b01-totop:active,
.b01-offcanvas-bar .b01-totop:active {
  color: #fff;
}
.b01-light .b01-marker,
.b01-tile-primary:not(.b01-preserve-color) .b01-marker,
.b01-tile-secondary:not(.b01-preserve-color) .b01-marker,
.b01-card-primary.b01-card-body .b01-marker,
.b01-card-primary > :not([class*='b01-card-media']) .b01-marker,
.b01-card-secondary.b01-card-body .b01-marker,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-marker,
.b01-overlay-primary .b01-marker,
.b01-offcanvas-bar .b01-marker {
  background: #f8f8f8;
  color: #666;
}
.b01-light .b01-marker:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-marker:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-marker:hover,
.b01-card-primary.b01-card-body .b01-marker:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-marker:hover,
.b01-card-secondary.b01-card-body .b01-marker:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-marker:hover,
.b01-overlay-primary .b01-marker:hover,
.b01-offcanvas-bar .b01-marker:hover {
  color: #666;
}
.b01-light .b01-badge,
.b01-tile-primary:not(.b01-preserve-color) .b01-badge,
.b01-tile-secondary:not(.b01-preserve-color) .b01-badge,
.b01-card-primary.b01-card-body .b01-badge,
.b01-card-primary > :not([class*='b01-card-media']) .b01-badge,
.b01-card-secondary.b01-card-body .b01-badge,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-badge,
.b01-overlay-primary .b01-badge,
.b01-offcanvas-bar .b01-badge {
  background-color: #fff;
  color: #666 !important;
}
.b01-light .b01-label,
.b01-tile-primary:not(.b01-preserve-color) .b01-label,
.b01-tile-secondary:not(.b01-preserve-color) .b01-label,
.b01-card-primary.b01-card-body .b01-label,
.b01-card-primary > :not([class*='b01-card-media']) .b01-label,
.b01-card-secondary.b01-card-body .b01-label,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-label,
.b01-overlay-primary .b01-label,
.b01-offcanvas-bar .b01-label {
  background-color: #fff;
  color: #666;
}
.b01-light .b01-article-meta,
.b01-tile-primary:not(.b01-preserve-color) .b01-article-meta,
.b01-tile-secondary:not(.b01-preserve-color) .b01-article-meta,
.b01-card-primary.b01-card-body .b01-article-meta,
.b01-card-primary > :not([class*='b01-card-media']) .b01-article-meta,
.b01-card-secondary.b01-card-body .b01-article-meta,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-article-meta,
.b01-overlay-primary .b01-article-meta,
.b01-offcanvas-bar .b01-article-meta {
  color: rgba(255, 255, 255, 0.85);
}
.b01-light .b01-search-input,
.b01-tile-primary:not(.b01-preserve-color) .b01-search-input,
.b01-tile-secondary:not(.b01-preserve-color) .b01-search-input,
.b01-card-primary.b01-card-body .b01-search-input,
.b01-card-primary > :not([class*='b01-card-media']) .b01-search-input,
.b01-card-secondary.b01-card-body .b01-search-input,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-search-input,
.b01-overlay-primary .b01-search-input,
.b01-offcanvas-bar .b01-search-input {
  color: rgba(255, 255, 255, 0.9);
}
.b01-light .b01-search-input::placeholder,
.b01-tile-primary:not(.b01-preserve-color) .b01-search-input::placeholder,
.b01-tile-secondary:not(.b01-preserve-color) .b01-search-input::placeholder,
.b01-card-primary.b01-card-body .b01-search-input::placeholder,
.b01-card-primary > :not([class*='b01-card-media']) .b01-search-input::placeholder,
.b01-card-secondary.b01-card-body .b01-search-input::placeholder,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-search-input::placeholder,
.b01-overlay-primary .b01-search-input::placeholder,
.b01-offcanvas-bar .b01-search-input::placeholder {
  color: rgba(255, 255, 255, 0.85);
}
.b01-light .b01-search .b01-search-icon,
.b01-tile-primary:not(.b01-preserve-color) .b01-search .b01-search-icon,
.b01-tile-secondary:not(.b01-preserve-color) .b01-search .b01-search-icon,
.b01-card-primary.b01-card-body .b01-search .b01-search-icon,
.b01-card-primary > :not([class*='b01-card-media']) .b01-search .b01-search-icon,
.b01-card-secondary.b01-card-body .b01-search .b01-search-icon,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-search .b01-search-icon,
.b01-overlay-primary .b01-search .b01-search-icon,
.b01-offcanvas-bar .b01-search .b01-search-icon {
  color: rgba(255, 255, 255, 0.85);
}
.b01-light .b01-search .b01-search-icon:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-search .b01-search-icon:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-search .b01-search-icon:hover,
.b01-card-primary.b01-card-body .b01-search .b01-search-icon:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-search .b01-search-icon:hover,
.b01-card-secondary.b01-card-body .b01-search .b01-search-icon:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-search .b01-search-icon:hover,
.b01-overlay-primary .b01-search .b01-search-icon:hover,
.b01-offcanvas-bar .b01-search .b01-search-icon:hover {
  color: rgba(255, 255, 255, 0.85);
}
.b01-light .b01-search-default .b01-search-input,
.b01-tile-primary:not(.b01-preserve-color) .b01-search-default .b01-search-input,
.b01-tile-secondary:not(.b01-preserve-color) .b01-search-default .b01-search-input,
.b01-card-primary.b01-card-body .b01-search-default .b01-search-input,
.b01-card-primary > :not([class*='b01-card-media']) .b01-search-default .b01-search-input,
.b01-card-secondary.b01-card-body .b01-search-default .b01-search-input,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-search-default .b01-search-input,
.b01-overlay-primary .b01-search-default .b01-search-input,
.b01-offcanvas-bar .b01-search-default .b01-search-input {
  background-color: transparent;
  border-color: rgba(255, 255, 255, 0.4);
}
.b01-light .b01-search-default .b01-search-input:focus,
.b01-tile-primary:not(.b01-preserve-color) .b01-search-default .b01-search-input:focus,
.b01-tile-secondary:not(.b01-preserve-color) .b01-search-default .b01-search-input:focus,
.b01-card-primary.b01-card-body .b01-search-default .b01-search-input:focus,
.b01-card-primary > :not([class*='b01-card-media']) .b01-search-default .b01-search-input:focus,
.b01-card-secondary.b01-card-body .b01-search-default .b01-search-input:focus,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-search-default .b01-search-input:focus,
.b01-overlay-primary .b01-search-default .b01-search-input:focus,
.b01-offcanvas-bar .b01-search-default .b01-search-input:focus {
  background-color: rgba(0, 0, 0, 0.05);
}
.b01-light .b01-search-navbar .b01-search-input,
.b01-tile-primary:not(.b01-preserve-color) .b01-search-navbar .b01-search-input,
.b01-tile-secondary:not(.b01-preserve-color) .b01-search-navbar .b01-search-input,
.b01-card-primary.b01-card-body .b01-search-navbar .b01-search-input,
.b01-card-primary > :not([class*='b01-card-media']) .b01-search-navbar .b01-search-input,
.b01-card-secondary.b01-card-body .b01-search-navbar .b01-search-input,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-search-navbar .b01-search-input,
.b01-overlay-primary .b01-search-navbar .b01-search-input,
.b01-offcanvas-bar .b01-search-navbar .b01-search-input {
  background-color: transparent;
}
.b01-light .b01-search-large .b01-search-input,
.b01-tile-primary:not(.b01-preserve-color) .b01-search-large .b01-search-input,
.b01-tile-secondary:not(.b01-preserve-color) .b01-search-large .b01-search-input,
.b01-card-primary.b01-card-body .b01-search-large .b01-search-input,
.b01-card-primary > :not([class*='b01-card-media']) .b01-search-large .b01-search-input,
.b01-card-secondary.b01-card-body .b01-search-large .b01-search-input,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-search-large .b01-search-input,
.b01-overlay-primary .b01-search-large .b01-search-input,
.b01-offcanvas-bar .b01-search-large .b01-search-input {
  background-color: transparent;
}
.b01-light .b01-search-toggle,
.b01-tile-primary:not(.b01-preserve-color) .b01-search-toggle,
.b01-tile-secondary:not(.b01-preserve-color) .b01-search-toggle,
.b01-card-primary.b01-card-body .b01-search-toggle,
.b01-card-primary > :not([class*='b01-card-media']) .b01-search-toggle,
.b01-card-secondary.b01-card-body .b01-search-toggle,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-search-toggle,
.b01-overlay-primary .b01-search-toggle,
.b01-offcanvas-bar .b01-search-toggle {
  color: rgba(255, 255, 255, 0.85);
}
.b01-light .b01-search-toggle:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-search-toggle:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-search-toggle:hover,
.b01-card-primary.b01-card-body .b01-search-toggle:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-search-toggle:hover,
.b01-card-secondary.b01-card-body .b01-search-toggle:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-search-toggle:hover,
.b01-overlay-primary .b01-search-toggle:hover,
.b01-offcanvas-bar .b01-search-toggle:hover {
  color: rgba(255, 255, 255, 0.9);
}
.b01-light .b01-accordion-title,
.b01-tile-primary:not(.b01-preserve-color) .b01-accordion-title,
.b01-tile-secondary:not(.b01-preserve-color) .b01-accordion-title,
.b01-card-primary.b01-card-body .b01-accordion-title,
.b01-card-primary > :not([class*='b01-card-media']) .b01-accordion-title,
.b01-card-secondary.b01-card-body .b01-accordion-title,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-accordion-title,
.b01-overlay-primary .b01-accordion-title,
.b01-offcanvas-bar .b01-accordion-title {
  color: #fff;
}
.b01-light .b01-accordion-title:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-accordion-title:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-accordion-title:hover,
.b01-card-primary.b01-card-body .b01-accordion-title:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-accordion-title:hover,
.b01-card-secondary.b01-card-body .b01-accordion-title:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-accordion-title:hover,
.b01-overlay-primary .b01-accordion-title:hover,
.b01-offcanvas-bar .b01-accordion-title:hover {
  color: rgba(255, 255, 255, 0.9);
}
.b01-light .b01-grid-divider > :not(.b01-first-column)::before,
.b01-tile-primary:not(.b01-preserve-color) .b01-grid-divider > :not(.b01-first-column)::before,
.b01-tile-secondary:not(.b01-preserve-color) .b01-grid-divider > :not(.b01-first-column)::before,
.b01-card-primary.b01-card-body .b01-grid-divider > :not(.b01-first-column)::before,
.b01-card-primary > :not([class*='b01-card-media']) .b01-grid-divider > :not(.b01-first-column)::before,
.b01-card-secondary.b01-card-body .b01-grid-divider > :not(.b01-first-column)::before,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-grid-divider > :not(.b01-first-column)::before,
.b01-overlay-primary .b01-grid-divider > :not(.b01-first-column)::before,
.b01-offcanvas-bar .b01-grid-divider > :not(.b01-first-column)::before {
  border-left-color: rgba(255, 255, 255, 0.4);
}
.b01-light .b01-grid-divider.b01-grid-stack > .b01-grid-margin::before,
.b01-tile-primary:not(.b01-preserve-color) .b01-grid-divider.b01-grid-stack > .b01-grid-margin::before,
.b01-tile-secondary:not(.b01-preserve-color) .b01-grid-divider.b01-grid-stack > .b01-grid-margin::before,
.b01-card-primary.b01-card-body .b01-grid-divider.b01-grid-stack > .b01-grid-margin::before,
.b01-card-primary > :not([class*='b01-card-media']) .b01-grid-divider.b01-grid-stack > .b01-grid-margin::before,
.b01-card-secondary.b01-card-body .b01-grid-divider.b01-grid-stack > .b01-grid-margin::before,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-grid-divider.b01-grid-stack > .b01-grid-margin::before,
.b01-overlay-primary .b01-grid-divider.b01-grid-stack > .b01-grid-margin::before,
.b01-offcanvas-bar .b01-grid-divider.b01-grid-stack > .b01-grid-margin::before {
  border-top-color: rgba(255, 255, 255, 0.4);
}
.b01-light .b01-nav-parent-icon > .b01-parent > a::after,
.b01-tile-primary:not(.b01-preserve-color) .b01-nav-parent-icon > .b01-parent > a::after,
.b01-tile-secondary:not(.b01-preserve-color) .b01-nav-parent-icon > .b01-parent > a::after,
.b01-card-primary.b01-card-body .b01-nav-parent-icon > .b01-parent > a::after,
.b01-card-primary > :not([class*='b01-card-media']) .b01-nav-parent-icon > .b01-parent > a::after,
.b01-card-secondary.b01-card-body .b01-nav-parent-icon > .b01-parent > a::after,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-nav-parent-icon > .b01-parent > a::after,
.b01-overlay-primary .b01-nav-parent-icon > .b01-parent > a::after,
.b01-offcanvas-bar .b01-nav-parent-icon > .b01-parent > a::after {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolyline%20fill%3D%22none%22%20stroke%3D%22rgba%28255,%20255,%20255,%200.9%29%22%20stroke-width%3D%221.1%22%20points%3D%2210%201%204%207%2010%2013%22%20%2F%3E%0A%3C%2Fsvg%3E");
}
.b01-light .b01-nav-parent-icon > .b01-parent.b01-open > a::after,
.b01-tile-primary:not(.b01-preserve-color) .b01-nav-parent-icon > .b01-parent.b01-open > a::after,
.b01-tile-secondary:not(.b01-preserve-color) .b01-nav-parent-icon > .b01-parent.b01-open > a::after,
.b01-card-primary.b01-card-body .b01-nav-parent-icon > .b01-parent.b01-open > a::after,
.b01-card-primary > :not([class*='b01-card-media']) .b01-nav-parent-icon > .b01-parent.b01-open > a::after,
.b01-card-secondary.b01-card-body .b01-nav-parent-icon > .b01-parent.b01-open > a::after,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-nav-parent-icon > .b01-parent.b01-open > a::after,
.b01-overlay-primary .b01-nav-parent-icon > .b01-parent.b01-open > a::after,
.b01-offcanvas-bar .b01-nav-parent-icon > .b01-parent.b01-open > a::after {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolyline%20fill%3D%22none%22%20stroke%3D%22rgba%28255,%20255,%20255,%200.9%29%22%20stroke-width%3D%221.1%22%20points%3D%221%204%207%2010%2013%204%22%20%2F%3E%0A%3C%2Fsvg%3E");
}
.b01-light .b01-nav-default > li > a,
.b01-tile-primary:not(.b01-preserve-color) .b01-nav-default > li > a,
.b01-tile-secondary:not(.b01-preserve-color) .b01-nav-default > li > a,
.b01-card-primary.b01-card-body .b01-nav-default > li > a,
.b01-card-primary > :not([class*='b01-card-media']) .b01-nav-default > li > a,
.b01-card-secondary.b01-card-body .b01-nav-default > li > a,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-nav-default > li > a,
.b01-overlay-primary .b01-nav-default > li > a,
.b01-offcanvas-bar .b01-nav-default > li > a {
  color: rgba(255, 255, 255, 0.85);
}
.b01-light .b01-nav-default > li > a:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-nav-default > li > a:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-nav-default > li > a:hover,
.b01-card-primary.b01-card-body .b01-nav-default > li > a:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-nav-default > li > a:hover,
.b01-card-secondary.b01-card-body .b01-nav-default > li > a:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-nav-default > li > a:hover,
.b01-overlay-primary .b01-nav-default > li > a:hover,
.b01-offcanvas-bar .b01-nav-default > li > a:hover {
  color: rgba(255, 255, 255, 0.9);
}
.b01-light .b01-nav-default > li.b01-active > a,
.b01-tile-primary:not(.b01-preserve-color) .b01-nav-default > li.b01-active > a,
.b01-tile-secondary:not(.b01-preserve-color) .b01-nav-default > li.b01-active > a,
.b01-card-primary.b01-card-body .b01-nav-default > li.b01-active > a,
.b01-card-primary > :not([class*='b01-card-media']) .b01-nav-default > li.b01-active > a,
.b01-card-secondary.b01-card-body .b01-nav-default > li.b01-active > a,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-nav-default > li.b01-active > a,
.b01-overlay-primary .b01-nav-default > li.b01-active > a,
.b01-offcanvas-bar .b01-nav-default > li.b01-active > a {
  color: #fff;
}
.b01-light .b01-nav-default .b01-nav-header,
.b01-tile-primary:not(.b01-preserve-color) .b01-nav-default .b01-nav-header,
.b01-tile-secondary:not(.b01-preserve-color) .b01-nav-default .b01-nav-header,
.b01-card-primary.b01-card-body .b01-nav-default .b01-nav-header,
.b01-card-primary > :not([class*='b01-card-media']) .b01-nav-default .b01-nav-header,
.b01-card-secondary.b01-card-body .b01-nav-default .b01-nav-header,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-nav-default .b01-nav-header,
.b01-overlay-primary .b01-nav-default .b01-nav-header,
.b01-offcanvas-bar .b01-nav-default .b01-nav-header {
  color: #fff;
}
.b01-light .b01-nav-default .b01-nav-divider,
.b01-tile-primary:not(.b01-preserve-color) .b01-nav-default .b01-nav-divider,
.b01-tile-secondary:not(.b01-preserve-color) .b01-nav-default .b01-nav-divider,
.b01-card-primary.b01-card-body .b01-nav-default .b01-nav-divider,
.b01-card-primary > :not([class*='b01-card-media']) .b01-nav-default .b01-nav-divider,
.b01-card-secondary.b01-card-body .b01-nav-default .b01-nav-divider,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-nav-default .b01-nav-divider,
.b01-overlay-primary .b01-nav-default .b01-nav-divider,
.b01-offcanvas-bar .b01-nav-default .b01-nav-divider {
  border-top-color: rgba(255, 255, 255, 0.4);
}
.b01-light .b01-nav-default .b01-nav-sub a,
.b01-tile-primary:not(.b01-preserve-color) .b01-nav-default .b01-nav-sub a,
.b01-tile-secondary:not(.b01-preserve-color) .b01-nav-default .b01-nav-sub a,
.b01-card-primary.b01-card-body .b01-nav-default .b01-nav-sub a,
.b01-card-primary > :not([class*='b01-card-media']) .b01-nav-default .b01-nav-sub a,
.b01-card-secondary.b01-card-body .b01-nav-default .b01-nav-sub a,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-nav-default .b01-nav-sub a,
.b01-overlay-primary .b01-nav-default .b01-nav-sub a,
.b01-offcanvas-bar .b01-nav-default .b01-nav-sub a {
  color: rgba(255, 255, 255, 0.85);
}
.b01-light .b01-nav-default .b01-nav-sub a:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-nav-default .b01-nav-sub a:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-nav-default .b01-nav-sub a:hover,
.b01-card-primary.b01-card-body .b01-nav-default .b01-nav-sub a:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-nav-default .b01-nav-sub a:hover,
.b01-card-secondary.b01-card-body .b01-nav-default .b01-nav-sub a:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-nav-default .b01-nav-sub a:hover,
.b01-overlay-primary .b01-nav-default .b01-nav-sub a:hover,
.b01-offcanvas-bar .b01-nav-default .b01-nav-sub a:hover {
  color: rgba(255, 255, 255, 0.9);
}
.b01-light .b01-nav-default .b01-nav-sub li.b01-active > a,
.b01-tile-primary:not(.b01-preserve-color) .b01-nav-default .b01-nav-sub li.b01-active > a,
.b01-tile-secondary:not(.b01-preserve-color) .b01-nav-default .b01-nav-sub li.b01-active > a,
.b01-card-primary.b01-card-body .b01-nav-default .b01-nav-sub li.b01-active > a,
.b01-card-primary > :not([class*='b01-card-media']) .b01-nav-default .b01-nav-sub li.b01-active > a,
.b01-card-secondary.b01-card-body .b01-nav-default .b01-nav-sub li.b01-active > a,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-nav-default .b01-nav-sub li.b01-active > a,
.b01-overlay-primary .b01-nav-default .b01-nav-sub li.b01-active > a,
.b01-offcanvas-bar .b01-nav-default .b01-nav-sub li.b01-active > a {
  color: #fff;
}
.b01-light .b01-nav-primary > li > a,
.b01-tile-primary:not(.b01-preserve-color) .b01-nav-primary > li > a,
.b01-tile-secondary:not(.b01-preserve-color) .b01-nav-primary > li > a,
.b01-card-primary.b01-card-body .b01-nav-primary > li > a,
.b01-card-primary > :not([class*='b01-card-media']) .b01-nav-primary > li > a,
.b01-card-secondary.b01-card-body .b01-nav-primary > li > a,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-nav-primary > li > a,
.b01-overlay-primary .b01-nav-primary > li > a,
.b01-offcanvas-bar .b01-nav-primary > li > a {
  color: rgba(255, 255, 255, 0.85);
}
.b01-light .b01-nav-primary > li > a:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-nav-primary > li > a:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-nav-primary > li > a:hover,
.b01-card-primary.b01-card-body .b01-nav-primary > li > a:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-nav-primary > li > a:hover,
.b01-card-secondary.b01-card-body .b01-nav-primary > li > a:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-nav-primary > li > a:hover,
.b01-overlay-primary .b01-nav-primary > li > a:hover,
.b01-offcanvas-bar .b01-nav-primary > li > a:hover {
  color: rgba(255, 255, 255, 0.9);
}
.b01-light .b01-nav-primary > li.b01-active > a,
.b01-tile-primary:not(.b01-preserve-color) .b01-nav-primary > li.b01-active > a,
.b01-tile-secondary:not(.b01-preserve-color) .b01-nav-primary > li.b01-active > a,
.b01-card-primary.b01-card-body .b01-nav-primary > li.b01-active > a,
.b01-card-primary > :not([class*='b01-card-media']) .b01-nav-primary > li.b01-active > a,
.b01-card-secondary.b01-card-body .b01-nav-primary > li.b01-active > a,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-nav-primary > li.b01-active > a,
.b01-overlay-primary .b01-nav-primary > li.b01-active > a,
.b01-offcanvas-bar .b01-nav-primary > li.b01-active > a {
  color: #fff;
}
.b01-light .b01-nav-primary .b01-nav-header,
.b01-tile-primary:not(.b01-preserve-color) .b01-nav-primary .b01-nav-header,
.b01-tile-secondary:not(.b01-preserve-color) .b01-nav-primary .b01-nav-header,
.b01-card-primary.b01-card-body .b01-nav-primary .b01-nav-header,
.b01-card-primary > :not([class*='b01-card-media']) .b01-nav-primary .b01-nav-header,
.b01-card-secondary.b01-card-body .b01-nav-primary .b01-nav-header,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-nav-primary .b01-nav-header,
.b01-overlay-primary .b01-nav-primary .b01-nav-header,
.b01-offcanvas-bar .b01-nav-primary .b01-nav-header {
  color: #fff;
}
.b01-light .b01-nav-primary .b01-nav-divider,
.b01-tile-primary:not(.b01-preserve-color) .b01-nav-primary .b01-nav-divider,
.b01-tile-secondary:not(.b01-preserve-color) .b01-nav-primary .b01-nav-divider,
.b01-card-primary.b01-card-body .b01-nav-primary .b01-nav-divider,
.b01-card-primary > :not([class*='b01-card-media']) .b01-nav-primary .b01-nav-divider,
.b01-card-secondary.b01-card-body .b01-nav-primary .b01-nav-divider,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-nav-primary .b01-nav-divider,
.b01-overlay-primary .b01-nav-primary .b01-nav-divider,
.b01-offcanvas-bar .b01-nav-primary .b01-nav-divider {
  border-top-color: rgba(255, 255, 255, 0.4);
}
.b01-light .b01-nav-primary .b01-nav-sub a,
.b01-tile-primary:not(.b01-preserve-color) .b01-nav-primary .b01-nav-sub a,
.b01-tile-secondary:not(.b01-preserve-color) .b01-nav-primary .b01-nav-sub a,
.b01-card-primary.b01-card-body .b01-nav-primary .b01-nav-sub a,
.b01-card-primary > :not([class*='b01-card-media']) .b01-nav-primary .b01-nav-sub a,
.b01-card-secondary.b01-card-body .b01-nav-primary .b01-nav-sub a,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-nav-primary .b01-nav-sub a,
.b01-overlay-primary .b01-nav-primary .b01-nav-sub a,
.b01-offcanvas-bar .b01-nav-primary .b01-nav-sub a {
  color: rgba(255, 255, 255, 0.85);
}
.b01-light .b01-nav-primary .b01-nav-sub a:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-nav-primary .b01-nav-sub a:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-nav-primary .b01-nav-sub a:hover,
.b01-card-primary.b01-card-body .b01-nav-primary .b01-nav-sub a:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-nav-primary .b01-nav-sub a:hover,
.b01-card-secondary.b01-card-body .b01-nav-primary .b01-nav-sub a:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-nav-primary .b01-nav-sub a:hover,
.b01-overlay-primary .b01-nav-primary .b01-nav-sub a:hover,
.b01-offcanvas-bar .b01-nav-primary .b01-nav-sub a:hover {
  color: rgba(255, 255, 255, 0.9);
}
.b01-light .b01-nav-primary .b01-nav-sub li.b01-active > a,
.b01-tile-primary:not(.b01-preserve-color) .b01-nav-primary .b01-nav-sub li.b01-active > a,
.b01-tile-secondary:not(.b01-preserve-color) .b01-nav-primary .b01-nav-sub li.b01-active > a,
.b01-card-primary.b01-card-body .b01-nav-primary .b01-nav-sub li.b01-active > a,
.b01-card-primary > :not([class*='b01-card-media']) .b01-nav-primary .b01-nav-sub li.b01-active > a,
.b01-card-secondary.b01-card-body .b01-nav-primary .b01-nav-sub li.b01-active > a,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-nav-primary .b01-nav-sub li.b01-active > a,
.b01-overlay-primary .b01-nav-primary .b01-nav-sub li.b01-active > a,
.b01-offcanvas-bar .b01-nav-primary .b01-nav-sub li.b01-active > a {
  color: #fff;
}
.b01-light .b01-nav.b01-nav-divider > :not(.b01-nav-divider) + :not(.b01-nav-header, .b01-nav-divider),
.b01-tile-primary:not(.b01-preserve-color) .b01-nav.b01-nav-divider > :not(.b01-nav-divider) + :not(.b01-nav-header, .b01-nav-divider),
.b01-tile-secondary:not(.b01-preserve-color) .b01-nav.b01-nav-divider > :not(.b01-nav-divider) + :not(.b01-nav-header, .b01-nav-divider),
.b01-card-primary.b01-card-body .b01-nav.b01-nav-divider > :not(.b01-nav-divider) + :not(.b01-nav-header, .b01-nav-divider),
.b01-card-primary > :not([class*='b01-card-media']) .b01-nav.b01-nav-divider > :not(.b01-nav-divider) + :not(.b01-nav-header, .b01-nav-divider),
.b01-card-secondary.b01-card-body .b01-nav.b01-nav-divider > :not(.b01-nav-divider) + :not(.b01-nav-header, .b01-nav-divider),
.b01-card-secondary > :not([class*='b01-card-media']) .b01-nav.b01-nav-divider > :not(.b01-nav-divider) + :not(.b01-nav-header, .b01-nav-divider),
.b01-overlay-primary .b01-nav.b01-nav-divider > :not(.b01-nav-divider) + :not(.b01-nav-header, .b01-nav-divider),
.b01-offcanvas-bar .b01-nav.b01-nav-divider > :not(.b01-nav-divider) + :not(.b01-nav-header, .b01-nav-divider) {
  border-top-color: rgba(255, 255, 255, 0.4);
}
.b01-light .b01-navbar-nav > li > a,
.b01-tile-primary:not(.b01-preserve-color) .b01-navbar-nav > li > a,
.b01-tile-secondary:not(.b01-preserve-color) .b01-navbar-nav > li > a,
.b01-card-primary.b01-card-body .b01-navbar-nav > li > a,
.b01-card-primary > :not([class*='b01-card-media']) .b01-navbar-nav > li > a,
.b01-card-secondary.b01-card-body .b01-navbar-nav > li > a,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-navbar-nav > li > a,
.b01-overlay-primary .b01-navbar-nav > li > a,
.b01-offcanvas-bar .b01-navbar-nav > li > a {
  color: rgba(255, 255, 255, 0.85);
}
.b01-light .b01-navbar-nav > li:hover > a,
.b01-light .b01-navbar-nav > li > a[aria-expanded="true"],
.b01-tile-primary:not(.b01-preserve-color) .b01-navbar-nav > li:hover > a,
.b01-tile-primary:not(.b01-preserve-color) .b01-navbar-nav > li > a[aria-expanded="true"],
.b01-tile-secondary:not(.b01-preserve-color) .b01-navbar-nav > li:hover > a,
.b01-tile-secondary:not(.b01-preserve-color) .b01-navbar-nav > li > a[aria-expanded="true"],
.b01-card-primary.b01-card-body .b01-navbar-nav > li:hover > a,
.b01-card-primary.b01-card-body .b01-navbar-nav > li > a[aria-expanded="true"],
.b01-card-primary > :not([class*='b01-card-media']) .b01-navbar-nav > li:hover > a,
.b01-card-primary > :not([class*='b01-card-media']) .b01-navbar-nav > li > a[aria-expanded="true"],
.b01-card-secondary.b01-card-body .b01-navbar-nav > li:hover > a,
.b01-card-secondary.b01-card-body .b01-navbar-nav > li > a[aria-expanded="true"],
.b01-card-secondary > :not([class*='b01-card-media']) .b01-navbar-nav > li:hover > a,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-navbar-nav > li > a[aria-expanded="true"],
.b01-overlay-primary .b01-navbar-nav > li:hover > a,
.b01-overlay-primary .b01-navbar-nav > li > a[aria-expanded="true"],
.b01-offcanvas-bar .b01-navbar-nav > li:hover > a,
.b01-offcanvas-bar .b01-navbar-nav > li > a[aria-expanded="true"] {
  color: rgba(255, 255, 255, 0.9);
}
.b01-light .b01-navbar-nav > li > a:active,
.b01-tile-primary:not(.b01-preserve-color) .b01-navbar-nav > li > a:active,
.b01-tile-secondary:not(.b01-preserve-color) .b01-navbar-nav > li > a:active,
.b01-card-primary.b01-card-body .b01-navbar-nav > li > a:active,
.b01-card-primary > :not([class*='b01-card-media']) .b01-navbar-nav > li > a:active,
.b01-card-secondary.b01-card-body .b01-navbar-nav > li > a:active,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-navbar-nav > li > a:active,
.b01-overlay-primary .b01-navbar-nav > li > a:active,
.b01-offcanvas-bar .b01-navbar-nav > li > a:active {
  color: #fff;
}
.b01-light .b01-navbar-nav > li.b01-active > a,
.b01-tile-primary:not(.b01-preserve-color) .b01-navbar-nav > li.b01-active > a,
.b01-tile-secondary:not(.b01-preserve-color) .b01-navbar-nav > li.b01-active > a,
.b01-card-primary.b01-card-body .b01-navbar-nav > li.b01-active > a,
.b01-card-primary > :not([class*='b01-card-media']) .b01-navbar-nav > li.b01-active > a,
.b01-card-secondary.b01-card-body .b01-navbar-nav > li.b01-active > a,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-navbar-nav > li.b01-active > a,
.b01-overlay-primary .b01-navbar-nav > li.b01-active > a,
.b01-offcanvas-bar .b01-navbar-nav > li.b01-active > a {
  color: #fff;
}
.b01-light .b01-navbar-item,
.b01-tile-primary:not(.b01-preserve-color) .b01-navbar-item,
.b01-tile-secondary:not(.b01-preserve-color) .b01-navbar-item,
.b01-card-primary.b01-card-body .b01-navbar-item,
.b01-card-primary > :not([class*='b01-card-media']) .b01-navbar-item,
.b01-card-secondary.b01-card-body .b01-navbar-item,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-navbar-item,
.b01-overlay-primary .b01-navbar-item,
.b01-offcanvas-bar .b01-navbar-item {
  color: rgba(255, 255, 255, 0.9);
}
.b01-light .b01-navbar-toggle,
.b01-tile-primary:not(.b01-preserve-color) .b01-navbar-toggle,
.b01-tile-secondary:not(.b01-preserve-color) .b01-navbar-toggle,
.b01-card-primary.b01-card-body .b01-navbar-toggle,
.b01-card-primary > :not([class*='b01-card-media']) .b01-navbar-toggle,
.b01-card-secondary.b01-card-body .b01-navbar-toggle,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-navbar-toggle,
.b01-overlay-primary .b01-navbar-toggle,
.b01-offcanvas-bar .b01-navbar-toggle {
  color: rgba(255, 255, 255, 0.85);
}
.b01-light .b01-navbar-toggle:hover,
.b01-light .b01-navbar-toggle[aria-expanded="true"],
.b01-tile-primary:not(.b01-preserve-color) .b01-navbar-toggle:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-navbar-toggle[aria-expanded="true"],
.b01-tile-secondary:not(.b01-preserve-color) .b01-navbar-toggle:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-navbar-toggle[aria-expanded="true"],
.b01-card-primary.b01-card-body .b01-navbar-toggle:hover,
.b01-card-primary.b01-card-body .b01-navbar-toggle[aria-expanded="true"],
.b01-card-primary > :not([class*='b01-card-media']) .b01-navbar-toggle:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-navbar-toggle[aria-expanded="true"],
.b01-card-secondary.b01-card-body .b01-navbar-toggle:hover,
.b01-card-secondary.b01-card-body .b01-navbar-toggle[aria-expanded="true"],
.b01-card-secondary > :not([class*='b01-card-media']) .b01-navbar-toggle:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-navbar-toggle[aria-expanded="true"],
.b01-overlay-primary .b01-navbar-toggle:hover,
.b01-overlay-primary .b01-navbar-toggle[aria-expanded="true"],
.b01-offcanvas-bar .b01-navbar-toggle:hover,
.b01-offcanvas-bar .b01-navbar-toggle[aria-expanded="true"] {
  color: rgba(255, 255, 255, 0.9);
}
.b01-light .b01-subnav > * > :first-child,
.b01-tile-primary:not(.b01-preserve-color) .b01-subnav > * > :first-child,
.b01-tile-secondary:not(.b01-preserve-color) .b01-subnav > * > :first-child,
.b01-card-primary.b01-card-body .b01-subnav > * > :first-child,
.b01-card-primary > :not([class*='b01-card-media']) .b01-subnav > * > :first-child,
.b01-card-secondary.b01-card-body .b01-subnav > * > :first-child,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-subnav > * > :first-child,
.b01-overlay-primary .b01-subnav > * > :first-child,
.b01-offcanvas-bar .b01-subnav > * > :first-child {
  color: rgba(255, 255, 255, 0.85);
}
.b01-light .b01-subnav > * > a:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-subnav > * > a:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-subnav > * > a:hover,
.b01-card-primary.b01-card-body .b01-subnav > * > a:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-subnav > * > a:hover,
.b01-card-secondary.b01-card-body .b01-subnav > * > a:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-subnav > * > a:hover,
.b01-overlay-primary .b01-subnav > * > a:hover,
.b01-offcanvas-bar .b01-subnav > * > a:hover {
  color: rgba(255, 255, 255, 0.9);
}
.b01-light .b01-subnav > .b01-active > a,
.b01-tile-primary:not(.b01-preserve-color) .b01-subnav > .b01-active > a,
.b01-tile-secondary:not(.b01-preserve-color) .b01-subnav > .b01-active > a,
.b01-card-primary.b01-card-body .b01-subnav > .b01-active > a,
.b01-card-primary > :not([class*='b01-card-media']) .b01-subnav > .b01-active > a,
.b01-card-secondary.b01-card-body .b01-subnav > .b01-active > a,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-subnav > .b01-active > a,
.b01-overlay-primary .b01-subnav > .b01-active > a,
.b01-offcanvas-bar .b01-subnav > .b01-active > a {
  color: #fff;
}
.b01-light .b01-subnav-divider > :nth-child(n+2):not(.b01-first-column)::before,
.b01-tile-primary:not(.b01-preserve-color) .b01-subnav-divider > :nth-child(n+2):not(.b01-first-column)::before,
.b01-tile-secondary:not(.b01-preserve-color) .b01-subnav-divider > :nth-child(n+2):not(.b01-first-column)::before,
.b01-card-primary.b01-card-body .b01-subnav-divider > :nth-child(n+2):not(.b01-first-column)::before,
.b01-card-primary > :not([class*='b01-card-media']) .b01-subnav-divider > :nth-child(n+2):not(.b01-first-column)::before,
.b01-card-secondary.b01-card-body .b01-subnav-divider > :nth-child(n+2):not(.b01-first-column)::before,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-subnav-divider > :nth-child(n+2):not(.b01-first-column)::before,
.b01-overlay-primary .b01-subnav-divider > :nth-child(n+2):not(.b01-first-column)::before,
.b01-offcanvas-bar .b01-subnav-divider > :nth-child(n+2):not(.b01-first-column)::before {
  border-left-color: rgba(255, 255, 255, 0.4);
}
.b01-light .b01-subnav-pill > * > :first-child,
.b01-tile-primary:not(.b01-preserve-color) .b01-subnav-pill > * > :first-child,
.b01-tile-secondary:not(.b01-preserve-color) .b01-subnav-pill > * > :first-child,
.b01-card-primary.b01-card-body .b01-subnav-pill > * > :first-child,
.b01-card-primary > :not([class*='b01-card-media']) .b01-subnav-pill > * > :first-child,
.b01-card-secondary.b01-card-body .b01-subnav-pill > * > :first-child,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-subnav-pill > * > :first-child,
.b01-overlay-primary .b01-subnav-pill > * > :first-child,
.b01-offcanvas-bar .b01-subnav-pill > * > :first-child {
  background-color: transparent;
  color: rgba(255, 255, 255, 0.85);
}
.b01-light .b01-subnav-pill > * > a:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-subnav-pill > * > a:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-subnav-pill > * > a:hover,
.b01-card-primary.b01-card-body .b01-subnav-pill > * > a:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-subnav-pill > * > a:hover,
.b01-card-secondary.b01-card-body .b01-subnav-pill > * > a:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-subnav-pill > * > a:hover,
.b01-overlay-primary .b01-subnav-pill > * > a:hover,
.b01-offcanvas-bar .b01-subnav-pill > * > a:hover {
  background-color: rgba(255, 255, 255, 0.3);
  color: rgba(255, 255, 255, 0.9);
}
.b01-light .b01-subnav-pill > * > a:active,
.b01-tile-primary:not(.b01-preserve-color) .b01-subnav-pill > * > a:active,
.b01-tile-secondary:not(.b01-preserve-color) .b01-subnav-pill > * > a:active,
.b01-card-primary.b01-card-body .b01-subnav-pill > * > a:active,
.b01-card-primary > :not([class*='b01-card-media']) .b01-subnav-pill > * > a:active,
.b01-card-secondary.b01-card-body .b01-subnav-pill > * > a:active,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-subnav-pill > * > a:active,
.b01-overlay-primary .b01-subnav-pill > * > a:active,
.b01-offcanvas-bar .b01-subnav-pill > * > a:active {
  background-color: rgba(255, 255, 255, 0.3);
  color: rgba(255, 255, 255, 0.9);
}
.b01-light .b01-subnav-pill > .b01-active > a,
.b01-tile-primary:not(.b01-preserve-color) .b01-subnav-pill > .b01-active > a,
.b01-tile-secondary:not(.b01-preserve-color) .b01-subnav-pill > .b01-active > a,
.b01-card-primary.b01-card-body .b01-subnav-pill > .b01-active > a,
.b01-card-primary > :not([class*='b01-card-media']) .b01-subnav-pill > .b01-active > a,
.b01-card-secondary.b01-card-body .b01-subnav-pill > .b01-active > a,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-subnav-pill > .b01-active > a,
.b01-overlay-primary .b01-subnav-pill > .b01-active > a,
.b01-offcanvas-bar .b01-subnav-pill > .b01-active > a {
  background-color: #fff;
  color: #666;
}
.b01-light .b01-subnav > .b01-disabled > a,
.b01-tile-primary:not(.b01-preserve-color) .b01-subnav > .b01-disabled > a,
.b01-tile-secondary:not(.b01-preserve-color) .b01-subnav > .b01-disabled > a,
.b01-card-primary.b01-card-body .b01-subnav > .b01-disabled > a,
.b01-card-primary > :not([class*='b01-card-media']) .b01-subnav > .b01-disabled > a,
.b01-card-secondary.b01-card-body .b01-subnav > .b01-disabled > a,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-subnav > .b01-disabled > a,
.b01-overlay-primary .b01-subnav > .b01-disabled > a,
.b01-offcanvas-bar .b01-subnav > .b01-disabled > a {
  color: rgba(255, 255, 255, 0.85);
}
.b01-light .b01-breadcrumb > * > *,
.b01-tile-primary:not(.b01-preserve-color) .b01-breadcrumb > * > *,
.b01-tile-secondary:not(.b01-preserve-color) .b01-breadcrumb > * > *,
.b01-card-primary.b01-card-body .b01-breadcrumb > * > *,
.b01-card-primary > :not([class*='b01-card-media']) .b01-breadcrumb > * > *,
.b01-card-secondary.b01-card-body .b01-breadcrumb > * > *,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-breadcrumb > * > *,
.b01-overlay-primary .b01-breadcrumb > * > *,
.b01-offcanvas-bar .b01-breadcrumb > * > * {
  color: rgba(255, 255, 255, 0.85);
}
.b01-light .b01-breadcrumb > * > :hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-breadcrumb > * > :hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-breadcrumb > * > :hover,
.b01-card-primary.b01-card-body .b01-breadcrumb > * > :hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-breadcrumb > * > :hover,
.b01-card-secondary.b01-card-body .b01-breadcrumb > * > :hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-breadcrumb > * > :hover,
.b01-overlay-primary .b01-breadcrumb > * > :hover,
.b01-offcanvas-bar .b01-breadcrumb > * > :hover {
  color: rgba(255, 255, 255, 0.9);
}
.b01-light .b01-breadcrumb > :last-child > *,
.b01-tile-primary:not(.b01-preserve-color) .b01-breadcrumb > :last-child > *,
.b01-tile-secondary:not(.b01-preserve-color) .b01-breadcrumb > :last-child > *,
.b01-card-primary.b01-card-body .b01-breadcrumb > :last-child > *,
.b01-card-primary > :not([class*='b01-card-media']) .b01-breadcrumb > :last-child > *,
.b01-card-secondary.b01-card-body .b01-breadcrumb > :last-child > *,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-breadcrumb > :last-child > *,
.b01-overlay-primary .b01-breadcrumb > :last-child > *,
.b01-offcanvas-bar .b01-breadcrumb > :last-child > * {
  color: rgba(255, 255, 255, 0.9);
}
.b01-light .b01-breadcrumb > :nth-child(n+2):not(.b01-first-column)::before,
.b01-tile-primary:not(.b01-preserve-color) .b01-breadcrumb > :nth-child(n+2):not(.b01-first-column)::before,
.b01-tile-secondary:not(.b01-preserve-color) .b01-breadcrumb > :nth-child(n+2):not(.b01-first-column)::before,
.b01-card-primary.b01-card-body .b01-breadcrumb > :nth-child(n+2):not(.b01-first-column)::before,
.b01-card-primary > :not([class*='b01-card-media']) .b01-breadcrumb > :nth-child(n+2):not(.b01-first-column)::before,
.b01-card-secondary.b01-card-body .b01-breadcrumb > :nth-child(n+2):not(.b01-first-column)::before,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-breadcrumb > :nth-child(n+2):not(.b01-first-column)::before,
.b01-overlay-primary .b01-breadcrumb > :nth-child(n+2):not(.b01-first-column)::before,
.b01-offcanvas-bar .b01-breadcrumb > :nth-child(n+2):not(.b01-first-column)::before {
  color: rgba(255, 255, 255, 0.85);
}
.b01-light .b01-pagination > * > *,
.b01-tile-primary:not(.b01-preserve-color) .b01-pagination > * > *,
.b01-tile-secondary:not(.b01-preserve-color) .b01-pagination > * > *,
.b01-card-primary.b01-card-body .b01-pagination > * > *,
.b01-card-primary > :not([class*='b01-card-media']) .b01-pagination > * > *,
.b01-card-secondary.b01-card-body .b01-pagination > * > *,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-pagination > * > *,
.b01-overlay-primary .b01-pagination > * > *,
.b01-offcanvas-bar .b01-pagination > * > * {
  color: rgba(255, 255, 255, 0.85);
}
.b01-light .b01-pagination > * > :hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-pagination > * > :hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-pagination > * > :hover,
.b01-card-primary.b01-card-body .b01-pagination > * > :hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-pagination > * > :hover,
.b01-card-secondary.b01-card-body .b01-pagination > * > :hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-pagination > * > :hover,
.b01-overlay-primary .b01-pagination > * > :hover,
.b01-offcanvas-bar .b01-pagination > * > :hover {
  color: rgba(255, 255, 255, 0.9);
}
.b01-light .b01-pagination > .b01-active > *,
.b01-tile-primary:not(.b01-preserve-color) .b01-pagination > .b01-active > *,
.b01-tile-secondary:not(.b01-preserve-color) .b01-pagination > .b01-active > *,
.b01-card-primary.b01-card-body .b01-pagination > .b01-active > *,
.b01-card-primary > :not([class*='b01-card-media']) .b01-pagination > .b01-active > *,
.b01-card-secondary.b01-card-body .b01-pagination > .b01-active > *,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-pagination > .b01-active > *,
.b01-overlay-primary .b01-pagination > .b01-active > *,
.b01-offcanvas-bar .b01-pagination > .b01-active > * {
  color: rgba(255, 255, 255, 0.9);
}
.b01-light .b01-pagination > .b01-disabled > *,
.b01-tile-primary:not(.b01-preserve-color) .b01-pagination > .b01-disabled > *,
.b01-tile-secondary:not(.b01-preserve-color) .b01-pagination > .b01-disabled > *,
.b01-card-primary.b01-card-body .b01-pagination > .b01-disabled > *,
.b01-card-primary > :not([class*='b01-card-media']) .b01-pagination > .b01-disabled > *,
.b01-card-secondary.b01-card-body .b01-pagination > .b01-disabled > *,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-pagination > .b01-disabled > *,
.b01-overlay-primary .b01-pagination > .b01-disabled > *,
.b01-offcanvas-bar .b01-pagination > .b01-disabled > * {
  color: rgba(255, 255, 255, 0.85);
}
.b01-light .b01-tab::before,
.b01-tile-primary:not(.b01-preserve-color) .b01-tab::before,
.b01-tile-secondary:not(.b01-preserve-color) .b01-tab::before,
.b01-card-primary.b01-card-body .b01-tab::before,
.b01-card-primary > :not([class*='b01-card-media']) .b01-tab::before,
.b01-card-secondary.b01-card-body .b01-tab::before,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-tab::before,
.b01-overlay-primary .b01-tab::before,
.b01-offcanvas-bar .b01-tab::before {
  border-color: rgba(255, 255, 255, 0.4);
}
.b01-light .b01-tab > * > a,
.b01-tile-primary:not(.b01-preserve-color) .b01-tab > * > a,
.b01-tile-secondary:not(.b01-preserve-color) .b01-tab > * > a,
.b01-card-primary.b01-card-body .b01-tab > * > a,
.b01-card-primary > :not([class*='b01-card-media']) .b01-tab > * > a,
.b01-card-secondary.b01-card-body .b01-tab > * > a,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-tab > * > a,
.b01-overlay-primary .b01-tab > * > a,
.b01-offcanvas-bar .b01-tab > * > a {
  color: rgba(255, 255, 255, 0.85);
}
.b01-light .b01-tab > * > a:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-tab > * > a:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-tab > * > a:hover,
.b01-card-primary.b01-card-body .b01-tab > * > a:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-tab > * > a:hover,
.b01-card-secondary.b01-card-body .b01-tab > * > a:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-tab > * > a:hover,
.b01-overlay-primary .b01-tab > * > a:hover,
.b01-offcanvas-bar .b01-tab > * > a:hover {
  color: rgba(255, 255, 255, 0.9);
}
.b01-light .b01-tab > .b01-active > a,
.b01-tile-primary:not(.b01-preserve-color) .b01-tab > .b01-active > a,
.b01-tile-secondary:not(.b01-preserve-color) .b01-tab > .b01-active > a,
.b01-card-primary.b01-card-body .b01-tab > .b01-active > a,
.b01-card-primary > :not([class*='b01-card-media']) .b01-tab > .b01-active > a,
.b01-card-secondary.b01-card-body .b01-tab > .b01-active > a,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-tab > .b01-active > a,
.b01-overlay-primary .b01-tab > .b01-active > a,
.b01-offcanvas-bar .b01-tab > .b01-active > a {
  color: #fff;
  border-color: #fff;
}
.b01-light .b01-tab > .b01-disabled > a,
.b01-tile-primary:not(.b01-preserve-color) .b01-tab > .b01-disabled > a,
.b01-tile-secondary:not(.b01-preserve-color) .b01-tab > .b01-disabled > a,
.b01-card-primary.b01-card-body .b01-tab > .b01-disabled > a,
.b01-card-primary > :not([class*='b01-card-media']) .b01-tab > .b01-disabled > a,
.b01-card-secondary.b01-card-body .b01-tab > .b01-disabled > a,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-tab > .b01-disabled > a,
.b01-overlay-primary .b01-tab > .b01-disabled > a,
.b01-offcanvas-bar .b01-tab > .b01-disabled > a {
  color: rgba(255, 255, 255, 0.85);
}
.b01-light .b01-slidenav,
.b01-tile-primary:not(.b01-preserve-color) .b01-slidenav,
.b01-tile-secondary:not(.b01-preserve-color) .b01-slidenav,
.b01-card-primary.b01-card-body .b01-slidenav,
.b01-card-primary > :not([class*='b01-card-media']) .b01-slidenav,
.b01-card-secondary.b01-card-body .b01-slidenav,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-slidenav,
.b01-overlay-primary .b01-slidenav,
.b01-offcanvas-bar .b01-slidenav {
  color: rgba(255, 255, 255, 0.7);
}
.b01-light .b01-slidenav:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-slidenav:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-slidenav:hover,
.b01-card-primary.b01-card-body .b01-slidenav:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-slidenav:hover,
.b01-card-secondary.b01-card-body .b01-slidenav:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-slidenav:hover,
.b01-overlay-primary .b01-slidenav:hover,
.b01-offcanvas-bar .b01-slidenav:hover {
  color: rgba(255, 255, 255, 0.95);
}
.b01-light .b01-slidenav:active,
.b01-tile-primary:not(.b01-preserve-color) .b01-slidenav:active,
.b01-tile-secondary:not(.b01-preserve-color) .b01-slidenav:active,
.b01-card-primary.b01-card-body .b01-slidenav:active,
.b01-card-primary > :not([class*='b01-card-media']) .b01-slidenav:active,
.b01-card-secondary.b01-card-body .b01-slidenav:active,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-slidenav:active,
.b01-overlay-primary .b01-slidenav:active,
.b01-offcanvas-bar .b01-slidenav:active {
  color: rgba(255, 255, 255, 0.7);
}
.b01-light .b01-dotnav > * > *,
.b01-tile-primary:not(.b01-preserve-color) .b01-dotnav > * > *,
.b01-tile-secondary:not(.b01-preserve-color) .b01-dotnav > * > *,
.b01-card-primary.b01-card-body .b01-dotnav > * > *,
.b01-card-primary > :not([class*='b01-card-media']) .b01-dotnav > * > *,
.b01-card-secondary.b01-card-body .b01-dotnav > * > *,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-dotnav > * > *,
.b01-overlay-primary .b01-dotnav > * > *,
.b01-offcanvas-bar .b01-dotnav > * > * {
  background-color: transparent;
  border-color: rgba(255, 255, 255, 0.9);
}
.b01-light .b01-dotnav > * > :hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-dotnav > * > :hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-dotnav > * > :hover,
.b01-card-primary.b01-card-body .b01-dotnav > * > :hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-dotnav > * > :hover,
.b01-card-secondary.b01-card-body .b01-dotnav > * > :hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-dotnav > * > :hover,
.b01-overlay-primary .b01-dotnav > * > :hover,
.b01-offcanvas-bar .b01-dotnav > * > :hover {
  background-color: rgba(255, 255, 255, 0.9);
  border-color: transparent;
}
.b01-light .b01-dotnav > * > :active,
.b01-tile-primary:not(.b01-preserve-color) .b01-dotnav > * > :active,
.b01-tile-secondary:not(.b01-preserve-color) .b01-dotnav > * > :active,
.b01-card-primary.b01-card-body .b01-dotnav > * > :active,
.b01-card-primary > :not([class*='b01-card-media']) .b01-dotnav > * > :active,
.b01-card-secondary.b01-card-body .b01-dotnav > * > :active,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-dotnav > * > :active,
.b01-overlay-primary .b01-dotnav > * > :active,
.b01-offcanvas-bar .b01-dotnav > * > :active {
  background-color: rgba(255, 255, 255, 0.5);
  border-color: transparent;
}
.b01-light .b01-dotnav > .b01-active > *,
.b01-tile-primary:not(.b01-preserve-color) .b01-dotnav > .b01-active > *,
.b01-tile-secondary:not(.b01-preserve-color) .b01-dotnav > .b01-active > *,
.b01-card-primary.b01-card-body .b01-dotnav > .b01-active > *,
.b01-card-primary > :not([class*='b01-card-media']) .b01-dotnav > .b01-active > *,
.b01-card-secondary.b01-card-body .b01-dotnav > .b01-active > *,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-dotnav > .b01-active > *,
.b01-overlay-primary .b01-dotnav > .b01-active > *,
.b01-offcanvas-bar .b01-dotnav > .b01-active > * {
  background-color: rgba(255, 255, 255, 0.9);
  border-color: transparent;
}
.b01-light .b01-iconnav > * > a,
.b01-tile-primary:not(.b01-preserve-color) .b01-iconnav > * > a,
.b01-tile-secondary:not(.b01-preserve-color) .b01-iconnav > * > a,
.b01-card-primary.b01-card-body .b01-iconnav > * > a,
.b01-card-primary > :not([class*='b01-card-media']) .b01-iconnav > * > a,
.b01-card-secondary.b01-card-body .b01-iconnav > * > a,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-iconnav > * > a,
.b01-overlay-primary .b01-iconnav > * > a,
.b01-offcanvas-bar .b01-iconnav > * > a {
  color: rgba(255, 255, 255, 0.85);
}
.b01-light .b01-iconnav > * > a:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-iconnav > * > a:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-iconnav > * > a:hover,
.b01-card-primary.b01-card-body .b01-iconnav > * > a:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-iconnav > * > a:hover,
.b01-card-secondary.b01-card-body .b01-iconnav > * > a:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-iconnav > * > a:hover,
.b01-overlay-primary .b01-iconnav > * > a:hover,
.b01-offcanvas-bar .b01-iconnav > * > a:hover {
  color: rgba(255, 255, 255, 0.9);
}
.b01-light .b01-iconnav > .b01-active > a,
.b01-tile-primary:not(.b01-preserve-color) .b01-iconnav > .b01-active > a,
.b01-tile-secondary:not(.b01-preserve-color) .b01-iconnav > .b01-active > a,
.b01-card-primary.b01-card-body .b01-iconnav > .b01-active > a,
.b01-card-primary > :not([class*='b01-card-media']) .b01-iconnav > .b01-active > a,
.b01-card-secondary.b01-card-body .b01-iconnav > .b01-active > a,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-iconnav > .b01-active > a,
.b01-overlay-primary .b01-iconnav > .b01-active > a,
.b01-offcanvas-bar .b01-iconnav > .b01-active > a {
  color: rgba(255, 255, 255, 0.9);
}
.b01-light .b01-text-lead,
.b01-tile-primary:not(.b01-preserve-color) .b01-text-lead,
.b01-tile-secondary:not(.b01-preserve-color) .b01-text-lead,
.b01-card-primary.b01-card-body .b01-text-lead,
.b01-card-primary > :not([class*='b01-card-media']) .b01-text-lead,
.b01-card-secondary.b01-card-body .b01-text-lead,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-text-lead,
.b01-overlay-primary .b01-text-lead,
.b01-offcanvas-bar .b01-text-lead {
  color: rgba(255, 255, 255, 0.9);
}
.b01-light .b01-text-meta,
.b01-tile-primary:not(.b01-preserve-color) .b01-text-meta,
.b01-tile-secondary:not(.b01-preserve-color) .b01-text-meta,
.b01-card-primary.b01-card-body .b01-text-meta,
.b01-card-primary > :not([class*='b01-card-media']) .b01-text-meta,
.b01-card-secondary.b01-card-body .b01-text-meta,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-text-meta,
.b01-overlay-primary .b01-text-meta,
.b01-offcanvas-bar .b01-text-meta {
  color: rgba(255, 255, 255, 0.85);
}
.b01-light .b01-text-muted,
.b01-tile-primary:not(.b01-preserve-color) .b01-text-muted,
.b01-tile-secondary:not(.b01-preserve-color) .b01-text-muted,
.b01-card-primary.b01-card-body .b01-text-muted,
.b01-card-primary > :not([class*='b01-card-media']) .b01-text-muted,
.b01-card-secondary.b01-card-body .b01-text-muted,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-text-muted,
.b01-overlay-primary .b01-text-muted,
.b01-offcanvas-bar .b01-text-muted {
  color: rgba(255, 255, 255, 0.85) !important;
}
.b01-light .b01-text-emphasis,
.b01-tile-primary:not(.b01-preserve-color) .b01-text-emphasis,
.b01-tile-secondary:not(.b01-preserve-color) .b01-text-emphasis,
.b01-card-primary.b01-card-body .b01-text-emphasis,
.b01-card-primary > :not([class*='b01-card-media']) .b01-text-emphasis,
.b01-card-secondary.b01-card-body .b01-text-emphasis,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-text-emphasis,
.b01-overlay-primary .b01-text-emphasis,
.b01-offcanvas-bar .b01-text-emphasis {
  color: #fff !important;
}
.b01-light .b01-text-primary,
.b01-tile-primary:not(.b01-preserve-color) .b01-text-primary,
.b01-tile-secondary:not(.b01-preserve-color) .b01-text-primary,
.b01-card-primary.b01-card-body .b01-text-primary,
.b01-card-primary > :not([class*='b01-card-media']) .b01-text-primary,
.b01-card-secondary.b01-card-body .b01-text-primary,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-text-primary,
.b01-overlay-primary .b01-text-primary,
.b01-offcanvas-bar .b01-text-primary {
  color: #fff !important;
}
.b01-light .b01-text-secondary,
.b01-tile-primary:not(.b01-preserve-color) .b01-text-secondary,
.b01-tile-secondary:not(.b01-preserve-color) .b01-text-secondary,
.b01-card-primary.b01-card-body .b01-text-secondary,
.b01-card-primary > :not([class*='b01-card-media']) .b01-text-secondary,
.b01-card-secondary.b01-card-body .b01-text-secondary,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-text-secondary,
.b01-overlay-primary .b01-text-secondary,
.b01-offcanvas-bar .b01-text-secondary {
  color: #fff !important;
}
.b01-light .b01-column-divider,
.b01-tile-primary:not(.b01-preserve-color) .b01-column-divider,
.b01-tile-secondary:not(.b01-preserve-color) .b01-column-divider,
.b01-card-primary.b01-card-body .b01-column-divider,
.b01-card-primary > :not([class*='b01-card-media']) .b01-column-divider,
.b01-card-secondary.b01-card-body .b01-column-divider,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-column-divider,
.b01-overlay-primary .b01-column-divider,
.b01-offcanvas-bar .b01-column-divider {
  column-rule-color: rgba(255, 255, 255, 0.4);
}
.b01-light .b01-logo,
.b01-tile-primary:not(.b01-preserve-color) .b01-logo,
.b01-tile-secondary:not(.b01-preserve-color) .b01-logo,
.b01-card-primary.b01-card-body .b01-logo,
.b01-card-primary > :not([class*='b01-card-media']) .b01-logo,
.b01-card-secondary.b01-card-body .b01-logo,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-logo,
.b01-overlay-primary .b01-logo,
.b01-offcanvas-bar .b01-logo {
  color: #fff;
}
.b01-light .b01-logo:hover,
.b01-tile-primary:not(.b01-preserve-color) .b01-logo:hover,
.b01-tile-secondary:not(.b01-preserve-color) .b01-logo:hover,
.b01-card-primary.b01-card-body .b01-logo:hover,
.b01-card-primary > :not([class*='b01-card-media']) .b01-logo:hover,
.b01-card-secondary.b01-card-body .b01-logo:hover,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-logo:hover,
.b01-overlay-primary .b01-logo:hover,
.b01-offcanvas-bar .b01-logo:hover {
  color: #fff;
}
.b01-light .b01-logo > :not(.b01-logo-inverse):not(:only-of-type),
.b01-tile-primary:not(.b01-preserve-color) .b01-logo > :not(.b01-logo-inverse):not(:only-of-type),
.b01-tile-secondary:not(.b01-preserve-color) .b01-logo > :not(.b01-logo-inverse):not(:only-of-type),
.b01-card-primary.b01-card-body .b01-logo > :not(.b01-logo-inverse):not(:only-of-type),
.b01-card-primary > :not([class*='b01-card-media']) .b01-logo > :not(.b01-logo-inverse):not(:only-of-type),
.b01-card-secondary.b01-card-body .b01-logo > :not(.b01-logo-inverse):not(:only-of-type),
.b01-card-secondary > :not([class*='b01-card-media']) .b01-logo > :not(.b01-logo-inverse):not(:only-of-type),
.b01-overlay-primary .b01-logo > :not(.b01-logo-inverse):not(:only-of-type),
.b01-offcanvas-bar .b01-logo > :not(.b01-logo-inverse):not(:only-of-type) {
  display: none;
}
.b01-light .b01-logo-inverse,
.b01-tile-primary:not(.b01-preserve-color) .b01-logo-inverse,
.b01-tile-secondary:not(.b01-preserve-color) .b01-logo-inverse,
.b01-card-primary.b01-card-body .b01-logo-inverse,
.b01-card-primary > :not([class*='b01-card-media']) .b01-logo-inverse,
.b01-card-secondary.b01-card-body .b01-logo-inverse,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-logo-inverse,
.b01-overlay-primary .b01-logo-inverse,
.b01-offcanvas-bar .b01-logo-inverse {
  display: block;
}
.b01-light .b01-table-striped > tr:nth-of-type(even):last-child,
.b01-light .b01-table-striped tbody tr:nth-of-type(even):last-child,
.b01-tile-primary:not(.b01-preserve-color) .b01-table-striped > tr:nth-of-type(even):last-child,
.b01-tile-primary:not(.b01-preserve-color) .b01-table-striped tbody tr:nth-of-type(even):last-child,
.b01-tile-secondary:not(.b01-preserve-color) .b01-table-striped > tr:nth-of-type(even):last-child,
.b01-tile-secondary:not(.b01-preserve-color) .b01-table-striped tbody tr:nth-of-type(even):last-child,
.b01-card-primary.b01-card-body .b01-table-striped > tr:nth-of-type(even):last-child,
.b01-card-primary.b01-card-body .b01-table-striped tbody tr:nth-of-type(even):last-child,
.b01-card-primary > :not([class*='b01-card-media']) .b01-table-striped > tr:nth-of-type(even):last-child,
.b01-card-primary > :not([class*='b01-card-media']) .b01-table-striped tbody tr:nth-of-type(even):last-child,
.b01-card-secondary.b01-card-body .b01-table-striped > tr:nth-of-type(even):last-child,
.b01-card-secondary.b01-card-body .b01-table-striped tbody tr:nth-of-type(even):last-child,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-table-striped > tr:nth-of-type(even):last-child,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-table-striped tbody tr:nth-of-type(even):last-child,
.b01-overlay-primary .b01-table-striped > tr:nth-of-type(even):last-child,
.b01-overlay-primary .b01-table-striped tbody tr:nth-of-type(even):last-child,
.b01-offcanvas-bar .b01-table-striped > tr:nth-of-type(even):last-child,
.b01-offcanvas-bar .b01-table-striped tbody tr:nth-of-type(even):last-child {
  border-bottom-color: rgba(255, 255, 255, 0.4);
}
.b01-light .b01-accordion-title::before,
.b01-tile-primary:not(.b01-preserve-color) .b01-accordion-title::before,
.b01-tile-secondary:not(.b01-preserve-color) .b01-accordion-title::before,
.b01-card-primary.b01-card-body .b01-accordion-title::before,
.b01-card-primary > :not([class*='b01-card-media']) .b01-accordion-title::before,
.b01-card-secondary.b01-card-body .b01-accordion-title::before,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-accordion-title::before,
.b01-overlay-primary .b01-accordion-title::before,
.b01-offcanvas-bar .b01-accordion-title::before {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2213%22%20height%3D%2213%22%20viewBox%3D%220%200%2013%2013%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Crect%20fill%3D%22rgba%28255,%20255,%20255,%200.9%29%22%20width%3D%2213%22%20height%3D%221%22%20x%3D%220%22%20y%3D%226%22%20%2F%3E%0A%20%20%20%20%3Crect%20fill%3D%22rgba%28255,%20255,%20255,%200.9%29%22%20width%3D%221%22%20height%3D%2213%22%20x%3D%226%22%20y%3D%220%22%20%2F%3E%0A%3C%2Fsvg%3E");
}
.b01-light .b01-open > .b01-accordion-title::before,
.b01-tile-primary:not(.b01-preserve-color) .b01-open > .b01-accordion-title::before,
.b01-tile-secondary:not(.b01-preserve-color) .b01-open > .b01-accordion-title::before,
.b01-card-primary.b01-card-body .b01-open > .b01-accordion-title::before,
.b01-card-primary > :not([class*='b01-card-media']) .b01-open > .b01-accordion-title::before,
.b01-card-secondary.b01-card-body .b01-open > .b01-accordion-title::before,
.b01-card-secondary > :not([class*='b01-card-media']) .b01-open > .b01-accordion-title::before,
.b01-overlay-primary .b01-open > .b01-accordion-title::before,
.b01-offcanvas-bar .b01-open > .b01-accordion-title::before {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2213%22%20height%3D%2213%22%20viewBox%3D%220%200%2013%2013%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Crect%20fill%3D%22rgba%28255,%20255,%20255,%200.9%29%22%20width%3D%2213%22%20height%3D%221%22%20x%3D%220%22%20y%3D%226%22%20%2F%3E%0A%3C%2Fsvg%3E");
}
.b01-light .b01remind,
.b01-tile-primary:not(.b01-preserve-color) .b01remind,
.b01-tile-secondary:not(.b01-preserve-color) .b01remind,
.b01-card-primary.b01-card-body .b01remind,
.b01-card-primary > :not([class*='b01-card-media']) .b01remind,
.b01-card-secondary.b01-card-body .b01remind,
.b01-card-secondary > :not([class*='b01-card-media']) .b01remind,
.b01-overlay-primary .b01remind,
.b01-offcanvas-bar .b01remind {
  color: rgba(255, 255, 255, 0.85);
}
.b01-light .b01remind a,
.b01-tile-primary:not(.b01-preserve-color) .b01remind a,
.b01-tile-secondary:not(.b01-preserve-color) .b01remind a,
.b01-card-primary.b01-card-body .b01remind a,
.b01-card-primary > :not([class*='b01-card-media']) .b01remind a,
.b01-card-secondary.b01-card-body .b01remind a,
.b01-card-secondary > :not([class*='b01-card-media']) .b01remind a,
.b01-overlay-primary .b01remind a,
.b01-offcanvas-bar .b01remind a {
  color: rgba(255, 255, 255, 0.85);
}
.b01-light .b01remind svg > circle,
.b01-light .b01remind svg > polygon,
.b01-light .b01remind svg > path,
.b01-tile-primary:not(.b01-preserve-color) .b01remind svg > circle,
.b01-tile-primary:not(.b01-preserve-color) .b01remind svg > polygon,
.b01-tile-primary:not(.b01-preserve-color) .b01remind svg > path,
.b01-tile-secondary:not(.b01-preserve-color) .b01remind svg > circle,
.b01-tile-secondary:not(.b01-preserve-color) .b01remind svg > polygon,
.b01-tile-secondary:not(.b01-preserve-color) .b01remind svg > path,
.b01-card-primary.b01-card-body .b01remind svg > circle,
.b01-card-primary.b01-card-body .b01remind svg > polygon,
.b01-card-primary.b01-card-body .b01remind svg > path,
.b01-card-primary > :not([class*='b01-card-media']) .b01remind svg > circle,
.b01-card-primary > :not([class*='b01-card-media']) .b01remind svg > polygon,
.b01-card-primary > :not([class*='b01-card-media']) .b01remind svg > path,
.b01-card-secondary.b01-card-body .b01remind svg > circle,
.b01-card-secondary.b01-card-body .b01remind svg > polygon,
.b01-card-secondary.b01-card-body .b01remind svg > path,
.b01-card-secondary > :not([class*='b01-card-media']) .b01remind svg > circle,
.b01-card-secondary > :not([class*='b01-card-media']) .b01remind svg > polygon,
.b01-card-secondary > :not([class*='b01-card-media']) .b01remind svg > path,
.b01-overlay-primary .b01remind svg > circle,
.b01-overlay-primary .b01remind svg > polygon,
.b01-overlay-primary .b01remind svg > path,
.b01-offcanvas-bar .b01remind svg > circle,
.b01-offcanvas-bar .b01remind svg > polygon,
.b01-offcanvas-bar .b01remind svg > path {
  fill: rgba(255, 255, 255, 0.85);
}
.b01-light .choices__inner,
.b01-tile-primary:not(.b01-preserve-color) .choices__inner,
.b01-tile-secondary:not(.b01-preserve-color) .choices__inner,
.b01-card-primary.b01-card-body .choices__inner,
.b01-card-primary > :not([class*='b01-card-media']) .choices__inner,
.b01-card-secondary.b01-card-body .choices__inner,
.b01-card-secondary > :not([class*='b01-card-media']) .choices__inner,
.b01-overlay-primary .choices__inner,
.b01-offcanvas-bar .choices__inner {
  background-color: rgba(255, 255, 255, 0.3);
  color: rgba(255, 255, 255, 0.9);
  background-clip: padding-box;
  border-color: rgba(255, 255, 255, 0.4);
}
.b01-light .choices__input::placeholder,
.b01-tile-primary:not(.b01-preserve-color) .choices__input::placeholder,
.b01-tile-secondary:not(.b01-preserve-color) .choices__input::placeholder,
.b01-card-primary.b01-card-body .choices__input::placeholder,
.b01-card-primary > :not([class*='b01-card-media']) .choices__input::placeholder,
.b01-card-secondary.b01-card-body .choices__input::placeholder,
.b01-card-secondary > :not([class*='b01-card-media']) .choices__input::placeholder,
.b01-overlay-primary .choices__input::placeholder,
.b01-offcanvas-bar .choices__input::placeholder {
  color: rgba(255, 255, 255, 0.9);
}
.b01-light .choices__list--dropdown .choices__item,
.b01-light .choices__list[aria-expanded] .choices__item,
.b01-tile-primary:not(.b01-preserve-color) .choices__list--dropdown .choices__item,
.b01-tile-primary:not(.b01-preserve-color) .choices__list[aria-expanded] .choices__item,
.b01-tile-secondary:not(.b01-preserve-color) .choices__list--dropdown .choices__item,
.b01-tile-secondary:not(.b01-preserve-color) .choices__list[aria-expanded] .choices__item,
.b01-card-primary.b01-card-body .choices__list--dropdown .choices__item,
.b01-card-primary.b01-card-body .choices__list[aria-expanded] .choices__item,
.b01-card-primary > :not([class*='b01-card-media']) .choices__list--dropdown .choices__item,
.b01-card-primary > :not([class*='b01-card-media']) .choices__list[aria-expanded] .choices__item,
.b01-card-secondary.b01-card-body .choices__list--dropdown .choices__item,
.b01-card-secondary.b01-card-body .choices__list[aria-expanded] .choices__item,
.b01-card-secondary > :not([class*='b01-card-media']) .choices__list--dropdown .choices__item,
.b01-card-secondary > :not([class*='b01-card-media']) .choices__list[aria-expanded] .choices__item,
.b01-overlay-primary .choices__list--dropdown .choices__item,
.b01-overlay-primary .choices__list[aria-expanded] .choices__item,
.b01-offcanvas-bar .choices__list--dropdown .choices__item,
.b01-offcanvas-bar .choices__list[aria-expanded] .choices__item {
  color: #666;
}
.b01-light .choices__list--dropdown .choices__item--selectable.is-highlighted,
.b01-light .choices__list[aria-expanded] .choices__item--selectable.is-highlighted,
.b01-tile-primary:not(.b01-preserve-color) .choices__list--dropdown .choices__item--selectable.is-highlighted,
.b01-tile-primary:not(.b01-preserve-color) .choices__list[aria-expanded] .choices__item--selectable.is-highlighted,
.b01-tile-secondary:not(.b01-preserve-color) .choices__list--dropdown .choices__item--selectable.is-highlighted,
.b01-tile-secondary:not(.b01-preserve-color) .choices__list[aria-expanded] .choices__item--selectable.is-highlighted,
.b01-card-primary.b01-card-body .choices__list--dropdown .choices__item--selectable.is-highlighted,
.b01-card-primary.b01-card-body .choices__list[aria-expanded] .choices__item--selectable.is-highlighted,
.b01-card-primary > :not([class*='b01-card-media']) .choices__list--dropdown .choices__item--selectable.is-highlighted,
.b01-card-primary > :not([class*='b01-card-media']) .choices__list[aria-expanded] .choices__item--selectable.is-highlighted,
.b01-card-secondary.b01-card-body .choices__list--dropdown .choices__item--selectable.is-highlighted,
.b01-card-secondary.b01-card-body .choices__list[aria-expanded] .choices__item--selectable.is-highlighted,
.b01-card-secondary > :not([class*='b01-card-media']) .choices__list--dropdown .choices__item--selectable.is-highlighted,
.b01-card-secondary > :not([class*='b01-card-media']) .choices__list[aria-expanded] .choices__item--selectable.is-highlighted,
.b01-overlay-primary .choices__list--dropdown .choices__item--selectable.is-highlighted,
.b01-overlay-primary .choices__list[aria-expanded] .choices__item--selectable.is-highlighted,
.b01-offcanvas-bar .choices__list--dropdown .choices__item--selectable.is-highlighted,
.b01-offcanvas-bar .choices__list[aria-expanded] .choices__item--selectable.is-highlighted {
  color: rgba(255, 255, 255, 0.9);
}
.b01-light .choices[data-type*=select-one]::after,
.b01-tile-primary:not(.b01-preserve-color) .choices[data-type*=select-one]::after,
.b01-tile-secondary:not(.b01-preserve-color) .choices[data-type*=select-one]::after,
.b01-card-primary.b01-card-body .choices[data-type*=select-one]::after,
.b01-card-primary > :not([class*='b01-card-media']) .choices[data-type*=select-one]::after,
.b01-card-secondary.b01-card-body .choices[data-type*=select-one]::after,
.b01-card-secondary > :not([class*='b01-card-media']) .choices[data-type*=select-one]::after,
.b01-overlay-primary .choices[data-type*=select-one]::after,
.b01-offcanvas-bar .choices[data-type*=select-one]::after {
  border-color: #fff transparent transparent transparent;
}
.b01-light .choices[data-type*=select-one].is-open::after,
.b01-tile-primary:not(.b01-preserve-color) .choices[data-type*=select-one].is-open::after,
.b01-tile-secondary:not(.b01-preserve-color) .choices[data-type*=select-one].is-open::after,
.b01-card-primary.b01-card-body .choices[data-type*=select-one].is-open::after,
.b01-card-primary > :not([class*='b01-card-media']) .choices[data-type*=select-one].is-open::after,
.b01-card-secondary.b01-card-body .choices[data-type*=select-one].is-open::after,
.b01-card-secondary > :not([class*='b01-card-media']) .choices[data-type*=select-one].is-open::after,
.b01-overlay-primary .choices[data-type*=select-one].is-open::after,
.b01-offcanvas-bar .choices[data-type*=select-one].is-open::after {
  border-color: transparent transparent #fff transparent;
}
/* ========================================================================
   Component: Print
 ========================================================================== */
@media print {
  *,
  *::before,
  *::after {
    background: transparent !important;
    color: black !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }
  a,
  a:visited {
    text-decoration: underline;
  }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  @page {
    margin: 0.5cm;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
}
/* Selection pseudo-element
 ========================================================================== */
/************************* Table Mini ******************************** */
.b01-table-mini th,
.b01-table-mini td {
  padding: 4px 6px;
}
.b01-icon-button-small {
  width: 28px;
  height: 28px;
}
.b01-icon-action {
  border-radius: 4px;
  width: 28px;
  height: 28px;
}
.b01-icon-button-success {
  background: #e6e6e6;
}
/* ### Variables ########################################################### */
/* ### Components ########################################################### */
.b01-input,
.b01-select,
.b01-textarea,
.choices__inner {
  border-radius: 4px;
}
.b01-checkbox {
  border-radius: 2px;
}
fieldset {
  margin: 0;
}
.b01-form label[for] {
  cursor: pointer;
}
label.invalid {
  color: #DD2C00;
}
.b01-textarea.invalid,
.b01-select.invalid,
.b01-input.invalid {
  border: 1px solid #DD2C00 !important;
  background-color: #f2dede !important;
}
input.b01-checkbox-big {
  height: 30px;
  width: 30px;
}
label > .b01-checkbox-big {
  margin-right: 10px;
}
/* Size modifiers
 ========================================================================== */
/*
 * Tertiary
 */
.b01-section-tertiary {
  background: #333333;
}
/*
 * Quaternary
 */
.b01-section-quaternary {
  background: #333333;
}
.b01-container-medium {
  max-width: 1200px;
}
/*
 * Mini
 */
/* Horizontal */
.b01-grid-mini {
  margin-left: -6px;
}
.b01-grid-mini > * {
  padding-left: 6px;
}
.b01-grid-column-mini {
  margin-left: -6px;
}
.b01-grid-column-mini > * {
  padding-left: 6px;
}
/* Vertical */
.b01-grid + .b01-grid-mini,
.b01-grid-mini > .b01-grid-margin,
* + .b01-grid-margin-mini {
  margin-top: 6px;
}
/* Vertical */
.b01-grid + .b01-grid-row-mini,
.b01-grid-row-mini > .b01-grid-margin,
* + .b01-grid-margin-mini {
  margin-top: 6px;
}
/*
 * Tertiary
 */
.b01-card-tertiary {
  background: #333333;
  color: #333333;
  box-shadow: 0px 1px 1px 2px rgba(0, 0, 0, 0.15);
}
.b01-card-tertiary .b01-card-title {
  color: #333333;
}
.b01-card-tertiary.b01-card-hover:hover {
  background-color: #262626;
  box-shadow: 1px 6px 8px rgba(0, 0, 0, 0.16) !important;
}
/*
 * Quaternary
 */
.b01-card-quaternary {
  background: #333333;
  color: #333333;
  box-shadow: 0px 1px 1px 2px rgba(0, 0, 0, 0.15);
}
.b01-card-quaternary .b01-card-title {
  color: #333333;
}
.b01-card-quaternary.b01-card-hover:hover {
  background-color: #262626;
  box-shadow: 1px 6px 8px rgba(0, 0, 0, 0.16) !important;
}
.b01-card-mini.b01-card-body,
.b01-card-mini .b01-card-body {
  padding: 15px 15px;
}
.b01-card-mini .b01-card-header {
  padding: 10px 15px;
}
.b01-card-mini .b01-card-footer {
  padding: 10px 15px;
}
/* Hover modifier
 ========================================================================== */
.b01-card-hover.b01-card-tertiary:hover {
  background: #262626 !important;
}
.b01-card-hover.b01-card-quaternary:hover {
  background: #262626 !important;
}
.b01-card-shadow {
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.08);
}
.b01-card-warning {
  background: #ffe7a0;
}
.b01-card-danger {
  background: #ffbbaa;
}
/* ========================================================================
   Component: Alert
 ========================================================================== */
/************************* Label ******************************** */
.hook-label.b01-position-bottom-left {
  border-radius: 0 4px 0 0;
}
.hook-label.b01-position-bottom-right {
  border-radius: 4px 0 0 0;
}
/*
 * Success
 */
.b01-label-medium {
  padding: 2px 15px;
  line-height: 28px;
  font-size: 0.875rem;
}
/* Desktop and bigger */
@media (min-width: 1200px) {
  .b01-overlay {
    padding: 40px 40px;
  }
}
.b01-overlay-small {
  padding: 15px 15px;
}
.b01-overlay-mini {
  padding: 5px 15px;
}
.b01-tab-small {
  margin-left: -20px / 2;
}
.b01-tab-small > * {
  padding-left: 20px / 2;
}
.b01-tab-small > * > a {
  padding: 5px 14px / 2;
}
.b01-tab-large {
  margin-left: -20px;
}
.b01-tab-large > * {
  padding-left: 20px;
}
.b01-tab-large > * > a {
  padding: 15px 14px;
}
/* ========================================================================
   Component: Slidenav
 ========================================================================== */
.b01-visible-toggle:hover .b01-slidenav {
  opacity: 1;
}
.b01-thumbnav > * {
  line-height: 0;
}
.b01-accordion.compact > :first-child:not(:last-child) {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
.b01-accordion.compact > :last-child:not(:first-child) {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.b01-accordion.compact > :not(:first-child):not(:last-child) {
  border-radius: 0;
}
.b01-accordion.compact > li {
  overflow: hidden;
  margin-top: 0;
  padding: 0;
}
.b01-accordion.compact > li.b01-open > a {
  background-color: #edf9ff;
}
.b01-accordion.compact .b01-accordion-content {
  margin-top: 0;
  padding: 15px 30px;
  padding-bottom: 40px;
}
.b01-accordion.compact .b01-accordion-title {
  padding: 15px 30px;
}
.b01-accordion.compact .b01-accordion-title::before {
  content: none;
}
.b01-accordion.compact .b01-accordion-title.global {
  color: #777;
  font-size: 16px;
  background-color: rgba(0, 0, 0, 0.025);
}
.b01-accordion.compact .b01-accordion-title:hover {
  background-color: #edf9ff;
}
.b01-accordion.compact .b01-accordion-title > .b01-grid::after {
  content: "";
  width: 1.4em;
  height: 1.4em;
  margin-left: 10px;
  float: right;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2213%22%20height%3D%2213%22%20viewBox%3D%220%200%2013%2013%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Crect%20fill%3D%22%23666%22%20width%3D%2213%22%20height%3D%221%22%20x%3D%220%22%20y%3D%226%22%20%2F%3E%0A%20%20%20%20%3Crect%20fill%3D%22%23666%22%20width%3D%221%22%20height%3D%2213%22%20x%3D%226%22%20y%3D%220%22%20%2F%3E%0A%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: 50% 50%;
}
.b01-accordion.compact .b01-open > a > .b01-grid::after {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2213%22%20height%3D%2213%22%20viewBox%3D%220%200%2013%2013%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Crect%20fill%3D%22%23666%22%20width%3D%2213%22%20height%3D%221%22%20x%3D%220%22%20y%3D%226%22%20%2F%3E%0A%3C%2Fsvg%3E");
}
.b01-modal-body-small {
  padding: 30px / 2 30px / 2;
}
/* ========================================================================
   Component: Slider
 ========================================================================== */
/* Container
 ========================================================================== */
/* ========================================================================
   Component: Leader
 ========================================================================== */
/*
 * 1. Place element in text flow
 * 2. Never break into a new line
 * 3. Get a string back with as many repeating characters to fill the container
 * 4. Prevent wrapping. Overflowing characters will be clipped by the container
 */
.b01-leader-fill::after {
  /* 1 */
  display: inline-block;
  margin-left: 15px;
  /* 2 */
  width: 0;
  /* 3 */
  content: attr(data-fill);
  /* 4 */
  white-space: nowrap;
  color: #919191;
}
.b01-progress-small {
  height: 5px;
}
/* Pixel */
.b01-width-3xlarge {
  width: 900px;
}
.b01-width-4xlarge {
  width: 1050px;
}
/* Mini Widths
 ========================================================================== */
.b01-width-mini {
  width: 80px;
}
@media (min-width: 640px) {
  /* Auto */
  .b01-width-auto\@s {
    width: auto;
  }
}
/* Phone landscape and bigger */
@media (min-width: 640px) {
  .b01-width-mini\@s {
    width: 80px;
  }
}
@media (min-width: 960px) {
  .b01-width-mini\@m {
    width: 80px;
  }
}
@media (min-width: 1200px) {
  .b01-width-mini\@l {
    width: 80px;
  }
}
@media (min-width: 1600px) {
  .b01-width-mini\@xl {
    width: 80px;
  }
}
/* xsmall Widths
========================================================================== */
.b01-width-xsmall {
  width: 200px;
}
/* Phone landscape and bigger */
@media (min-width: 640px) {
  .b01-width-xsmall\@s {
    width: 200px;
  }
}
@media (min-width: 960px) {
  .b01-width-xsmall\@m {
    width: 200px;
  }
}
@media (min-width: 1200px) {
  .b01-width-xsmall\@l {
    width: 200px;
  }
}
@media (min-width: 1600px) {
  .b01-width-xsmall\@xl {
    width: 200px;
  }
}
.b01-width-xmedium {
  width: 420px;
}
@media (min-width: 640px) {
  .b01-width-xmedium\@s {
    width: 420px;
  }
}
@media (min-width: 960px) {
  .b01-width-xmedium\@m {
    width: 420px;
  }
}
@media (min-width: 1200px) {
  .b01-width-xmedium\@l {
    width: 420px;
  }
}
@media (min-width: 1600px) {
  .b01-width-xmedium\@xl {
    width: 420px;
  }
}
.b01-text-dark .b01-input,
.b01-text-dark .b01-text-muted {
  color: #666 !important;
}
.b01-text-shadow {
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.4);
}
.b01-text-tertiary {
  color: #333333 !important;
}
.b01-text-quaternary {
  color: #333333 !important;
}
.b01-text-medium {
  font-size: 1.15rem;
  line-height: 1.5;
}
.b01-text-medium {
  font-size: 1.15rem;
  line-height: 1.5;
}
.b01-text-xlarge {
  font-size: 2rem;
  line-height: 1.5;
}
.b01-text-xxlarge {
  font-size: 2.625rem;
  line-height: 1.5;
}
/* Color
 ========================================================================== */
.b01-background-tertiary {
  background-color: #333333;
}
.b01-background-quaternary {
  background-color: #333333;
}
/* Mini
 ========================================================================== */
.b01-margin-mini {
  margin-bottom: 4px;
}
* + .b01-margin-mini {
  margin-top: 4px !important;
}
.b01-margin-mini-top {
  margin-top: 4px !important;
}
.b01-margin-mini-bottom {
  margin-bottom: 4px !important;
}
.b01-margin-mini-left {
  margin-left: 4px !important;
}
.b01-margin-mini-right {
  margin-right: 4px !important;
}
.b01-visible\@a {
  display: none !important;
}
/* ### Basis ########################################################### */
a .b01-icon,
a svg,
button svg,
a > span,
button > span,
button path,
a path {
  pointer-events: none;
}
*:focus {
  outline: 0;
}
/* ### needed for J4 ####################################### */
.hidden {
  display: none;
}
.icon-caret-up:before {
  content: " ";
  display: inline-block;
  width: 20px;
  height: 16px;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolygon%20points%3D%225%2013%2010%208%2015%2013%22%20%2F%3E%0A%3C%2Fsvg%3E");
}
.icon-caret-down:before {
  content: " ";
  display: inline-block;
  width: 20px;
  height: 16px;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolygon%20points%3D%225%207%2015%207%2010%2012%22%20%2F%3E%0A%3C%2Fsvg%3E");
}
.visually-hidden,
.sr-only,
.visually-hidden-focusable:not(:focus):not(:focus-within) {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
/* ### menustate ########################################################### */
.b01-menustate span[b01-icon="icon: user"] {
  border: 1px solid #fff;
  border-radius: 50%;
  padding: 5px;
}
.b01-menustate img {
  border: 2px solid rgba(255, 255, 255, 0.85);
}
.b01-menustate > div {
  line-height: 20px;
}
/* ### hugewidget ########################################################### */
.b01-hugewidget {
  position: relative;
  z-index: 1;
  overflow: hidden;
}
@media (min-width: 640px) {
  .b01-hugewidget .b01-switcher .b01-overlay {
    max-width: 300px;
  }
}
.b01-hugewidget .b01-tab-expose {
  position: absolute;
  z-index: 520;
  margin-left: auto;
  margin-right: auto;
  bottom: -8px;
  width: auto;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
.b01-hugewidget .b01-tab-expose > * > a {
  padding: 15px 28px;
  background-color: rgba(0, 176, 255, 0.8);
  color: #fff;
  transition: transform 0.2s ease;
  border: none;
  position: relative;
  will-change: transform;
}
.b01-hugewidget .b01-tab-expose > * > a:focus,
.b01-hugewidget .b01-tab-expose > .b01-active > a {
  background-color: #333333;
  color: #fff;
  -webkit-transform: translateY(-6px);
  transform: translateY(-6px);
}
.b01-hugewidget .b01-tab-expose > * > a:hover {
  color: #fff;
  background-color: rgba(51, 51, 51, 0.9);
  -webkit-transform: translateY(-6px);
  transform: translateY(-6px);
}
.b01-hugewidget .b01-tab-expose::before {
  display: none;
}
/* ### Remember ########################################################### */
/* ### Pulse Animation ########################################################### */
@keyframes pulse {
  from {
    transform: scale3d(0.1, 0.1, 0.1);
  }
  50% {
    transform: scale3d(1.2, 1.2, 1.2);
  }
  80% {
    transform: scale3d(0.9, 0.9, 0.9);
  }
  to {
    transform: scale3d(1, 1, 1);
  }
}
/* ### Row States ########################################################### */
.b01-unpublished {
  background: none;
  background-image: linear-gradient(-45deg, #ededed 25%, transparent 25%, transparent 50%, #ededed 50%, #ededed 75%, transparent 75%, transparent) !important;
  background-size: 40px 40px !important;
}
.b01-unpublished > td {
  background-color: transparent !important;
}
/* ### Custom lazy placeholder ########################################################### */
img[data-src][src*='data:image'] {
  background-position: center;
  background-color: rgba(51, 51, 51, 0.7);
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg width='38' height='38' viewBox='0 0 38 38' xmlns='http://www.w3.org/2000/svg' stroke='%23fff'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg transform='translate(1 1)' stroke-width='2'%3E%3Ccircle stroke-opacity='.5' cx='18' cy='18' r='18'/%3E%3Cpath d='M36 18c0-9.94-8.06-18-18-18'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 18 18' to='360 18 18' dur='1s' repeatCount='indefinite'/%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}
/* ### admin main navi ########################################################### */
.jfewoadminnav,
.primeadminnav {
  margin: -18px -20px 10px;
}
.jfewoadminnav .b01-navbar-item,
.primeadminnav .b01-navbar-item,
.jfewoadminnav .b01-navbar-toggle,
.primeadminnav .b01-navbar-toggle,
.jfewoadminnav .b01-navbar-nav > li > a,
.primeadminnav .b01-navbar-nav > li > a {
  min-height: 50px;
}
/* ### lastedited ########################################################### */
tr.lastedited:nth-child(odd),
.b01-itemlist div.b01-grid.lastedited:nth-child(odd) {
  background-color: #fff2cc !important;
}
tr.lastedited:nth-child(even),
.b01-itemlist div.b01-grid.lastedited:nth-child(even) {
  background-color: #FFECB3 !important;
}
/* ### Remember ########################################################### */
.remember.active svg {
  animation-duration: 400ms;
  animation-fill-mode: both;
  animation-name: pulse;
}
.remember.active svg circle,
.remember.active svg polygon,
.remember.active svg path {
  fill: #333333;
  stroke: none !important;
}
.remember path {
  transition: all 100ms ease-in;
  transform-origin: 50% 50%;
  fill: hsla(0, 0%, 100%, 0.7);
}
.remember.white path {
  fill: none;
  stroke: #fff !important;
}
.remember.white.active path {
  fill: #fff;
}
.remember:hover path {
  fill: rgba(51, 51, 51, 0.2);
}
/* PRINT VIEW */
@media print {
  .expose_similar,
  .b01-hugewidget {
    display: none;
  }
  .prime-expose label[for*='b01-tease-'],
  .prime-expose .fixcol,
  .prime-expose .b01-sticky,
  .prime-expose a[class*='toggle'],
  .prime-expose .contactform > div:first-child {
    display: none;
  }
  .prime-expose span[class*='toggle'] {
    display: inline !important;
  }
  .prime-expose .b01-teasetext-content {
    overflow: visible;
    max-height: fit-content;
  }
  .expose_modal {
    background: #fff !important;
  }
  .expose_modal .b01-modal-body {
    overflow: visible;
  }
}
.print-item * {
  font-family: arial !important;
  text-shadow: none !important;
  color: #000;
}
.print-item .info > div {
  padding: 10px 20px;
  background-color: #eee;
  font-size: 11px;
}
.print-item h2 {
  text-align: center;
}
.print-item {
  border: 1px solid #e2e2e2;
  width: 800px;
}
.print-item .leaflet-control,
.print-item .leaflet-control-layers,
.print-item .b01-panel-contact {
  display: none;
}
/* ### Social ################################################### */
.b01sys .facebook [class*='b01-icon-'] {
  color: #0072bc;
}
.b01sys .facebook path {
  fill: #0072bc;
}
.b01sys .twitter [class*='b01-icon-'] {
  color: #00aeef;
}
.b01sys .twitter path {
  fill: #00aeef;
}
.b01sys .pinterest [class*='b01-icon-'] {
  color: #ed145b;
}
.b01sys .pinterest path {
  fill: #ed145b;
}
/* ### Shine Button ########################################################### */
.shine {
  position: relative;
  z-index: 0;
  overflow: hidden;
}
.shine:after {
  content: '';
  top: 0;
  transform: translateX(100%);
  width: 100%;
  height: 100px;
  position: absolute;
  z-index: 1;
  animation: slidesearch 1s forwards;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.6) 50%, rgba(128, 186, 232, 0) 99%, rgba(125, 185, 232, 0) 100%);
}
@keyframes slidesearch {
  0% {
    transform: translateX(-200%);
  }
  100% {
    transform: translateX(100%);
  }
}
/* ### hint count ########################################################### */
.b01-hintcount {
  background: #00b0ff;
  border-radius: 50%;
  font-size: 11px;
  font-weight: bold;
  position: absolute;
  top: -6px;
  right: -9px;
  width: 18px !important;
  line-height: 18px !important;
  border: 2px solid #fff;
  height: 18px !important;
}
/* ### Image color filters ########################################################### */
video.filter_saturate,
img.filter_saturate,
div.filter_saturate,
.filter_saturate img,
.filter_saturate .b01-cover-background {
  -webkit-filter: saturate(1.3);
  filter: saturate(1.3);
}
video.filter_contrast,
img.filter_contrast,
div.filter_contrast,
.filter_contrast img,
.filter_contrast .b01-cover-background {
  -webkit-filter: contrast(1.3);
  filter: contrast(1.3);
}
video.filter_xpro2,
img.filter_xpro2,
div.filter_xpro2,
.filter_xpro2 img,
.filter_xpro2 .b01-cover-background {
  -webkit-filter: contrast(1.3) brightness(0.8) sepia(0.3) saturate(1.3) hue-rotate(-20deg);
  filter: contrast(1.3) brightness(0.8) sepia(0.3) saturate(1.3) hue-rotate(-20deg);
}
video.filter_walden,
img.filter_walden,
div.filter_walden,
.filter_walden img,
.filter_walden .b01-cover-background {
  -webkit-filter: sepia(0.35) contrast(0.9) brightness(1.1) hue-rotate(-10deg) saturate(1.5);
  filter: sepia(0.35) contrast(0.9) brightness(1.1) hue-rotate(-10deg) saturate(1.3);
}
video.filter_valencia,
img.filter_valencia,
div.filter_valencia,
.filter_valencia img,
.filter_valencia .b01-cover-background {
  -webkit-filter: sepia(0.15) saturate(1.5) contrast(0.9);
  filter: sepia(0.15) saturate(1.5) contrast(0.9);
}
video.filter_toaster,
img.filter_toaster,
div.filter_toaster,
.filter_toaster img,
.filter_toaster .b01-cover-background {
  -webkit-filter: sepia(0.4) saturate(2.5) hue-rotate(-30deg) contrast(0.67);
  filter: sepia(0.4) saturate(2.5) hue-rotate(-30deg) contrast(0.67);
}
video.filter_sutro,
img.filter_sutro,
div.filter_sutro,
.filter_sutro img,
.filter_sutro .b01-cover-background {
  -webkit-filter: brightness(0.85) contrast(1.2) sepia(0.5) hue-rotate(-25deg);
  filter: brightness(0.85) contrast(1.2) sepia(0.5) hue-rotate(-25deg);
}
video.filter_rise,
img.filter_rise,
div.filter_rise,
.filter_rise img,
.filter_rise .b01-cover-background {
  -webkit-filter: saturate(1.4) sepia(0.25) hue-rotate(-15deg) contrast(0.8) brightness(1.1);
  filter: saturate(1.4) sepia(0.25) hue-rotate(-15deg) contrast(0.8) brightness(1.1);
}
video.filter_nashville,
img.filter_nashville,
div.filter_nashville,
.filter_nashville img,
.filter_nashville .b01-cover-background {
  -webkit-filter: sepia(0.4) saturate(1.5) contrast(0.9) brightness(1.1) hue-rotate(-15deg);
  filter: sepia(0.4) saturate(1.5) contrast(0.9) brightness(1.1) hue-rotate(-15deg);
}
video.filter_mayfair,
img.filter_mayfair,
div.filter_mayfair,
.filter_mayfair img,
.filter_mayfair .b01-cover-background {
  -webkit-filter: saturate(1.3) contrast(1.1);
  filter: saturate(1.3) contrast(1.1);
}
video.filter_kelvin,
img.filter_kelvin,
div.filter_kelvin,
.filter_kelvin img,
.filter_kelvin .b01-cover-background {
  filter: sepia(0.3) saturate(1.2) brightness(1.2) contrast(1);
  -webkit-filter: sepia(0.3) saturate(1.2) brightness(1.2) contrast(1);
}
video.filter_hudson,
img.filter_hudson,
div.filter_hudson,
.filter_hudson img,
.filter_hudson .b01-cover-background {
  -webkit-filter: contrast(1.2) brightness(0.9) hue-rotate(-10deg);
  filter: contrast(1.2) brightness(0.9) hue-rotate(-10deg);
}
video.filter_earlybird,
img.filter_earlybird,
div.filter_earlybird,
.filter_earlybird img,
.filter_earlybird .b01-cover-background {
  -webkit-filter: sepia(0.4) saturate(1.6) contrast(1.1) brightness(0.9) hue-rotate(-10deg);
  filter: sepia(0.4) saturate(1.6) contrast(1.1) brightness(0.9) hue-rotate(-10deg);
}
/* ### B01 Vue Transitions ########################################################### */
.b01-fade-enter-active,
.b01-fade-leave-active {
  transition: opacity 0.5s;
}
.b01-fade-enter,
.b01-fade-leave-to {
  opacity: 0;
}
.b01-zoomin-leave-active {
  transition: transform 0.4s, opacity 0.4s;
}
.b01-zoomin-enter-active {
  transition: transform 0.1s, opacity 0.1s;
}
.b01-zoomin-enter,
.b01-zoomin-leave-to {
  transform: scale(0);
  opacity: 0;
}
/* ### Plans Wizard ########################################################### */
.wizard {
  padding: 0px;
  position: relative;
  clear: both;
  overflow: hidden;
}
.wizard > div {
  position: relative;
}
.wizard > div > a {
  position: relative;
  display: block;
  width: auto;
  height: 40px;
  line-height: 40px;
  margin-right: 18px;
  padding: 0px 10px 0px 3px;
  float: left;
  color: #666;
  background: #ddd;
  text-decoration: none;
  margin-bottom: 4px;
  cursor: not-allowed;
}
.wizard > div > a:before {
  width: 0px;
  height: 0px;
  border-top: 20px solid #ddd;
  border-bottom: 20px solid #ddd;
  border-left: 20px solid transparent;
  position: absolute;
  content: "";
  top: 0px;
  left: -20px;
}
.wizard > div > a:after {
  width: 0;
  height: 0;
  border-top: 20px solid transparent;
  border-bottom: 20px solid transparent;
  border-left: 20px solid #ddd;
  position: absolute;
  content: "";
  top: 0px;
  right: -20px;
}
.wizard > div > a span:first-child {
  display: block;
  float: left;
  font-size: 13px;
  font-weight: bold;
  text-align: center;
  width: 25px;
  margin: 8px 6px 0 6px;
  line-height: 25px;
  color: #999;
  background: #FFF;
  border-radius: 50%;
}
.wizard > div:first-child a {
  border-radius: 6px 0 0 6px;
}
.wizard > div.completed-step span:first-child {
  color: #444;
  background: #d9eeda;
}
.wizard > div.completed-step a {
  cursor: pointer;
  color: #ffffff;
  background: #3d8b40;
}
.wizard > div.completed-step a:hover {
  color: #fff;
  background: #4caf50;
}
.wizard > div.completed-step a:hover span:first-child {
  color: #3d8b40;
}
.wizard > div.completed-step a:hover:before {
  border-top: 20px solid #4caf50;
  border-bottom: 20px solid #4caf50;
}
.wizard > div.completed-step a:hover:after {
  border-left: 20px solid #4caf50;
}
.wizard > div.completed-step a:before {
  border-top: 20px solid #3d8b40;
  border-bottom: 20px solid #3d8b40;
}
.wizard > div.completed-step a:after {
  border-left: 20px solid #3d8b40;
}
.wizard > div.active-step span:first-child {
  color: #00b0ff;
  background: #ccefff;
}
.wizard > div.active-step a {
  cursor: pointer;
  color: #ffffff;
  background: #00b0ff;
}
.wizard > div.active-step a:before {
  border-top: 20px solid #00b0ff;
  border-bottom: 20px solid #00b0ff;
}
.wizard > div.active-step a:after {
  border-left: 20px solid #00b0ff;
}
/* ############ Vendor Dashboard ################## */
.vendor-donut .circular-chart {
  display: block;
  max-height: 300px;
}
.vendor-donut .circle-bg {
  fill: none;
  stroke: #e0e0e0;
  stroke-width: 4;
}
.vendor-donut .circle {
  fill: none;
  stroke-width: 3;
  stroke-linecap: round;
  animation: progress 1.5s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}
.vendor-donut text {
  text-anchor: middle;
}
.vendor-donut .chart-number {
  font-size: 0.6em;
  line-height: 1;
}
.vendor-donut .chart-label {
  font-size: 0.2em;
}
.vendor-donut .chart-total {
  fill: #999;
  font-size: 0.16em;
  text-transform: uppercase;
}
@keyframes progress {
  0% {
    stroke-dasharray: 0 100;
  }
}
.circular-chart.orange .circle {
  stroke: #00b0ff;
}
/* ########################################## Remember Module #######	   */
#remindanz {
  position: relative;
  top: -10px;
  left: -10px;
  min-width: 18px;
  font-size: 11px;
  font-weight: bold;
  padding: 2px 6px;
  margin: 0;
  background: #DD2C00;
  color: #fff;
  border-radius: 4px;
}
/* ############ Logs & Savedsearches ################## */
.b01-itemlist tr:hover {
  cursor: pointer;
}
/* ############ b01-itemlist ################## */
.b01-itemlist > div.b01-grid {
  transition: background 100ms ease-in;
}
.b01-itemlist > div.b01-grid:nth-child(odd) {
  background: #efefef;
}
.b01-itemlist > div.b01-grid:nth-child(even) {
  background: #f9f9f9;
}
.b01-itemlist > div:hover.b01-grid {
  background: #effbf3 !important;
}
/* this is needed because of JHtml::_('searchtools.sort') in view=vbookings etc.  */
.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1010;
  display: none;
  max-width: 276px;
  padding: 1px;
  text-align: left;
  white-space: normal;
  background-color: #ffffff;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.2);
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
  border-radius: 6px;
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
}
.popover.top {
  margin-top: -10px;
}
.popover.right {
  margin-left: 10px;
}
.popover.bottom {
  margin-top: 10px;
}
.popover.left {
  margin-left: -10px;
}
.popover-title {
  padding: 8px 14px;
  margin: 0;
  font-size: 14px;
  font-weight: normal;
  line-height: 18px;
  background-color: #f7f7f7;
  border-bottom: 1px solid #ebebeb;
  -webkit-border-radius: 5px 5px 0 0;
  -moz-border-radius: 5px 5px 0 0;
  border-radius: 5px 5px 0 0;
}
.popover-title:empty {
  display: none;
}
.popover-content {
  padding: 9px 14px;
}
.popover .arrow,
.popover .arrow:after {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
}
.popover .arrow {
  border-width: 11px;
}
.popover .arrow:after {
  border-width: 10px;
  content: "";
}
.popover.top .arrow {
  bottom: -11px;
  left: 50%;
  margin-left: -11px;
  border-top-color: #999;
  border-top-color: rgba(0, 0, 0, 0.25);
  border-bottom-width: 0;
}
.popover.top .arrow:after {
  bottom: 1px;
  margin-left: -10px;
  border-top-color: #ffffff;
  border-bottom-width: 0;
}
.popover.right .arrow {
  top: 50%;
  left: -11px;
  margin-top: -11px;
  border-right-color: #999;
  border-right-color: rgba(0, 0, 0, 0.25);
  border-left-width: 0;
}
.popover.right .arrow:after {
  bottom: -10px;
  left: 1px;
  border-right-color: #ffffff;
  border-left-width: 0;
}
.popover.bottom .arrow {
  top: -11px;
  left: 50%;
  margin-left: -11px;
  border-bottom-color: #999;
  border-bottom-color: rgba(0, 0, 0, 0.25);
  border-top-width: 0;
}
.popover.bottom .arrow:after {
  top: 1px;
  margin-left: -10px;
  border-bottom-color: #ffffff;
  border-top-width: 0;
}
.popover.left .arrow {
  top: 50%;
  right: -11px;
  margin-top: -11px;
  border-left-color: #999;
  border-left-color: rgba(0, 0, 0, 0.25);
  border-right-width: 0;
}
.popover.left .arrow:after {
  right: 1px;
  bottom: -10px;
  border-left-color: #ffffff;
  border-right-width: 0;
}
/* ############ Textblock Tease ################## */
input[type=checkbox].b01-teasetext-toggle {
  display: none !important;
}
.b01-teasetext-content {
  max-height: 0px;
  overflow: hidden;
  transition: max-height 0.25s ease-in-out;
}
.b01-teasetext-toggle:checked + .lbl-toggle + .b01-teasetext-content {
  max-height: 100%;
}
.b01-teasetext-toggle:checked + .lbl-toggle {
  display: none;
}
/* required styles */
.leaflet-pane,
.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-tile-container,
.leaflet-pane > svg,
.leaflet-pane > canvas,
.leaflet-zoom-box,
.leaflet-image-layer,
.leaflet-layer {
  position: absolute;
  left: 0;
  top: 0;
}
.leaflet-container {
  overflow: hidden;
}
.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -webkit-user-drag: none;
}
/* Prevents IE11 from highlighting tiles in blue */
.leaflet-tile::selection {
  background: transparent;
}
/* Safari renders non-retina tile on retina better with this, but Chrome is worse */
.leaflet-safari .leaflet-tile {
  image-rendering: -webkit-optimize-contrast;
}
/* hack that prevents hw layers "stretching" when loading new tiles */
.leaflet-safari .leaflet-tile-container {
  width: 1600px;
  height: 1600px;
  -webkit-transform-origin: 0 0;
}
.leaflet-marker-icon,
.leaflet-marker-shadow {
  display: block;
}
/* .leaflet-container svg: reset svg max-width decleration shipped in Joomla! (joomla.org) 3.x */
/* .leaflet-container img: map is broken in FF if you have max-width: 100% on tiles */
.leaflet-container .leaflet-overlay-pane svg {
  max-width: none !important;
  max-height: none !important;
}
.leaflet-container .leaflet-marker-pane img,
.leaflet-container .leaflet-shadow-pane img,
.leaflet-container .leaflet-tile-pane img,
.leaflet-container img.leaflet-image-layer,
.leaflet-container .leaflet-tile {
  max-width: none !important;
  max-height: none !important;
  width: auto;
  padding: 0;
}
.leaflet-container.leaflet-touch-zoom {
  -ms-touch-action: pan-x pan-y;
  touch-action: pan-x pan-y;
}
.leaflet-container.leaflet-touch-drag {
  -ms-touch-action: pinch-zoom;
  /* Fallback for FF which doesn't support pinch-zoom */
  touch-action: none;
  touch-action: pinch-zoom;
}
.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom {
  -ms-touch-action: none;
  touch-action: none;
}
.leaflet-container {
  -webkit-tap-highlight-color: transparent;
}
.leaflet-container a {
  -webkit-tap-highlight-color: rgba(51, 181, 229, 0.4);
}
.leaflet-tile {
  filter: inherit;
  visibility: hidden;
}
.leaflet-tile-loaded {
  visibility: inherit;
}
.leaflet-zoom-box {
  width: 0;
  height: 0;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  z-index: 800;
}
/* workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=888319 */
.leaflet-overlay-pane svg {
  -moz-user-select: none;
}
.leaflet-pane {
  z-index: 400;
}
.leaflet-tile-pane {
  z-index: 200;
}
.leaflet-overlay-pane {
  z-index: 400;
}
.leaflet-shadow-pane {
  z-index: 500;
}
.leaflet-marker-pane {
  z-index: 600;
}
.leaflet-tooltip-pane {
  z-index: 650;
}
.leaflet-popup-pane {
  z-index: 700;
}
.leaflet-map-pane canvas {
  z-index: 100;
}
.leaflet-map-pane svg {
  z-index: 200;
}
.leaflet-vml-shape {
  width: 1px;
  height: 1px;
}
.lvml {
  behavior: url(#default#VML);
  display: inline-block;
  position: absolute;
}
/* control positioning */
.leaflet-control {
  position: relative;
  z-index: 800;
  pointer-events: visiblePainted;
  /* IE 9-10 doesn't have auto */
  pointer-events: auto;
}
.leaflet-top,
.leaflet-bottom {
  position: absolute;
  z-index: 1000;
  pointer-events: none;
}
.leaflet-top {
  top: 0;
}
.leaflet-right {
  right: 0;
}
.leaflet-bottom {
  bottom: 0;
}
.leaflet-left {
  left: 0;
}
.leaflet-control {
  float: left;
  clear: both;
}
.leaflet-right .leaflet-control {
  float: right;
}
.leaflet-top .leaflet-control {
  margin-top: 10px;
}
.leaflet-bottom .leaflet-control {
  margin-bottom: 10px;
}
.leaflet-left .leaflet-control {
  margin-left: 10px;
}
.leaflet-right .leaflet-control {
  margin-right: 10px;
}
/* zoom and fade animations */
.leaflet-fade-anim .leaflet-popup {
  opacity: 0;
  -webkit-transition: opacity 0.2s linear;
  -moz-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}
.leaflet-fade-anim .leaflet-map-pane .leaflet-popup {
  opacity: 1;
}
.leaflet-zoom-animated {
  -webkit-transform-origin: 0 0;
  -ms-transform-origin: 0 0;
  transform-origin: 0 0;
}
svg.leaflet-zoom-animated {
  will-change: transform;
}
.leaflet-zoom-anim .leaflet-zoom-animated {
  -webkit-transition: -webkit-transform 0.25s cubic-bezier(0, 0, 0.25, 1);
  -moz-transition: -moz-transform 0.25s cubic-bezier(0, 0, 0.25, 1);
  transition: transform 0.25s cubic-bezier(0, 0, 0.25, 1);
}
.leaflet-zoom-anim .leaflet-tile,
.leaflet-pan-anim .leaflet-tile {
  -webkit-transition: none;
  -moz-transition: none;
  transition: none;
}
.leaflet-zoom-anim .leaflet-zoom-hide {
  visibility: hidden;
}
/* cursors */
.leaflet-interactive {
  cursor: pointer;
}
.leaflet-grab {
  cursor: -webkit-grab;
  cursor: -moz-grab;
  cursor: grab;
}
.leaflet-crosshair,
.leaflet-crosshair .leaflet-interactive {
  cursor: crosshair;
}
.leaflet-popup-pane,
.leaflet-control {
  cursor: auto;
}
.leaflet-dragging .leaflet-grab,
.leaflet-dragging .leaflet-grab .leaflet-interactive,
.leaflet-dragging .leaflet-marker-draggable {
  cursor: move;
  cursor: -webkit-grabbing;
  cursor: -moz-grabbing;
  cursor: grabbing;
}
/* marker & overlays interactivity */
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-image-layer,
.leaflet-pane > svg path,
.leaflet-tile-container {
  pointer-events: none;
}
.leaflet-marker-icon.leaflet-interactive,
.leaflet-image-layer.leaflet-interactive,
.leaflet-pane > svg path.leaflet-interactive,
svg.leaflet-image-layer.leaflet-interactive path {
  pointer-events: visiblePainted;
  /* IE 9-10 doesn't have auto */
  pointer-events: auto;
}
/* visual tweaks */
.leaflet-container {
  background: #ddd;
  outline-offset: 1px;
}
.leaflet-container a {
  /* color: #0078A8; */
}
.leaflet-zoom-box {
  border: 2px dotted #38f;
  background: rgba(255, 255, 255, 0.5);
}
/* general typography */
.leaflet-container {
  font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1.5;
}
/* general toolbar styles */
.leaflet-bar {
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.65);
  border-radius: 4px;
}
.leaflet-bar a {
  background-color: #fff;
  border-bottom: 1px solid #ccc;
  width: 26px;
  height: 26px;
  line-height: 26px;
  display: block;
  text-align: center;
  text-decoration: none;
  color: black;
}
.leaflet-bar a,
.leaflet-control-layers-toggle {
  background-position: 50% 50%;
  background-repeat: no-repeat;
  display: block;
}
.leaflet-bar a:hover,
.leaflet-bar a:focus {
  background-color: #f4f4f4;
}
.leaflet-bar a:first-child {
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
}
.leaflet-bar a:last-child {
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
  border-bottom: none;
}
.leaflet-bar a.leaflet-disabled {
  cursor: default;
  background-color: #f4f4f4;
  color: #bbb;
}
.leaflet-touch .leaflet-bar a {
  width: 30px;
  height: 30px;
  line-height: 30px;
}
.leaflet-touch .leaflet-bar a:first-child {
  border-top-left-radius: 2px;
  border-top-right-radius: 2px;
}
.leaflet-touch .leaflet-bar a:last-child {
  border-bottom-left-radius: 2px;
  border-bottom-right-radius: 2px;
}
/* zoom control */
.leaflet-control-zoom-in,
.leaflet-control-zoom-out {
  font: bold 18px 'Lucida Console', Monaco, monospace;
  text-indent: 1px;
}
.leaflet-touch .leaflet-control-zoom-in,
.leaflet-touch .leaflet-control-zoom-out {
  font-size: 22px;
}
/* layers control */
.leaflet-control-layers {
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.4);
  background: #fff;
  border-radius: 5px;
}
.leaflet-control-layers-toggle {
  background-image: url(libraries/b01/src/less/images/layers.png);
  width: 36px;
  height: 36px;
}
.leaflet-retina .leaflet-control-layers-toggle {
  background-image: url(libraries/b01/src/less/images/layers-2x.png);
  background-size: 26px 26px;
}
.leaflet-touch .leaflet-control-layers-toggle {
  width: 44px;
  height: 44px;
}
.leaflet-control-layers .leaflet-control-layers-list,
.leaflet-control-layers-expanded .leaflet-control-layers-toggle {
  display: none;
}
.leaflet-control-layers-expanded .leaflet-control-layers-list {
  display: block;
  position: relative;
}
.leaflet-control-layers-expanded {
  padding: 6px 10px 6px 6px;
  color: #333;
  background: #fff;
}
.leaflet-control-layers-scrollbar {
  overflow-y: scroll;
  overflow-x: hidden;
  padding-right: 5px;
}
.leaflet-control-layers-selector {
  margin-top: 2px;
  position: relative;
  top: 1px;
}
.leaflet-control-layers label {
  display: block;
  font-size: 13px;
  font-size: 1.08333em;
}
.leaflet-control-layers-separator {
  height: 0;
  border-top: 1px solid #ddd;
  margin: 5px -10px 5px -6px;
}
/* Default icon URLs */
.leaflet-default-icon-path {
  /* used only in path-guessing heuristic, see L.Icon.Default */
  background-image: url(libraries/b01/src/less/images/marker-icon.png);
}
/* attribution and scale controls */
.leaflet-container .leaflet-control-attribution {
  background: #fff;
  background: rgba(255, 255, 255, 0.8);
  margin: 0;
}
.leaflet-control-attribution,
.leaflet-control-scale-line {
  padding: 0 5px;
  color: #333;
  line-height: 1.4;
}
.leaflet-control-attribution a {
  text-decoration: none;
}
.leaflet-control-attribution a:hover,
.leaflet-control-attribution a:focus {
  text-decoration: underline;
}
.leaflet-control-attribution svg {
  display: inline !important;
}
.leaflet-left .leaflet-control-scale {
  margin-left: 5px;
}
.leaflet-bottom .leaflet-control-scale {
  margin-bottom: 5px;
}
.leaflet-control-scale-line {
  border: 2px solid #777;
  border-top: none;
  line-height: 1.1;
  padding: 2px 5px 1px;
  white-space: nowrap;
  overflow: hidden;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background: #fff;
  background: rgba(255, 255, 255, 0.5);
}
.leaflet-control-scale-line:not(:first-child) {
  border-top: 2px solid #777;
  border-bottom: none;
  margin-top: -2px;
}
.leaflet-control-scale-line:not(:first-child):not(:last-child) {
  border-bottom: 2px solid #777;
}
.leaflet-touch .leaflet-control-attribution,
.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
  box-shadow: none;
}
.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
  border: 2px solid rgba(0, 0, 0, 0.2);
  background-clip: padding-box;
}
/* popup */
.leaflet-popup {
  position: absolute;
  text-align: center;
  margin-bottom: 20px;
}
.leaflet-popup-content-wrapper {
  padding: 1px;
  text-align: left;
  border-radius: 12px;
}
.leaflet-popup-content {
  margin: 13px 24px 13px 20px;
  line-height: 1.3;
  font-size: 13px;
  font-size: 1.08333em;
  min-height: 1px;
}
.leaflet-popup-content p {
  margin: 17px 0;
  margin: 1.3em 0;
}
.leaflet-popup-tip-container {
  width: 40px;
  height: 20px;
  position: absolute;
  left: 50%;
  margin-top: -1px;
  margin-left: -20px;
  overflow: hidden;
  pointer-events: none;
}
.leaflet-popup-tip {
  width: 17px;
  height: 17px;
  padding: 1px;
  margin: -10px auto 0;
  pointer-events: auto;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
.leaflet-popup-content-wrapper,
.leaflet-popup-tip {
  background: white;
  color: #333;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}
.leaflet-container a.leaflet-popup-close-button {
  position: absolute;
  top: 0;
  right: 0;
  border: none;
  text-align: center;
  width: 24px;
  height: 24px;
  font: 16px/24px Tahoma, Verdana, sans-serif;
  color: #757575;
  text-decoration: none;
  background: transparent;
}
.leaflet-container a.leaflet-popup-close-button:hover,
.leaflet-container a.leaflet-popup-close-button:focus {
  color: #585858;
}
.leaflet-popup-scrolled {
  overflow: auto;
  border-bottom: 1px solid #ddd;
  border-top: 1px solid #ddd;
}
.leaflet-oldie .leaflet-popup-content-wrapper {
  -ms-zoom: 1;
}
.leaflet-oldie .leaflet-popup-tip {
  width: 24px;
  margin: 0 auto;
  -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";
  filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678);
}
.leaflet-oldie .leaflet-control-zoom,
.leaflet-oldie .leaflet-control-layers,
.leaflet-oldie .leaflet-popup-content-wrapper,
.leaflet-oldie .leaflet-popup-tip {
  border: 1px solid #999;
}
/* div icon */
.leaflet-div-icon {
  background: #fff;
  border: 1px solid #666;
}
/* Tooltip */
/* Base styles for the element that has a tooltip */
.leaflet-tooltip {
  position: absolute;
  padding: 6px;
  background-color: #fff;
  border: 1px solid #fff;
  border-radius: 3px;
  color: #222;
  white-space: nowrap;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  pointer-events: none;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
}
.leaflet-tooltip.leaflet-interactive {
  cursor: pointer;
  pointer-events: auto;
}
.leaflet-tooltip-top:before,
.leaflet-tooltip-bottom:before,
.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
  position: absolute;
  pointer-events: none;
  border: 6px solid transparent;
  background: transparent;
  content: "";
}
/* Directions */
.leaflet-tooltip-bottom {
  margin-top: 6px;
}
.leaflet-tooltip-top {
  margin-top: -6px;
}
.leaflet-tooltip-bottom:before,
.leaflet-tooltip-top:before {
  left: 50%;
  margin-left: -6px;
}
.leaflet-tooltip-top:before {
  bottom: 0;
  margin-bottom: -12px;
  border-top-color: #fff;
}
.leaflet-tooltip-bottom:before {
  top: 0;
  margin-top: -12px;
  margin-left: -6px;
  border-bottom-color: #fff;
}
.leaflet-tooltip-left {
  margin-left: -6px;
}
.leaflet-tooltip-right {
  margin-left: 6px;
}
.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
  top: 50%;
  margin-top: -6px;
}
.leaflet-tooltip-left:before {
  right: 0;
  margin-right: -12px;
  border-left-color: #fff;
}
.leaflet-tooltip-right:before {
  left: 0;
  margin-left: -12px;
  border-right-color: #fff;
}
/* Printing */
@media print {
  /* Prevent printers from removing background-images of controls. */
  .leaflet-control {
    -webkit-print-color-adjust: exact;
    color-adjust: exact;
  }
}
@-webkit-keyframes leaflet-gestures-fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes leaflet-gestures-fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.leaflet-container:after {
  -webkit-animation: leaflet-gestures-fadein 0.8s backwards;
  animation: leaflet-gestures-fadein 0.8s backwards;
  color: #fff;
  font-family: "Roboto", Arial, sans-serif;
  font-size: 22px;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 15px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  z-index: 461;
  pointer-events: none;
}
.leaflet-gesture-handling-touch-warning:after,
.leaflet-gesture-handling-scroll-warning:after {
  -webkit-animation: leaflet-gestures-fadein 0.8s forwards;
  animation: leaflet-gestures-fadein 0.8s forwards;
}
.leaflet-gesture-handling-touch-warning:after {
  content: attr(data-gesture-handling-touch-content);
}
.leaflet-gesture-handling-scroll-warning:after {
  content: attr(data-gesture-handling-scroll-content);
}
.leaflet-container {
  font: inherit;
}
.leaflet-container a.leaflet-popup-close-button {
  background-color: #00b0ff;
  margin: 5px;
  padding: 6px;
  color: rgba(255, 255, 255, 0.85);
  border-radius: 50%;
  width: 20px;
  height: 20px;
  line-height: 20px;
}
.leaflet-container a.leaflet-popup-close-button:hover {
  color: #fff;
  background-color: #009ee6;
}
.leaflet-container:after {
  text-align: center;
}
.leaflet-control-container .b01-dropdown-nav > li > a:focus {
  font-weight: bold;
}
.leaflet-popup {
  margin-bottom: 40px;
}
.leaflet-control-layers {
  background: transparent;
  box-shadow: none;
}
.leaflet-control-layers label > div {
  padding: 4px 0;
}
.leaflet-control-layers-expanded {
  background: #fff;
}
.leaflet-touch .leaflet-control-layers-toggle,
.leaflet-control-layers-toggle {
  background-color: #00b0ff;
  border-radius: 4px;
  padding: 0 15px;
  width: 20px;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg width='20' height='20' fill='%23ffffff' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' data-svg='menu'%3E%3Crect x='2' y='4' width='16' height='1'%3E%3C/rect%3E%3Crect x='2' y='9' width='16' height='1'%3E%3C/rect%3E%3Crect x='2' y='14' width='16' height='1'%3E%3C/rect%3E%3C/svg%3E");
}
.leaflet-control-layers-selector {
  top: 3px;
  margin: 4px 4px 0 5px !important;
}
.leaflet-top.leaflet-left .leaflet-control {
  clear: none;
}
.b01cluster svg {
  transform: scale(1);
  transition: all 0.1s ease;
}
.b01cluster svg circle {
  fill: #333333;
  transition: fill 0.1s ease;
}
.b01cluster:hover svg {
  transform: scale(1.2);
}
.b01cluster:hover svg circle {
  fill: #262626;
}
.leaflet-popup-content-wrapper {
  padding: 0;
}
.leaflet-popup-content {
  margin: 0;
  line-height: 1.4;
  overflow: hidden;
}
.leaflet-pane .marker-off svg {
  transform: scale(1);
  transition: all 0.1s ease;
}
.leaflet-pane .marker-on svg {
  transform: scale(1.2);
}
.leaflet-pane .marker-off circle {
  fill: #333333;
  transition: fill 0.1s ease;
}
.leaflet-pane .marker-off.average circle {
  fill: #6f6f6f;
  transition: fill 0.1s ease;
}
.leaflet-pane .marker-on circle {
  fill: #262626;
}
.leaflet-pane .pulse::before {
  animation: blink 0.8s 4 cubic-bezier(0.47, 0, 0.75, 0.72);
  border-radius: 50%;
  box-shadow: inset 0 0 0 12px var(--primary);
  content: '';
  height: 20px;
  left: 50%;
  opacity: 1;
  position: absolute;
  top: calc(50% - 3px);
  transform: translate(-50%, -50%);
  width: 20px;
}
@keyframes blink {
  0% {
    height: 20px;
    opacity: 1;
    width: 20px;
  }
  60% {
    height: 55px;
    opacity: 1;
    width: 55px;
  }
  100% {
    height: 55px;
    opacity: 0;
    width: 55px;
  }
}
.leaflet-touch .leaflet-bar,
.leaflet-touch .leaflet-control-layers {
  border: none;
}
#map_cluster.mode-create {
  cursor: crosshair;
}
#map_cluster.mode-delete .leaflet-interactive {
  cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='26' viewBox='0 0 26 26'%3E%3Cpath d='M2.658 25.5c-1.151 0-2.159-1.029-2.159-2.205V2.705C.5 1.53 1.507.5 2.658.5h20.684c1.151 0 2.159 1.03 2.159 2.206v20.59c0 1.176-1.008 2.206-2.159 2.206z' fill='%23f22' fill-opacity='1' stroke='%23000' stroke-width='.999'/%3E%3Cpath d='M9.627 5.954v-1.5h7v1.5M7.627 6.954v14.5h11v-14.5' fill='%23fff' stroke='%23000'/%3E%3Cpath d='M11.127 9.954h1v9h-1zM14.127 9.954h1v9h-1zM5.127 5.954h16v1h-16z'/%3E%3C/svg%3E"), pointer;
}
.free-draw {
  min-height: 100vh;
}
path.leaflet-line {
  stroke: #50622b;
  /* stroke-width: 2; */
}
div.leaflet-edge {
  background-color: #00b0ff;
  box-shadow: 0 0 0 2px white, 0 0 10px rgba(0, 0, 0, 0.35);
  border-radius: 50%;
  cursor: move;
  outline: none;
  transition: background-color 0.25s;
}
div.leaflet-edge.disabled {
  pointer-events: none;
  background-color: #bbb;
}
path.leaflet-polygon {
  fill: rgba(51, 51, 51, 0.2);
  stroke: #333333;
  stroke-width: 2;
  fill-opacity: 0.75;
}
.leaflet-cluster-anim .leaflet-marker-icon,
.leaflet-cluster-anim .leaflet-marker-shadow {
  -webkit-transition: -webkit-transform 0.3s ease-out, opacity 0.3s ease-in;
  -moz-transition: -moz-transform 0.3s ease-out, opacity 0.3s ease-in;
  -o-transition: -o-transform 0.3s ease-out, opacity 0.3s ease-in;
  transition: transform 0.3s ease-out, opacity 0.3s ease-in;
}
.leaflet-cluster-spider-leg {
  /* stroke-dashoffset (duration and function) should match with leaflet-marker-icon transform in order to track it exactly */
  -webkit-transition: -webkit-stroke-dashoffset 0.3s ease-out, -webkit-stroke-opacity 0.3s ease-in;
  -moz-transition: -moz-stroke-dashoffset 0.3s ease-out, -moz-stroke-opacity 0.3s ease-in;
  -o-transition: -o-stroke-dashoffset 0.3s ease-out, -o-stroke-opacity 0.3s ease-in;
  transition: stroke-dashoffset 0.3s ease-out, stroke-opacity 0.3s ease-in;
}
/* Links
 ========================================================================== */
/* ===============================
=            Choices            =
=============================== */
.choices {
  position: relative;
  overflow: hidden;
  margin-bottom: 24px;
  font-size: 16px;
}
.choices:focus {
  outline: none;
}
.choices:last-child {
  margin-bottom: 0;
}
.choices.is-open {
  overflow: visible;
}
.choices.is-disabled .choices__inner,
.choices.is-disabled .choices__input {
  background-color: #eaeaea;
  cursor: not-allowed;
  -webkit-user-select: none;
  user-select: none;
}
.choices.is-disabled .choices__item {
  cursor: not-allowed;
}
.choices [hidden] {
  display: none !important;
}
.choices[data-type*=select-one] {
  cursor: pointer;
}
.choices[data-type*=select-one] .choices__inner {
  padding-bottom: 7.5px;
}
.choices[data-type*=select-one] .choices__input {
  display: block;
  width: 100%;
  padding: 10px;
  border-bottom: 1px solid #ddd;
  background-color: #fff;
  margin: 0;
}
.choices[data-type*=select-one] .choices__button {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMSAyMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yLjU5Mi4wNDRsMTguMzY0IDE4LjM2NC0yLjU0OCAyLjU0OEwuMDQ0IDIuNTkyeiIvPjxwYXRoIGQ9Ik0wIDE4LjM2NEwxOC4zNjQgMGwyLjU0OCAyLjU0OEwyLjU0OCAyMC45MTJ6Ii8+PC9nPjwvc3ZnPg==");
  padding: 0;
  background-size: 8px;
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -10px;
  margin-right: 25px;
  height: 20px;
  width: 20px;
  border-radius: 10em;
  opacity: 0.25;
}
.choices[data-type*=select-one] .choices__button:hover,
.choices[data-type*=select-one] .choices__button:focus {
  opacity: 1;
}
.choices[data-type*=select-one] .choices__button:focus {
  box-shadow: 0 0 0 2px #00bcd4;
}
.choices[data-type*=select-one] .choices__item[data-value=""] .choices__button {
  display: none;
}
.choices[data-type*=select-one]::after {
  content: "";
  height: 0;
  width: 0;
  border-style: solid;
  border-color: #333 transparent transparent transparent;
  border-width: 5px;
  position: absolute;
  right: 11.5px;
  top: 50%;
  margin-top: -2.5px;
  pointer-events: none;
}
.choices[data-type*=select-one].is-open::after {
  border-color: transparent transparent #333 transparent;
  margin-top: -7.5px;
}
.choices[data-type*=select-one][dir=rtl]::after {
  left: 11.5px;
  right: auto;
}
.choices[data-type*=select-one][dir=rtl] .choices__button {
  right: auto;
  left: 0;
  margin-left: 25px;
  margin-right: 0;
}
.choices[data-type*=select-multiple] .choices__inner,
.choices[data-type*=text] .choices__inner {
  cursor: text;
}
.choices[data-type*=select-multiple] .choices__button,
.choices[data-type*=text] .choices__button {
  position: relative;
  display: inline-block;
  margin-top: 0;
  margin-right: -4px;
  margin-bottom: 0;
  margin-left: 8px;
  padding-left: 16px;
  border-left: 1px solid #008fa1;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMSAyMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjRkZGIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yLjU5Mi4wNDRsMTguMzY0IDE4LjM2NC0yLjU0OCAyLjU0OEwuMDQ0IDIuNTkyeiIvPjxwYXRoIGQ9Ik0wIDE4LjM2NEwxOC4zNjQgMGwyLjU0OCAyLjU0OEwyLjU0OCAyMC45MTJ6Ii8+PC9nPjwvc3ZnPg==");
  background-size: 8px;
  width: 8px;
  line-height: 1;
  opacity: 0.75;
  border-radius: 0;
}
.choices[data-type*=select-multiple] .choices__button:hover,
.choices[data-type*=select-multiple] .choices__button:focus,
.choices[data-type*=text] .choices__button:hover,
.choices[data-type*=text] .choices__button:focus {
  opacity: 1;
}
.choices__inner {
  display: inline-block;
  vertical-align: top;
  width: 100%;
  background-color: #f9f9f9;
  padding: 7.5px 7.5px 3.75px;
  border: 1px solid #ddd;
  border-radius: 2.5px;
  font-size: 14px;
  min-height: 44px;
  overflow: hidden;
}
.is-focused .choices__inner,
.is-open .choices__inner {
  border-color: #b7b7b7;
}
.is-open .choices__inner {
  border-radius: 2.5px 2.5px 0 0;
}
.is-flipped.is-open .choices__inner {
  border-radius: 0 0 2.5px 2.5px;
}
.choices__list {
  margin: 0;
  padding-left: 0;
  list-style: none;
}
.choices__list--single {
  display: inline-block;
  padding: 4px 16px 4px 4px;
  width: 100%;
}
[dir=rtl] .choices__list--single {
  padding-right: 4px;
  padding-left: 16px;
}
.choices__list--single .choices__item {
  width: 100%;
}
.choices__list--multiple {
  display: inline;
}
.choices__list--multiple .choices__item {
  display: inline-block;
  vertical-align: middle;
  border-radius: 20px;
  padding: 4px 10px;
  font-size: 12px;
  font-weight: 500;
  margin: 2px;
  background-color: #00b0ff;
  border: 0;
  border-radius: 0.25rem;
  color: #fff;
  word-break: break-all;
  box-sizing: border-box;
  line-height: 0;
}
.choices__list--multiple .choices__item[data-deletable] {
  padding-right: 5px;
}
[dir=rtl] .choices__list--multiple .choices__item {
  margin-right: 0;
  margin-left: 3.75px;
}
.choices__list--multiple .choices__item.is-highlighted {
  background-color: #00a5bb;
  border: 1px solid #008fa1;
}
.is-disabled .choices__list--multiple .choices__item {
  background-color: #aaaaaa;
  border: 1px solid #919191;
}
.choices__list--dropdown,
.choices__list[aria-expanded] {
  visibility: hidden;
  z-index: 1;
  position: absolute;
  width: 100%;
  background-color: #fff;
  border: 1px solid #ddd;
  top: 100%;
  margin-top: -1px;
  border-bottom-left-radius: 2.5px;
  border-bottom-right-radius: 2.5px;
  overflow: hidden;
  word-break: break-all;
  will-change: visibility;
}
.is-active.choices__list--dropdown,
.is-active.choices__list[aria-expanded] {
  visibility: visible;
}
.is-open .choices__list--dropdown,
.is-open .choices__list[aria-expanded] {
  border-color: #b7b7b7;
}
.is-flipped .choices__list--dropdown,
.is-flipped .choices__list[aria-expanded] {
  top: auto;
  bottom: 100%;
  margin-top: 0;
  margin-bottom: -1px;
  border-radius: 0.25rem 0.25rem 0 0;
}
.choices__list--dropdown .choices__list,
.choices__list[aria-expanded] .choices__list {
  position: relative;
  max-height: 300px;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  will-change: scroll-position;
}
.choices__list--dropdown .choices__item,
.choices__list[aria-expanded] .choices__item {
  position: relative;
  padding: 10px;
  font-size: 14px;
}
[dir=rtl] .choices__list--dropdown .choices__item,
[dir=rtl] .choices__list[aria-expanded] .choices__item {
  text-align: right;
}
@media (min-width: 640px) {
  .choices__list--dropdown .choices__item--selectable,
  .choices__list[aria-expanded] .choices__item--selectable {
    padding-right: 100px;
  }
  .choices__list--dropdown .choices__item--selectable::after,
  .choices__list[aria-expanded] .choices__item--selectable::after {
    content: attr(data-select-text);
    font-size: 12px;
    opacity: 0;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
  }
  [dir=rtl] .choices__list--dropdown .choices__item--selectable,
  [dir=rtl] .choices__list[aria-expanded] .choices__item--selectable {
    text-align: right;
    padding-left: 100px;
    padding-right: 10px;
  }
  [dir=rtl] .choices__list--dropdown .choices__item--selectable::after,
  [dir=rtl] .choices__list[aria-expanded] .choices__item--selectable::after {
    right: auto;
    left: 10px;
  }
}
.choices__list--dropdown .choices__item--selectable.is-highlighted,
.choices__list[aria-expanded] .choices__item--selectable.is-highlighted {
  background-color: #f2f2f2;
}
.choices__list--dropdown .choices__item--selectable.is-highlighted::after,
.choices__list[aria-expanded] .choices__item--selectable.is-highlighted::after {
  opacity: 0.5;
}
.choices__item {
  cursor: default;
}
.choices__item--selectable {
  cursor: pointer;
}
.choices__item--disabled {
  cursor: not-allowed;
  -webkit-user-select: none;
  user-select: none;
  opacity: 0.5;
}
.choices__heading {
  font-weight: 600;
  font-size: 12px;
  padding: 10px;
  border-bottom: 1px solid #f7f7f7;
  color: gray;
}
.choices__button {
  text-indent: -9999px;
  -webkit-appearance: none;
  appearance: none;
  border: 0;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: center;
  cursor: pointer;
}
.choices__button:focus {
  outline: none;
}
.choices__input {
  display: inline-block;
  vertical-align: baseline;
  background-color: #f9f9f9;
  font-size: 14px;
  margin-bottom: 5px;
  border: 0;
  border-radius: 0;
  max-width: 100%;
  padding: 4px 0 4px 2px;
}
.choices__input:focus {
  outline: 0;
}
.choices__input::-webkit-search-decoration,
.choices__input::-webkit-search-cancel-button,
.choices__input::-webkit-search-results-button,
.choices__input::-webkit-search-results-decoration {
  display: none;
}
.choices__input::-ms-clear,
.choices__input::-ms-reveal {
  display: none;
  width: 0;
  height: 0;
}
[dir=rtl] .choices__input {
  padding-right: 2px;
  padding-left: 0;
}
.choices__placeholder {
  opacity: 0.5;
}
/* =====  End of Choices  ====== */
/* =====  B01 Choices  ====== */
.choices {
  margin: 0;
}
.choices__list--single {
  padding: 0;
}
.choices__inner {
  padding: 0;
  font-size: inherit;
  padding-top: 0;
  padding-bottom: 0;
  min-height: 40px;
  line-height: 40px;
  background-color: #fff;
  border-radius: 4px;
}
.is-focused .choices__inner,
.is-open .choices__inner {
  border-color: #00b0ff;
}
div.active > div.choices .choices__inner {
  background-color: #00b0ff;
  border-color: transparent;
  color: #fff;
}
div.active > div.choices[data-type*=select-one].is-open::after {
  border-color: transparent transparent #fff transparent;
}
div.active > div.choices[data-type*=select-one]::after {
  border-color: #fff transparent transparent transparent;
}
.is-open .choices__inner {
  border-radius: 4px 4px 0 0;
}
.is-flipped.is-open .choices__inner {
  border-radius: 0 0 4px 4px;
}
.choices__item--selectable {
  padding: 0 10px;
}
.choices__input {
  background: none !important;
}
.choices[data-type*=select-multiple] .choices__input,
.choices[data-type*=select-one] .choices__input {
  border: none;
}
.choices__input::placeholder {
  color: #b4b4b4;
}
.choices[data-type*=select-one]::after {
  border-color: #666 transparent transparent transparent;
}
.choices[data-type*=select-one].is-open::after {
  border-color: transparent transparent #666 transparent;
}
.choices__list--multiple {
  padding-left: 6px;
}
.choices__list--multiple .choices__item {
  padding: 6px 10px;
}
.choicesactive .choices__inner,
.searchlocactive .choices__inner {
  border-color: #00b0ff;
  background-color: #00b0ff;
  color: rgba(255, 255, 255, 0.9);
}
.choicesactive .choices[data-type*=select-one]::after,
.searchlocactive .choices[data-type*=select-one]::after {
  border-color: #fff transparent transparent transparent;
}
.choicesactive .choices[data-type*=select-one].is-open::after,
.searchlocactive .choices[data-type*=select-one].is-open::after {
  border-color: transparent transparent #fff transparent;
}
.choices[data-type*=select-one] .choices__button {
  background-image: url("data:image/svg+xml,%3Csvg width='21' height='21' viewBox='0 0 21 21' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23fff' fill-rule='evenodd'%3E%3Cpath d='M2.592.044l18.364 18.364-2.548 2.548L.044 2.592z'/%3E%3Cpath d='M0 18.364L18.364 0l2.548 2.548L2.548 20.912z'/%3E%3C/g%3E%3C/svg%3E");
  margin-top: -15px;
  margin-right: 30px;
  height: 30px;
  width: 30px;
  background-size: 12px;
  opacity: 0.9;
}
.choices[data-type*=select-one] .choices__button:hover,
.choices[data-type*=select-one] .choices__button:focus {
  opacity: 0.9;
  background-size: 14px;
}
.choices[data-type*=select-one] .choices__inner {
  padding-bottom: 0;
}
.choices__list--dropdown {
  box-sizing: border-box;
  background-color: #00b0ff;
}
.choices__list--dropdown .choices__placeholder {
  display: none;
}
.choices__list--dropdown,
.choices__list[aria-expanded] {
  z-index: 90;
  border-color: #d9d9d9 !important;
}
.choices__list--dropdown .choices__item--selectable.is-highlighted,
.choices__list[aria-expanded] .choices__item--selectable.is-highlighted {
  background-color: #00b0ff;
  color: rgba(255, 255, 255, 0.9);
}
.choices__list--dropdown .choices__item--selectable.is-highlighted::after,
.choices__list[aria-expanded] .choices__item--selectable.is-highlighted::after {
  display: none;
}
.choices__list--dropdown .choices__item,
.choices__list[aria-expanded] .choices__item {
  padding-right: 10px !important;
}
.choices__button_joomla {
  position: relative;
  padding: 0 10px;
  color: inherit;
  text-indent: -9999px;
  cursor: pointer;
  background: none;
  border: 0;
  opacity: 0.5;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.choices__button_joomla::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  text-align: center;
  text-indent: 0;
  content: "×";
}
.choices[data-type*=select-one] .choices__button_joomla {
  position: absolute;
  top: 50%;
  inset-inline-end: 0;
  width: 20px;
  height: 20px;
  padding: 0;
  -webkit-margin-before: -7px;
  margin-block-start: -7px;
  -webkit-margin-end: 50px;
  margin-inline-end: 30px;
  border-radius: 10em;
  opacity: 0.5;
}
.choices[data-type*=select-one] .choices__button_joomla:hover,
.choices[data-type*=select-one] .choices__button_joomla:focus {
  opacity: 1;
}
.choices[data-type*=select-one] .choices__button_joomla:focus {
  box-shadow: 0 0 0 2px #00bcd4;
}
@keyframes loader {
  0% {
    width: 0%;
    left: 0;
    right: 0;
  }
  50% {
    width: 100%;
    left: 0;
    right: 0;
  }
  100% {
    width: 0%;
    left: 100%;
    right: 0;
  }
}
@-webkit-keyframes loader {
  0% {
    width: 0%;
    left: 0;
    right: 0;
  }
  50% {
    width: 100%;
    left: 0;
    right: 0;
  }
  100% {
    width: 0%;
    left: 100%;
    right: 0;
  }
}
body.xhr:after {
  content: "";
  height: 10px;
  background: #90A4AE;
  position: fixed;
  animation: loader 1.3s;
  animation-iteration-count: infinite;
  transition-timing-function: linear;
  bottom: 0px;
  left: 0;
  top: auto;
  width: 100%;
  margin-left: 0;
  z-index: 10000;
}
.b01-modal-page {
  overflow: hidden;
}
/* ########################################## KALENDAE #######	 */
/** Base container **/
.kalendae {
  display: inline-block;
  zoom: 1;
  *display: inline;
  background: #eee;
  padding: 10px;
  margin: 5px;
  border-radius: 5px;
  cursor: default;
  position: relative;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
@media (max-width: 959px) {
  .kalendae {
    right: 15px;
  }
}
.kalendae * {
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
/** Popup Container for Kalendae.Input **/
.kalendae.k-floating {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100000;
  margin: 0;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.75);
}
/** Kalendae.Input's popup close button **/
/** Month Container **/
.kalendae .k-calendar {
  display: inline-block;
  zoom: 1;
  *display: inline;
  width: 155px;
  vertical-align: top;
}
/** Month Separator **/
.kalendae .k-separator {
  display: inline-block;
  zoom: 1;
  *display: inline;
  width: 2px;
  vertical-align: top;
  background: #ddd;
  height: 155px;
  margin: 0px 10px;
}
/** Month Title Row **/
.kalendae .k-title {
  text-align: center;
  white-space: nowrap;
  position: relative;
  height: 18px;
}
.kalendae .k-caption {
  font-size: 12px;
  line-height: 18px;
}
.kalendae .k-caption-month,
.kalendae .k-caption-year {
  display: inline;
}
.kalendae .k-caption-month {
  margin-right: 0.4em;
}
/** Month and Year Buttons **/
.kalendae .k-btn-previous-month,
.kalendae .k-btn-next-month,
.kalendae .k-btn-previous-year,
.kalendae .k-btn-next-year {
  width: 35px;
  height: 28px;
  cursor: pointer;
  position: absolute;
  top: -3px;
  color: #777;
  font-size: 26px;
  line-height: 0;
  /*font-weight  : bold;*/
  font-family: arial;
  text-decoration: none;
}
.kalendae .k-btn-previous-year {
  left: 0;
}
.kalendae .k-btn-previous-month {
  left: 16px;
}
.kalendae .k-btn-next-month {
  right: 16px;
}
.kalendae .k-btn-next-year {
  right: 0;
}
.kalendae .k-btn-previous-month:after,
.kalendae .k-btn-next-month:after {
  line-height: 22px;
  display: inline-block;
  height: 26px;
}
.kalendae .k-btn-previous-month:after {
  content: "\2039";
}
.kalendae .k-btn-next-month:after {
  content: "\203A";
}
.kalendae .k-btn-previous-year:after {
  content: "\00AB";
}
.kalendae .k-btn-next-year:after {
  content: "\00BB";
}
.kalendae .k-btn-previous-month:hover,
.kalendae .k-btn-next-month:hover {
  color: #7EA0E2;
  border: 1px solid #b9b9b9;
}
.kalendae .k-btn-previous-year:hover,
.kalendae .k-btn-next-year:hover {
  color: #6FDF81;
}
/** Remove extra buttons when calendar shows multiple months **/
.kalendae .k-first-month .k-btn-next-month,
.kalendae .k-middle-month .k-btn-next-month,
.kalendae .k-middle-month .k-btn-previous-month,
.kalendae .k-last-month .k-btn-previous-month,
.kalendae .k-first-month .k-btn-next-year,
.kalendae .k-middle-month .k-btn-next-year,
.kalendae .k-middle-month .k-btn-previous-year,
.kalendae .k-last-month .k-btn-previous-year {
  display: none;
}
/** Disable year nav option **/
.kalendae .k-title.k-disable-year-nav .k-btn-next-year,
.kalendae .k-title.k-disable-year-nav .k-btn-previous-year {
  display: none;
}
.kalendae .k-title.k-disable-year-nav .k-btn-next-month {
  right: 0;
}
.kalendae .k-title.k-disable-year-nav .k-btn-previous-month {
  left: 0;
}
/** Force specific width for month container contents **/
.kalendae .k-title,
.kalendae .k-header,
.kalendae .k-days {
  width: 154px;
  display: block;
  overflow: hidden;
}
/** Hide unusable buttons **/
.kalendae.k-disable-next-month-btn .k-btn-next-month,
.kalendae.k-disable-previous-month-btn .k-btn-previous-month,
.kalendae.k-disable-next-year-btn .k-btn-next-year,
.kalendae.k-disable-previous-year-btn .k-btn-previous-year {
  display: none;
}
/** Week columns and day cells **/
.kalendae .k-header span,
.kalendae .k-days span {
  float: left;
  margin: 1px 1px 2px 1px;
}
.kalendae .k-header span {
  text-align: center;
  font-weight: bold;
  width: 20px;
  padding: 1px 0;
  color: #666;
}
.kalendae .k-header.k-active span {
  cursor: pointer;
  border-radius: 3px;
}
.kalendae .k-days span {
  text-align: right;
  width: 20px;
  height: 1.5em;
  line-height: 1em;
  padding: 2px 3px 2px 2px;
  border: 1px solid transparent;
  border-radius: 3px;
  color: #999;
}
/** Today **/
.kalendae .k-today {
  text-decoration: underline;
  background-color: #00a8e6 !important;
  color: #fff !important;
}
.kalendae .k-today:before {
  content: none !important;
}
.kalendae .k-today:after {
  content: none !important;
}
/** Days inside of the month view **/
.kalendae .k-days span.k-in-month.k-active {
  color: #333;
  font-weight: 700;
}
/** Days outside of the month view (before the first day of the month, after the last day of the month) **/
.kalendae .k-days span.k-out-of-month {
  color: #ddd;
}
/** Selectable  **/
.kalendae .k-days span.k-active {
  cursor: pointer;
}
/** Selected day, when outside the selectable area **/
.kalendae .k-days span.k-selected {
  border-color: #1072A5;
  color: #1072A5;
}
/** Selected day, when inside the selectable area **/
.kalendae .k-days span.k-selected.k-active,
.kalendae .k-header.k-active span.k-selected {
  background-color: #7EA0E2;
  color: white;
}
/** Days between the start and end points on a range, outside of the selectable area **/
.kalendae .k-days span.k-range {
  background: none;
  border-color: #6DD4FE;
}
/** Days between the start and end points on a range, inside of the selectable area **/
.kalendae .k-days span.k-range.k-in-month {
  background: #b3e4ff;
  border-color: #19AEFE;
  color: #333;
}
/** Selectable day, hovered **/
.kalendae .k-days span.k-active:hover,
.kalendae .k-days span.k-active.k-day-hover-active {
  border-color: #666;
}
/** Selectable week, hovered **/
.kalendae .k-week:hover span.k-active {
  border-color: #666;
}
.clearfix:after {
  visibility: hidden;
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0;
}
/*-------------------------------------IE8 ONLY CODE BELOW THIS LINE--------------------------------------------*/
/* ########################################## #####################################################################################	 */
/* ########################################## B01 KALENDAE ########################################################################	 */
/* ########################################## #####################################################################################	 */
div.b01editcal > .kalendae > div > div.k-days span {
  background-color: #eee;
}
:not(.b01editcal) > .kalendae > div > div.k-days span {
  background-color: #d7ffcf;
}
.kalendae {
  background-color: #fff;
  margin: 0;
  padding: 0;
}
.kalendae .k-calendar {
  width: 245px;
}
.kalendae .k-separator {
  background: transparent;
  margin: 0 2px;
}
.kalendae .k-btn-previous-year,
.kalendae .k-btn-next-year {
  display: none;
}
.kalendae .k-caption {
  font-size: 18px;
  font-weight: 400;
}
.kalendae .k-title,
.kalendae .k-header,
.kalendae .k-days {
  width: 100%;
}
.kalendae .k-title {
  height: 32px;
  color: #00a8e6;
}
.kalendae .k-caption {
  font-weight: 600;
  line-height: 32px;
}
.kalendae .k-header span,
.kalendae .k-days span {
  border-radius: 0;
  width: 35px;
  height: 30px;
  line-height: 30px;
  padding: 0px;
  text-align: center;
  background-size: 100% 100%;
  margin: 0;
  border: 0;
  font-size: 14px;
}
.kalendae .k-header span {
  background-color: #fff;
  font-weight: 400;
  width: 35px;
  height: 28px;
  line-height: 28px;
  background-color: transparent;
}
.kalendae .k-days {
  background-color: #d7ffcf;
  /*
		span.k-in-month.k-active.ADAY {
			background-color: @cal_request_color !important;
		}*/
}
.kalendae .k-days span {
  width: 35px;
  height: 35px;
  line-height: 35px;
  cursor: no-drop;
  background-repeat: no-repeat no-repeat;
  position: relative;
  overflow: hidden;
  z-index: 1;
  display: block;
  font-weight: 700;
  color: rgba(0, 0, 0, 0.3);
}
.kalendae .k-days span.k-in-month.YDAY {
  background-color: #d7ffcf;
}
.kalendae .k-days span.k-in-month.k-in-month.k-today {
  margin-right: 0;
}
.kalendae .k-days span.k-out-of-month {
  background-color: #fff !important;
  color: #fff !important;
  border-radius: 0 !important;
}
.kalendae .k-days span.k-in-month.N-START:before,
.kalendae .k-days span.k-in-month.C-START:before,
.kalendae .k-days span.k-in-month.Y-START:before,
.kalendae .k-days span.k-in-month.A-START:before {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  transform: skewY(315deg);
  z-index: -1;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  transform-origin: top right;
}
.kalendae .k-days span.k-in-month.N-START:after,
.kalendae .k-days span.k-in-month.C-START:after,
.kalendae .k-days span.k-in-month.Y-START:after,
.kalendae .k-days span.k-in-month.A-START:after {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  transform: skewY(135deg);
  z-index: -1;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  transform-origin: bottom left;
}
.kalendae .k-days span.k-in-month.N-START {
  border: none;
}
.kalendae .k-days span.k-in-month.N-START:before {
  background-color: #FF9696;
}
.kalendae .k-days span.k-in-month.N-END:after {
  background-color: #FF9696;
}
.kalendae .k-days span.k-in-month.C-START {
  color: #3c3c3c;
}
.kalendae .k-days span.k-in-month.C-START:before {
  background-color: #b34d4d;
}
.kalendae .k-days span.k-in-month.C-END {
  color: #3c3c3c;
}
.kalendae .k-days span.k-in-month.C-END:after {
  background-color: #b34d4d;
}
.kalendae .k-days span.k-in-month.Y-START:before {
  background-color: #d7ffcf;
}
.kalendae .k-days span.k-in-month.NDAY {
  background-color: #FF9696;
  color: rgba(0, 0, 0, 0.3);
  border: none;
}
.kalendae .k-days span.k-in-month.Y-END:after {
  background-color: #d7ffcf;
  color: #737373;
}
.kalendae .k-days span.k-in-month.A-START {
  border: none;
}
.kalendae .k-days span.k-in-month.A-START:before {
  background-color: #F9FCCC;
}
.kalendae .k-days span.k-in-month.k-active {
  color: #737373;
  transition: background-color 0.1s ease-out;
}
.kalendae .k-days span.k-in-month.A-END {
  border: none;
}
.kalendae .k-days span.k-in-month.A-END:after {
  background-color: #F9FCCC;
}
.kalendae .k-days span.k-in-month.YDAY {
  background-color: #d7ffcf;
  border: none;
}
.kalendae .k-days span.k-in-month.CDAY {
  background-color: #b34d4d;
  color: #3c3c3c;
  border: none;
}
.kalendae .k-days span.k-in-month.ADAY {
  background-color: #F9FCCC;
  border: none;
}
.kalendae .k-days span.k-in-month.WECHSEL:not(.N-START):not(.Y-END):before {
  content: '';
  position: absolute;
  left: -32px;
  width: 100%;
  height: 100%;
  top: 0;
  transform: rotate(45deg);
  right: auto;
  z-index: -1;
  background-color: #FF9696;
}
.kalendae .k-days span.k-in-month.WECHSEL:not(.N-START):not(.Y-END):after {
  content: '';
  position: absolute;
  right: -32px;
  width: 100%;
  height: 100%;
  bottom: 0;
  transform: rotate(45deg);
  z-index: 1;
  left: auto;
  background-color: #FF9696;
}
.kalendae .k-days span.k-in-month.WECHSEL {
  background-color: #d7ffcf;
  border: none;
}
.kalendae .k-days span.k-active:not([class*="k-range"]):hover,
.kalendae .k-days .k-day-hover-active {
  background: none;
  border: none;
  background-color: #00a8e6 !important;
  color: #fff !important;
  border-radius: 4px;
}
.kalendae .k-days span.k-active:hover,
.kalendae .k-days .k-day-hover-active,
.kalendae .k-days span.k-range.k-in-month,
.kalendae .k-days span.k-selected.k-in-month.k-active {
  color: #fff;
}
.kalendae .k-days span.k-active:hover:after,
.kalendae .k-days .k-day-hover-active:after,
.kalendae .k-days span.k-range.k-in-month:after,
.kalendae .k-days span.k-selected.k-in-month.k-active:after,
.kalendae .k-days span.k-active:hover:before,
.kalendae .k-days .k-day-hover-active:before,
.kalendae .k-days span.k-range.k-in-month:before,
.kalendae .k-days span.k-selected.k-in-month.k-active:before {
  content: none;
}
.kalendae .k-days span.k-range.k-in-month {
  background-color: #00a8e6 !important;
  color: #fff;
  background-image: none;
  border: none;
}
.kalendae .k-days span.k-range-start.k-in-month {
  border-radius: 50% 0 0 50%;
  background-color: #00a8e6 !important;
  border: none;
}
.kalendae .k-days span.k-range-end.k-in-month {
  border-radius: 0 50% 50% 0;
  background-color: #00a8e6 !important;
  background-image: none;
  border: none;
}
.kalendae .k-days span[class*="k-range"]:hover {
  background: none;
  border: none;
  background-color: #0083b3 !important;
  color: #fff !important;
}
.kalendae .k-btn-next-month,
.kalendae .k-btn-previous-month {
  cursor: pointer !important;
  user-select: none !important;
  border: 1px solid #e4e7e7;
  color: #00a8e6;
  border-radius: 3px;
  top: 0;
}
.kalendae .k-btn-previous-month {
  left: 0;
}
.kalendae .k-btn-next-month {
  right: 0;
}
.kalendae.k-floating {
  width: auto;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 4px !important;
  box-shadow: none;
  padding: 16px 25px 16px 25px;
  z-index: 1010;
}
@media (max-width: 960px) {
  .kalendae.k-floating {
    width: 300px;
  }
}
.kalendae.k-floating a.k-btn-close::after {
  display: none;
}
.rowcal > .kalendae,
#staticcal > .kalendae {
  background-color: transparent;
}
.rowcal {
  text-align: center;
}
.rowcal > .kalendae {
  margin: 20px 0;
}
.rowcal .k-separator {
  margin: 0 3px;
}
/* ########################################## CALENDAR LEGEND ######	 */
.callegend div.available {
  background-color: #d7ffcf;
}
.callegend div.onrequest {
  background-color: #F9FCCC;
}
.callegend div.occupied {
  background-color: #FF9696;
}
.callegend div.closed {
  background-color: #b34d4d;
}
/************************* Global Variables ******************************** */
