/**
 * @file
 * Global rules
 *
 * Theme global rules.
 */

html {
  height: 100%;
  font-size: 16px;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  line-height: 1.5;
  scroll-behavior: smooth;
}
html, body {
  position: relative;
  font-family: FuturaLT-Book, sans-serif;
  color: var(--brand-secondary-color);
}
body {
  overflow-x: hidden;
  background-color: var(--brand-white);
}
body * {
  box-sizing: border-box;
}
@media all and (min-width: 1300px) {
  html {
    font-size: 18px;
  }
}

/**
 * Base Image
 */
img {
  max-width: 100%;
  height: auto;
  display: block;
}

/**
 * Text Styles
 */

p, h1, h2, h3 {
  position: relative;
}
h1, h2, h3 {
  font-family: FuturaLT, sans-serif;
  font-weight: normal;
}
p {
  font-size: var(--paragraph-size);
}
h1 {
  font-size: var(--heading-size-large);
}
h2 {
  font-size: var(--heading-size);
}
h3 {
  font-size: var(--heading-size-extra-small);
}
strong {
  font-family: FuturaLT-Heavy, sans-serif;
  font-weight: 700;
}

/**
 * Links
 */

a {
  color: var(--brand-secondary-color);
  transition: color 0.1s;
  text-decoration: none;
}
a:hover {
  color: var(--brand-primary-color);
  text-decoration: underline;
}

a:not(.cta, .slider-item, .menu__link, .push-item, .view-more-link) {
  color: var(--brand-primary-color);
}


/**
 * Other
 */
::selection {
  background-color: var(--brand-primary-color);
  color: var(--brand-secondary-light-color);
}
a:focus, button:focus, div:focus, input:focus{
  outline: none;
}

.z-index-wrapper  {
  z-index: 1;
}
.z-index-wrapper .view-more-link {
  z-index: initial;
}

.color-dark {
  color: var(--brand-secondary-color)!important;
  text-decoration: underline;
  text-decoration-color: var(--brand-primary-color);
  text-underline-offset: 8px;
}


/**
 * Floating action bar
 */

.floating-action-bar {
  position: fixed;
  display: none;
  right: 0;
  top: 25%;
  z-index: 10;
}
.floating-action-bar__wrapper {
  display: flex;
  flex-direction: column;
  align-items: end;
}
.floating-action-bar-item {
  background-color: var(--brand-primary-color);
  max-width: 72px;
  height: 64px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: ease all 350ms;
}
.floating-action-bar-item:hover{
  background-color: var(--brand-grey-medium);
  max-width: 250px;
  text-decoration: none;
}
.floating-action-bar-item__wrapper{
  display: grid;
  grid-template-columns: 1fr 72px;
}
.floating-action-bar-item__image,
.floating-action-bar .block-commerce-cart  .cart-menu a::before {
  display: flex;
  justify-content: center;
  align-items: center;
}
.floating-action-bar-item__title {
  opacity: 0;
  max-width: 0;
  transition: ease all 350ms;
  overflow: hidden;
  color: white;
  white-space: nowrap;
  display: flex;
  justify-content: center;
  align-items: center;
}
.floating-action-bar-item__title div {
  padding-left: 1rem;
  font-size: 14px;
  line-height: 120%;
}
.floating-action-bar-item:hover .floating-action-bar-item__title {
  opacity: 1;
  max-width: fit-content;
  transition: ease all 350ms;
}

@media all and (min-width: 1000px){
  .floating-action-bar {
    display: block;
  }
}