/*
 * Cart page specific styles
 */
/*
 * 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; }
 */
.tooltip-icon, .data-table__order:after, .software-table .data-table td {
  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(); }
 */
.tooltip {
  z-index: 6; }

/**
 * 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(); }
 */
.tooltip-icon:before {
  display: block;
  position: absolute;
  top: -15px;
  right: -15px;
  bottom: -15px;
  left: -15px; }

/**
 * 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(); }
 */
.btn--switch-input {
  font-family: "Museo Sans Cyrl", Helvetica, Arial, sans-serif;
  font-weight: 500;
  letter-spacing: 0;
  text-rendering: optimizeLegibility;
  font-feature-settings: "kern" 1;
  font-kerning: normal;
  text-transform: none;
  color: #333333; }

.software-lightbox .software__addons__heading {
  font-weight: 900;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: #333333; }
  .ui-footer .software-lightbox .software__addons__heading, .software-lightbox .ui-footer .software__addons__heading {
    color: #ffffff; }

.cart-summary__coupon {
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  white-space: nowrap; }

/**
 * 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 )
 *         ));
 *     }
 */
.software-lightbox .software__addons__heading, .software-lightbox .software__addons li p {
  font-size: 1.4rem;
  line-height: 1.42857em; }

.specs__tag {
  font-size: 1.2rem;
  line-height: 1.33333em; }

.cart-summary__coupon {
  font-size: 1rem;
  line-height: 1.4em; }

.data-table tbody th {
  font-size: 1.6rem;
  line-height: 1.3125em; }

.gift-card__intro__content {
  font-size: 1.8rem;
  line-height: 1.66667em; }

.cart-product-list .product__info__part .price {
  font-size: 1.6rem;
  line-height: 1.125em; }

/**
 * 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); }
 */
.data-table__order {
  color: #90989f; }
  .has-hover .data-table__order:focus, .has-hover .data-table__order:hover {
    color: #333333; }
  .data-table__order:active, .is-active.data-table__order {
    color: #333333; }

/**
 * Buttons
 * Switch input button style
 *
 * @demo
 *     <a class="btn btn--switch">Normal state</a>
 *     <a class="btn btn--switch is-active">Active state</a>
 *     <a class="btn btn--switch is-disabled">Disabled state</a>
 */
.has-hover .btn--switch:active {
  box-shadow: 0 4px 7px rgba(0, 0, 0, 0.2) inset; }
.btn--switch.is-active {
  pointer-events: none;
  cursor: default; }
.has-hover .btn--switch:hover, .has-hover .btn--switch:focus {
  color: #333333;
  background-color: #ebeff4; }
.btn--switch:active, .has-hover .btn--switch:active, .btn--switch.is-active {
  color: #333333;
  background-color: #acb5bb; }
.btn--switch, .btn--switch.is-disabled, .btn--switch:disabled, .btn--switch[disabled] {
  color: #333333;
  background-color: #f5f6fa; }
.btn--switch.is-disabled, .btn--switch:disabled, .btn--switch[disabled] {
  color: #b4bcc3;
  background-color: #f5f6fa; }
.btn--switch.loading {
  color: transparent !important; }
.btn--switch.is-disabled, .btn--switch:disabled, .btn--switch[disabled] {
  opacity: 1; }

/**
 * Buttons
 * Switch input button style
 *
 * @demo
 *     <a class="btn btn--switch-input">Normal state</a>
 *     <a class="btn btn--switch-input is-active">Active state</a>
 *     <a class="btn btn--switch-input is-disabled">Disabled state</a>
 */
.btn--switch-input {
  border: 1px solid;
  height: 60px;
  padding: 2px 20px 0;
  border-radius: 4px;
  font-size: 1.6rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 60px; }
  .has-hover .btn--switch-input:active {
    box-shadow: 0 4px 7px rgba(0, 0, 0, 0.2) inset; }
  .btn--switch-input.is-active {
    pointer-events: none;
    cursor: default;
    z-index: 1; }
  .has-hover .btn--switch-input:hover, .has-hover .btn--switch-input:focus {
    color: #333333;
    background-color: #f5f7fa; }
  .btn--switch-input:active, .has-hover .btn--switch-input:active, .btn--switch-input.is-active {
    color: #333333;
    background-color: #f5f7fa;
    border-color: #306bf5; }
  .btn--switch-input, .btn--switch-input.is-disabled, .btn--switch-input:disabled, .btn--switch-input[disabled] {
    color: #333333;
    background-color: #ffffff;
    border-color: #c2cbd2; }
  .btn--switch-input.is-disabled, .btn--switch-input:disabled, .btn--switch-input[disabled] {
    color: #333333;
    background-color: #ffffff; }
  .btn--switch-input.loading {
    color: transparent !important; }
  .btn--switch-input.is-disabled, .btn--switch-input:disabled, .btn--switch-input[disabled] {
    opacity: 1; }
  .btn--switch-input .btn__content {
    margin-top: -2px;
    padding-top: 2px;
    height: 60px; }

.group .btn + .btn--switch-input {
  margin-left: -1px; }

/**
 * Number input with two btutons which allows to increment / decrement the value
 */
.form-control--number input {
  border: 2px solid #f5f6fa;
  border-radius: 0;
  width: 41px;
  padding: 0;
  text-align: center;
  -moz-appearance: textfield; }
  .form-control--number input::-webkit-outer-spin-button, .form-control--number input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0; }
  .form-control--number input:hover, .form-control--number input:focus {
    border-color: #ebeff4;
    box-shadow: none; }

.tooltip {
  width: 320px;
  border-radius: 0;
  padding: 20px;
  background: #f6f9fc;
  color: #333333;
  pointer-events: none;
  box-shadow: 0 2px 3px rgba(18, 42, 96, 0.1); }
  .tooltip--large {
    width: 540px; }
  .tooltip__content {
    white-space: normal; }
    .tooltip__content__list > div {
      padding: 18px 0;
      display: flex;
      justify-content: space-between;
      align-items: center; }
      .tooltip__content__list > div:first-child {
        padding-top: 0; }
      .tooltip__content__list > div:last-child {
        padding-bottom: 0; }
      .tooltip__content__list > div + div {
        border-top: 1px solid #e5e6ea; }

.tooltip[x-placement="top"] .tooltip__arrow,
.tooltip[x-placement="top-start"] .tooltip__arrow {
  bottom: -15px;
  margin-left: 17px;
  border-width: 15px 15px 0 0;
  border-color: #f6f9fc transparent transparent transparent; }

.tooltip[x-placement="top-end"] .tooltip__arrow {
  bottom: -15px;
  margin-left: -5px;
  border-width: 0 15px 15px 0;
  border-color: transparent #f6f9fc transparent transparent; }

.tooltip[x-placement="bottom"] .tooltip__arrow,
.tooltip[x-placement="bottom-start"] .tooltip__arrow {
  top: -15px;
  margin-left: 17px;
  border-width: 0 0 15px 15px;
  border-color: transparent transparent #f6f9fc transparent; }

/*
 * Icon with tooltip
 */
.tooltip-icon {
  color: #c2cbd2;
  display: inline-block;
  position: relative;
  vertical-align: middle;
  z-index: 1;
  cursor: help;
  transition-property: border-color; }
  .tooltip-icon .icon {
    vertical-align: top;
    pointer-events: none; }
  .tooltip-icon:before {
    content: ""; }
  .has-hover .tooltip-icon:focus, .has-hover .tooltip-icon:hover, .tooltip-icon:active, .tooltip-icon.is-active {
    color: #acb5bb; }

/**
 * Data table
 *
 * @demo
 *    <table class="data-table">
 *        <thead><tr>
 *            <td>Heading</td>
 *            <td>Heading</td>
 *        </tr></thead>
 *        <tbody>
 *            <tr>
 *                <td>Content</td>
 *                <td>Content</td>
 *            </tr>
 *        </tbody>
 *    </table>
 */
.data-table {
  width: 100%;
  border-spacing: 0; }
  .data-table td,
  .data-table th {
    font-weight: 500;
    text-align: left;
    border-top: 1px solid #edeef0;
    padding: 17px 0 17px 20px; }
    .data-table td:first-child,
    .data-table th:first-child {
      padding-left: 0; }
    .data-table td.text--right,
    .data-table th.text--right {
      text-align: right; }
  .data-table tr:first-child td,
  .data-table tr:first-child th {
    border-top: 0; }
  .data-table thead th {
    color: #90989f;
    border-bottom: 1px solid #edeef0;
    border-top: 0;
    padding-top: 10px;
    padding-bottom: 16px; }
  .data-table thead b {
    color: #333333; }
  .data-table td {
    color: #90989f; }
  .data-table tbody th {
    color: #333333; }

/**
 * Sorting arrows
 *
 * @demo
 *     <a class="data-table__order data-table__order--asc">Ascending</a>
 *     <a class="data-table__order data-table__order--desc">Descending</a>
 *     <a class="data-table__order">Unsorted</a>
 */
.data-table__order {
  display: inline-block;
  position: relative;
  padding-right: 22px; }
  .data-table__order:after {
    content: "";
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2390989f' d='M8.9,7.5C8.7,7.2,8.4,7,8,7H7V1c0-0.6-0.4-1-1-1S5,0.4,5,1v6H4C3.6,7,3.3,7.2,3.1,7.5c-0.2,0.3-0.2,0.7,0,1l2,3 C5.4,11.8,5.7,12,6,12s0.6-0.2,0.8-0.4l2-3C9,8.2,9.1,7.9,8.9,7.5z'/%3E%3C/svg%3E");
    width: 12px;
    height: 12px;
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -6px;
    opacity: 0;
    transform: rotate(-180deg);
    transition-property: opacity, transform; }
  .data-table__order--asc:after, .data-table__order--desc:after {
    opacity: 1; }
  .data-table__order--asc:after {
    transform: rotate(0deg); }

/*
 * Selectable row
 */
.data-table__selectable {
  cursor: pointer; }
  .has-hover .data-table__selectable:focus, .has-hover .data-table__selectable:hover {
    background: #f7f9fc; }

/*
 * Adjust button position so that even without it table row
 * would take the same space
 */
.data-table .btn {
  margin-top: -16px;
  margin-bottom: -12px; }

/**
 * Specification list
 *
 * @demo
 *     <div class="specs">
 *         <dl>
 *             <dt><span>Title</span></dt>
 *             <dd>Value</dd>
 *         </dl>
 *         <dl>
 *             <dt><span>Title</span></dt>
 *             <dd>Value</dd>
 *         </dl>
 *     </div>
 */
.specs {
  letter-spacing: 0; }
  .specs dl {
    display: flex;
    margin-top: 0.9rem;
    margin-bottom: 0.9rem; }
    .specs dl:first-child {
      margin-top: 0; }
    .specs dl:last-child {
      margin-bottom: 0; }
  .specs dt {
    display: flex;
    width: 240px;
    flex-grow: 0;
    flex-shrink: 0;
    color: #90989f; }
    .specs dt > span {
      flex: 0 0 auto; }
    .specs dt:after {
      content: "";
      flex: 1 1 auto;
      display: block;
      margin-left: 10px;
      border-top: 1px solid #edeef0;
      position: relative;
      top: 50%; }
  .specs dd {
    margin-left: 10px;
    display: flex;
    align-items: center; }
  .specs b {
    color: #333333;
    font-weight: 500; }
  .specs__tag {
    position: relative;
    display: inline-block;
    margin-left: 15px;
    padding: 0 8px 0 4px;
    height: 21px;
    background: #306bf5;
    border-radius: 4px;
    color: #ffffff;
    line-height: 21px; }
    .specs__tag:before {
      content: "";
      display: block;
      position: absolute;
      left: -5px;
      top: 1px;
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 9.5px 6px 9.5px 0;
      border-color: transparent #306bf5 transparent transparent; }

/**
 * Modifier for narrow title column
 *
 * @demo
 *     <div class="specs specs--narrow">...</div>
 */
.specs--narrow dt {
  width: 180px; }

/**
 * Modifier for wide title column
 *
 * @demo
 *     <div class="specs specs--wide">...</div>
 */
.specs--wide dt {
  width: 400px; }

/**
 * Modifier for full width list
 *
 * @demo
 *     <div class="specs specs--full">...</div>
 */
.specs--full dt {
  width: auto;
  flex-grow: 1; }

/**
 * Modifier to remove specific styles, just as simple inline text
 *
 * @demo
 *     <div class="specs specs--inline-text">...</div>
 */
.specs--inline-text dt {
  width: auto; }
  .specs--inline-text dt:after {
    content: ":";
    flex: 0 0 auto;
    display: inline;
    margin: 0;
    border: 0; }
.specs--inline-text dd {
  color: #90989f;
  margin-left: 4px; }

/**
 * Modifier to remove connecting line and align item to the sides
 */
.specs--no-lines dl {
  justify-content: space-between; }
.specs--no-lines dt {
  display: block;
  width: auto; }
  .specs--no-lines dt:after {
    display: none; }

/*
 * Product specification while inside product list
 */
.product-list .specs {
  margin-top: 1.6rem;
  margin-bottom: 1.6rem; }
  .product-list .specs:first-child {
    margin-top: 0; }
  .product-list .specs:last-child {
    margin-bottom: 0; }
  .product-list .specs dl {
    margin-top: 5px;
    margin-bottom: 5px; }
    .product-list .specs dl:first-child {
      margin-top: 0; }
    .product-list .specs dl:last-child {
      margin-bottom: 0; }

.bonus-points {
  color: #90989f; }
  .bonus-points .icon {
    margin-right: 0.4rem;
    vertical-align: baseline; }
  .bonus-points b {
    color: #333333;
    font-weight: 500; }

.scrollable-table {
  margin-top: 2.6rem;
  margin-bottom: 2.6rem; }
  .scrollable-table:first-child {
    margin-top: 0; }
  .scrollable-table:last-child {
    margin-bottom: 0; }
  .scrollable-table .data-table {
    width: calc(100% - 30px);
    margin: 0 30px 0 0; }
  .scrollable-table .scrollable {
    margin-right: -17px !important;
    padding-right: 47px !important; }
    .scrollable-table .scrollable .data-table {
      width: 100%;
      margin: 0; }

.cart-product-list .product {
  align-items: flex-start;
  margin: 0;
  padding: 2.8rem 0 2.6rem; }
  .cart-product-list .product__info__part .price {
     }
  .cart-product-list .product__info__part .product__legal {
    margin-top: 0; }
.cart-product-list .product__info {
  overflow: visible; }

/**
 * List of additional services for the product
 */
.cart-product-addons {
  width: 100%;
  flex: 0 0 100%;
  margin: 1rem 0 0; }

.cart-product-addons__item {
  background: #f7f9fc;
  border-radius: 4px;
  display: flex;
  align-items: center;
  margin: 1rem 0 0; }
  .cart-product-addons__item:first-child {
    margin-top: 1.6rem; }
  .cart-product-addons__item dt {
    flex-grow: 1;
    padding-left: 1.5rem; }
  .cart-product-addons__item dd {
    display: flex;
    align-items: center; }
  .cart-product-addons__item .price {
    display: inline-block;
    margin: 0 0 0 .4rem; }

.product-list--table .cart-product-addons__item .price {
  margin-top: 0; }

.cart-product-addons + .product__info__part--full {
  margin-top: 0; }

.cart-summary {
  border-radius: 4px;
  padding: 30px; }
  .cart-summary__coupon {
    color: #ffffff;
    background: #b4bcc3;
    border-radius: 4px;
    height: 40px;
    padding: 2px 0 0;
    display: flex;
    height: 40px;
    align-items: center;
    justify-content: center; }
    .cart-summary__coupon .icon {
      margin-right: 12px; }
  .cart-summary__specs {
    margin-top: 2.6rem;
    margin-bottom: 2.6rem; }
    .cart-summary__specs:first-child {
      margin-top: 0; }
    .cart-summary__specs:last-child {
      margin-bottom: 0; }
  .cart-summary__description {
    color: #90989f;
    margin-top: 2.9rem;
    margin-bottom: 3.6rem; }
    .cart-summary__description:first-child {
      margin-top: 0; }
    .cart-summary__description:last-child {
      margin-bottom: 0; }

.cart-summary__availability-box {
  margin-top: 24px;
  padding-top: 16px;
  border-top: 1px solid #C2CBD2;
}
.cart-summary__availability-box > div {
  color: #90989f;
  margin-bottom: 10px;
}
i.divider-point::before {
  content: "\2022";
  display: inline-block;
  padding: 0 8px;
  color: #c2cbd2;
  font-size: 1rem;
}

.lightbox-product-list {
  margin-top: -1.3rem;
  margin-bottom: 4rem; }
  .lightbox-product-list .product {
    align-items: flex-start;
    border: 0;
    margin: 0;
    padding: 0; }
    .lightbox-product-list .product figure {
      padding-left: 0;
      padding-right: 3.5rem; }
  .lightbox-product-list .specs {
    margin-top: 2.1rem; }
    .lightbox-product-list .specs .form-control-radio {
      margin-top: 2rem;
      margin-bottom: 2rem; }
      .lightbox-product-list .specs .form-control-radio:first-child {
        margin-top: 0; }
      .lightbox-product-list .specs .form-control-radio:last-child {
        margin-bottom: 0; }

.lightbox-info-text {
  margin-top: 0.8rem;
  margin-bottom: 0.8rem; }
  .lightbox-info-text:first-child {
    margin-top: 0; }
  .lightbox-info-text:last-child {
    margin-bottom: 0; }

.software-table .data-table th {
  text-align: right;
  vertical-align: bottom;
  white-space: nowrap;
  padding: 10px 0 13px 0;
  border: none; }
.software-table .data-table th:first-child {
  text-align: left;
  padding-left: 0; }
.software-table .data-table td {
  padding: 20px 0 20px 0;
  text-align: center;
  font-weight: 700;
  transition-property: color;
  border-left: 1px solid transparent;
  border-right: 1px solid transparent; }
.software-table .data-table td:first-child {
  text-align: left;
  color: #333333;
  font-weight: 500; }
.software-table .data-table td.is-selected {
  color: #333333;
  background: #f5f7fa;
  border-left: 1px solid #306bf5;
  border-right: 1px solid #306bf5;
  width: 180px; }
.software-table .data-table thead .btn--switch-input {
  margin-bottom: -13px;
  margin-top: -10px; }
  .software-table .data-table thead .btn--switch-input.is-active {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0; }
.software-table .data-table tfoot .btn--switch-input {
  margin-bottom: -13px;
  margin-top: -10px; }
  .software-table .data-table tfoot .btn--switch-input.is-active {
    border-top-left-radius: 0;
    border-top-right-radius: 0; }
.software-table .form-control-radio {
  display: inline-flex;
  vertical-align: bottom; }
.software-table .group--rounded > *,
.software-table .group--rounded > .form-control input {
  border-radius: 0; }
.software-table .group--rounded > .form-control:first-child input,
.software-table .group--rounded > *:first-child {
  border-radius: 4px 0 0 4px; }
.software-table .group--rounded > .form-control:last-child input,
.software-table .group--rounded > *:last-child {
  border-radius: 0 4px 4px 0; }
.software-table .btn--switch-input {
  font-size: 1.4rem;
  text-transform: uppercase;
  font-weight: 900;
  flex-basis: 180px;
  height: 50px; }
  .software-table .btn--switch-input span {
    color: #306bf5;
    font-size: 2.2rem;
    margin-left: 0.9rem; }

.software-lightbox__scrollable {
  max-height: 565px !important; }
.software-lightbox__footer {
  padding: 2rem 4rem; }
  .software-lightbox__footer dt {
    color: #90989f; }
  .software-lightbox__footer dd {
    margin: 4px 0 0; }
.software-lightbox .card {
  margin-right: -22px; }
.software-lightbox .baron__track {
  background: transparent; }
.software-lightbox .baron:before {
  background: linear-gradient(to bottom, rgba(18, 42, 96, 0.1) 0, rgba(29, 70, 191, 0) 100%);
  height: 10px; }
.software-lightbox .baron:after {
  background: linear-gradient(to bottom, rgba(29, 70, 191, 0) 0, rgba(18, 42, 96, 0.1) 100%);
  height: 10px; }
.software-lightbox .software__addons__heading__price {
  font-weight: 500;
  font-size: 2.2rem;
  margin-top: 3px; }
.software-lightbox .software__addons__heading b {
  font-weight: 900; }
.software-lightbox .software__addons .form-control-checkbox {
  padding-top: 0;
  padding-bottom: 0;
  margin-right: 1.9rem;
  top: -1px; }
.software-lightbox .software__addons li {
  padding-top: 0.5rem;
  padding-bottom: 2rem;
  margin-bottom: 2rem;
  border-bottom: 1px solid #edeef0; }
  .software-lightbox .software__addons li:last-child {
    border-bottom: none; }
  .software-lightbox .software__addons li p {
    margin-top: 1rem;
    margin-bottom: 1rem;
    padding-left: 4rem; }
    .software-lightbox .software__addons li p:first-child {
      margin-top: 0; }
    .software-lightbox .software__addons li p:last-child {
      margin-bottom: 0; }

.cart-empty {
  border-top: 1px solid #e5e6ea;
  padding: 40px 0 0; }
  .cart-empty h3, .cart-empty p {
    margin-top: 1.8rem;
    margin-bottom: 1.8rem; }
    .cart-empty h3:first-child, .cart-empty p:first-child {
      margin-top: 0; }
    .cart-empty h3:last-child, .cart-empty p:last-child {
      margin-bottom: 0; }
  .cart-empty p {
    color: #90989f; }

.gift-card__intro {
  background: url("../images/gift-card/background.jpg") 50% 0 no-repeat;
  background-size: cover;
  padding-bottom: 8rem;
  overflow: hidden; }
  .gift-card__intro__content {
    max-width: 500px; }
  .gift-card__intro__form {
    margin-top: 8rem; }
    .gift-card__intro__form input {
      width: 300px; }
  .gift-card__intro .form-disclaimer {
    margin-top: 1.5rem; }
.gift-card__card {
  position: relative; }
  .gift-card__card img {
    position: absolute;
    top: -48px;
    margin-top: -2.6rem;
    right: -130px;
    pointer-events: none; }

.lightbox .gift-card__intro {
  background: url("../images/gift-card/background-lightbox.jpg") 50% 0 no-repeat;
  background-size: cover;
  padding: 31px 40px 35px;
  border-radius: 0 0 4px 4px; }
.lightbox .gift-card__card img {
  right: -170px;
  top: 32px; }

/*# sourceMappingURL=cart.css.map */
.shopping-cart-energy-wrapper{
  width: 200px;
  display: flex;
  flex-direction: row;
 justify-content: space-between;
}
.shopping-cart-energy-wrapper .energo-category-button-wrapper{
  padding-top: 7px;
}