/*
 * Landing page specific styles - desktop / tablet version
 */
/*
 * Styles, which don't generate any output and can be safely imported from
 * all root level stylesheets
 */
/*
 * Paths
 */
/**
 * Animation & transition settings
 */
/*
 * Color Palette
 */
/*
 * Form color palette
 */
/*
 * Footer color palette
 */
/*
 * Settings for the `<body>` element
 */
/*
 * Text
 *
 * Settings for text, fonts, sizes
 */
/**
 * Text sizes
 *
 * Resolution specific font sizes, line height, etc.
 * All styles cascade up
 *
 * For each style is generated "%text--size-NAME" placeholder selector
 * Each style can also be used included using mixin "@include text--size(NAME);"
 *
 * See extends/_text-styles.scss
 */
/**
 * Link styles
 *
 * Settings for the anchor elements
 * For each link style is generated "%link--style-NAME" placeholder selector
 *
 * See extends/_links.scss
 *
 * @demo
 *   @extend %link--style-heading;
 */
/**
 * Grid
 *
 * Grid system settings
 * All resolution styles cascade up from mobile to desktop
 *
 * @demo
 *   <div class="row row--pad">...</div>
 *   <div class="row row--pad-small">...</div>
 */
/**
 * For each grid container is generated ".container--NAME" classname, except
 * for "default", for which ".container" classname is generated
 *
 * @demo
 *   <div class="container"></div>
 *   <div class="container container--footer"></div>
 */
/**
 * Spacing
 *
 * Settings for spacing between most of the elements
 *
 * @demo
 *   @include margins($spacing);
 *   @include margins($spacing-medium);
 */
/**
 * Breakpoints for devices / orientations / screens
 * Following already are default values, uncomment if needed
 */
/**
 * Minimal body width
 */
/**
 * Returns nth property from css property list
 *
 * @property {map} $list List
 * @property {number} $index Item index
 */
/**
 * In each $list pair of $breakpoint: $value replaces all values with 'inherit'
 * except for one in $index position
 *
 * @code
 *     $spacer: (xs: 10px 11px 12px 13px, md: 20px 0);
 *     $spacer-top-only:    pick-css-nth($spacer, 1); // => (xs: 10px inherit inherit inherit, md: 20px inherit inherit inherit)
 *     $spacer-bottom-only: pick-css-nth($spacer, 3); // => (xs: inherit inherit 12px inherit, md: inherit inherit 20px inherit)
 */
/**
 * @function map-deep-get Deep get for sass maps
 * @author https://css-tricks.com/snippets/sass/deep-getset-maps/
 * @description
 * Returns deeply nested property from a map
 *
 *     $paddings: map-deep-get($grid-containers, default, paddings, xs);
 */
/**
 * Mixin for object-fit plugin
 *
 * @see https://github.com/bfred-it/object-fit-images
 * @see components/_background.scss
 * @example
 *   @include object-fit(contain);
 *   @include object-fit(cover, top);
 */
/**
 * Converts SVG into data url so that this SVG could be used as a
 * background image
 *
 * @demo
 *     background-image: svg-to-data-url('<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100" viewBox="0 0 100 100">...</svg>');
 */
/**
 * Selectors to target specific browsers without affecting specificity or
 * limiting use in media queries
 *
 * Pros:
 *   - Works with media queries
 *
 * Conts:
 *   - Can't be used with @extend as that will invalidate other selectors
 *
 * See http://browserstrangeness.bitbucket.org/css_hacks.html
 */
/**
 * Target Internet Explorer, but not Edge
 *
 * @demo
 *     div {
 *       @include browser-ie () {
 *         // ...
 *       }
 *     }
 */
/**
 * Target Edge
 */
/**
 * Target Firefox
 */
/**
 * Target Safari
 */
/**
 * Target all WebKit browsers
 */
/**
 * Breakpoints for devices / orientations / screens
 *
 * @code
 *     @include media-breakpoint (lg-up) {
 *         // ...
 *     }
 */
/**
 * Returns if media query name is valid and values exist
 */
/**
 * Output content in a media query
 *
 * @code
 *     .icon {
 *         @include media-breakpoint (sm-down) {
 *             // ...
 *         }
 *     }
 */
/**
 * Output content in retina display media query
 *
 * @code
 *     .icon {
 *         @include media-retina () {
 *             // ...
 *         }
 *     }
 */
/**
 * Output content in non-retina display media query
 *
 * @code
 *     .icon {
 *         @include media-non-retina () {
 *             // ...
 *         }
 *     }
 */
/**
 * Image rendering quality
 * In Chrome background image quality is not the best when using background-size
 */
/**
 * @function placeholder Set input placeholder styles
 * @demo
 *     input {
 *         @include placeholder () {
 *             color: #000;
 *         }
 *     }
 */
/**
 * Margins mixin
 */
/**
 * In each $list pair of $breakpoint: $value replaces all values with 'inherit'
 * except for one in $index position
 *
 * @demo
 *     @include padding(inherit 20px);
 *
 * @demo
 *     @include padding((
 *         xs: inherit 20px,
 *         md: inherit 40px
 *     ));
 */
/*
 * Grid generator mixins
 */
/**
 * Mixin to generate grid container classnames
 *
 * @property {map} $containers Containers
 * @property {number?} $gutter Gutter between grid columns
 */
/**
 * Mixins to generate content for grid container classname
 *
 * @property {map} $container Container
 * @property {map} $container.max-width List of max-widths
 * @property {map} $container.paddings  List of paddings
 * @property {number?} $gutter Gutter between grid columns
 */
/**
 * Mixin to generate column classnames for each resolutions
 *
 * @property {number}  $columns     Number of columns
 * @property {list}    $breakpoints Responsive breakpoints
 */
/**
 * Mixin to generate column paddings for each resolutions
 *
 * @property {number}  $columns     Number of columns
 * @property {list}    $breakpoints Responsive breakpoints
 * @property {number?} $gutter      Gutter between columns
 */
/*
 * 1. Fix for IE where paddings are not taken into account even with box-sizing
 * 2. Fix for Firefox
 */
/*
 * Button normal state style mixin
 *
 * Sets styles to button normal state
 * 1. We overwrite disabled state too because if classname is used, then :hover, :active will take precedent
 */
/*
 * Button hover state style mixin
 *
 * Sets styles to button hover, focused states
 */
/*
 * Button active state style mixin
 *
 * Sets styles to active state
 */
/*
 * Button hover + active state style mixin
 *
 * Sets styles to button active, hover, focused states
 */
/*
 * Active button state style mixin
 *
 * Sets styles to button active, hover, focused states
 */
/*
 * Button disabled state style mixin
 */
/*
 * Button style
 *
 * Sets hover, active, focus, disabled styles
 */
/*
 * Button size
 *
 * Sets different size for different breakpoints
 */
/*
 * Square button modifier mixin
 */
/*
 * Text size
 *
 * Sets different size for different breakpoints
 */
/*
 * Link normal state style mixin
 *
 * Sets styles to link normal state
 */
/*
 * Link hover state style mixin
 *
 * Sets styles to link hover and focused states
 */
/*
 * Link active state style mixin
 *
 * Sets styles to link active state
 */
/*
 * Link hover and active state style mixin
 *
 * Sets styles to link hover, focused and active states
 */
/*
 * Link disabled state style mixin
 *
 * Sets styles to link disabled state
 */
/*
 * Image icon generator mixin
 */
/*
 * Retina image for icon
 */
/**
 * Animations
 *
 * Enables transition for all properties for elements
 *
 * @demo
 *     div { @extend %transition; }
 */
.js .carousel__list, .js .carousel__thumb-nav, .carousel__dot-nav a:before, .brands .card {
  transition-duration: 0.4s;
  transition-timing-function: cubic-bezier(0.25, 0.74, 0.22, 0.99); }

/**
 * Layout component mixin and placeholder classname, which is above other components
 *
 * @demo
 *     .lightbox { @extend %layout-order-above-top; }
 *     .header { @extend %layout-order-top; }
 *
 *     .lightbox { @include layout-order-above-top(); }
 *     .header { @include layout-order-top(); }
 */
/**
 * Layout component mixin and placeholder classname which covers parent
 *
 * @demo
 *     .btn-large:before { @extend %layout-position-overlay; }
 *     .btn-small:before { @extend %layout-position-overlay-extended; }
 *
 *     .btn-large:before { @include layout-position-overlay(); }
 *     .btn-small:before { @include layout-position-overlay-extended(); }
 */
/**
 * Text style mixin and placeholder classnames
 *
 * Used to keep all standard text and all headings consistent without code
 * duplication / to improve maintainability
 *
 * See settings/_text.scss
 *
 * @demo
 *     body  { @extend %text--default; }
 *     h1    { @extend %text--heading; }
 *
 *     body  { @include text--default(); }
 *     h1    { @include text--heading(); }
 */
/**
 * Text size / style mixin and placeholder classname generator
 * For each style is generated "%text--size-NAME" placeholder selector
 *
 * See settings/_text.scss
 *
 * @demo
 *     .class { @extend %text--size-h1; }
 *
 *     .class { @include text--size(h1); }
 *
 *     .class {
 *         @include text--size((
 *             xs:  ( 'font-size': 1.4rem,  'line-height': 24 / 14 * 1em )
 *         ));
 *     }
 */
/**
 * Link style mixin and placeholder classname generator
 *
 * For each link theme defined in settings/_colors.scss creates
 * a %link--style-NAME placeholder classname
 *
 * See settings/_links.scss
 *
 * @demo
 *     a     { @extend %link--style-default; }
 *     nav a { @extend %link--style-text; }
 *
 *     a     { @include link--style(default); }
 *     nav a { @include link--style(text); }
 */
.carousel {
  position: relative; }
  .js .carousel__list, .js .carousel__thumb-nav {
    opacity: 0;
    pointer-events: none;
    transition-property: opacity;
    will-change: opacity; }
  .js .carousel__list > li {
    display: none; }
    .js .carousel__list > li:first-child {
      display: block; }
  .js .carousel.carousel--ready .carousel__list, .js .carousel.carousel--ready .carousel__thumb-nav {
    opacity: 1;
    pointer-events: auto; }
  .js .carousel.carousel--ready .carousel__list > li {
    display: block; }

.text .carousel ul {
  margin: 0; }
.text .carousel li {
  padding: 0; }
  .text .carousel li:before {
    display: none; }

/**
 * Item caption text
 */
.carousel figcaption {
  padding: 14px 0;
  color: #90989f;
  text-align: center; }

/**
 * Carousel arrow navigation
 */
.carousel__arrow-nav {
  display: flex;
  justify-content: space-between;
  margin-top: 3.2rem;
  margin-bottom: 3.2rem; }
.carousel__arrow-nav:first-child {
  margin-top: 0;
  width: 110px;
  position: absolute;
  bottom: -10px;
  z-index: 2;
  right: -120px; }
.carousel__arrow-nav:last-child {
    margin-bottom: 0; }
.carousel__arrow-nav__left {
    display: flex;
    align-items: center; }
  .carousel__arrow-nav__right {
    display: flex;
    align-items: center; }
  .carousel__arrow-nav a {
    margin-right: 30px; }
  .carousel__arrow-nav .btn {
    margin-right: 4px; }
    .carousel__arrow-nav .btn .icon {
      top: auto; }
  .carousel__arrow-nav a:last-child,
  .carousel__arrow-nav .btn:last-child {
    margin-right: 0; }

.carousel__arrow-nav--sides,
.carousel__arrow-nav--narrow-sides {
  margin: 0; }
  .carousel__arrow-nav--sides .btn,
  .carousel__arrow-nav--narrow-sides .btn {
    position: absolute;
    top: 50%;
    left: 60px;
    margin-top: -20px; }
  .carousel__arrow-nav--sides .btn + .btn,
  .carousel__arrow-nav--narrow-sides .btn + .btn {
    left: auto;
    right: 60px; }

.carousel--with-captions .carousel__arrow-nav--sides .btn,
.carousel--with-captions .carousel__arrow-nav--narrow-sides .btn {
  margin-top: -44px; }

.carousel__arrow-nav--narrow-sides .btn {
  left: 20px; }
.carousel__arrow-nav--narrow-sides .btn + .btn {
  right: 20px; }

/**
 * Carousel thumbnail navigation
 */
.carousel__thumb-nav > a {
  width: 70px;
  height: 70px;
  display: flex;
  justify-content: center;
  align-items: center; }
  .carousel__thumb-nav > a.is-active {
    opacity: 0.2; }
  .carousel__thumb-nav > a.video {
    position: relative; }
    .carousel__thumb-nav > a.video:after {
      content: '';
      position: absolute;
      display: block;
      width: 28px;
      height: 28px;
      border-radius: 50%;
      background: #ffffff;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%); }
    .carousel__thumb-nav > a.video .icon {
      position: absolute;
      margin: 0 0 0 1px;
      stroke: #306bf5;
      z-index: 1;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%); }
.carousel__thumb-nav img {
  display: block;
  max-width: 100%;
  height: auto; }

/*
 * Carousel dot navigtation
 */
.carousel__dot-nav {
  display: flex;
  justify-content: center;
  margin-top: 3.9rem; }
  .carousel__dot-nav a {
    width: 17px;
    height: 17px;
    border-radius: 17px;
    padding: 4px; }
    .carousel__dot-nav a:before {
      content: "";
      display: block;
      width: 9px;
      height: 9px;
      border-radius: 9px;
      transition-property: background;
      background: #d6dce1; }
    .carousel__dot-nav a.is-active:before {
      background: #306bf5; }

.promo-large {
  position: relative;
  background: #ffffff;
}
  .promo-large .card-group:before {
    content: "";
    position: absolute;
    left: 0;
    top: -1px;
    width: 100%;
    z-index: 1;
    border-top: 1px solid #edeef0; }
  .promo-large .card-group .card:first-child, .promo-large .card-group .card:first-child .card__image--background img {
    border-radius: 0 0 0 4px; }
  .promo-large .card-group .card:last-child, .promo-large .card-group .card:last-child .card__image--background img {
    border-radius: 0 0 4px 0; }

/**
 * List of brands
 */
.brands {
  display: flex;
  flex-wrap: wrap;
  position: relative;
  margin: -12px 0 0 -12px; }
  .brands .card {
    flex-shrink: 0;
    flex-grow: 0;
    margin: 12px 0 0 12px;
    width: 137px;
    transition-property: background-color; }
    .has-hover .brands .card:focus, .has-hover .brands .card:hover {
      background: #ebeff4; }

.carousel--ready .brands {
  display: block; }
  .carousel--ready .brands .card {
    width: auto;
  }
  .first_page_banners_slider_wrapper {
    width: 100%;
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap;
    height: 491px;
  }
.first_page_banners_slider {
  width: 923px;
  justify-content: flex-end;
}
/*# sourceMappingURL=landing.css.map */
