/*************************************************************************************************
FONTS
**************************************************************************************************/

/* Montserrat - Primary brand font */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('../../fonts/Montserrat-Light.woff2') format('woff2');
}

@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../../fonts/Montserrat-Regular.woff2') format('woff2');
}

@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('../../fonts/Montserrat-Bold.woff2') format('woff2');
}

/* Raleway - Secondary font */
@font-face {
  font-family: 'Raleway';
  font-style: normal;
  font-weight: 100;
  font-display: swap;
  src: url('../../fonts/Raleway-Thin.woff2') format('woff2');
}

@font-face {
  font-family: 'Raleway';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../../fonts/Raleway-Regular.woff2') format('woff2');
}

@font-face {
  font-family: 'Raleway';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url('../../fonts/Raleway-Black.woff2') format('woff2');
}

/* Legacy font fallbacks */
@font-face {
  font-family: 'freight-sans-pro';
  src: local('Arial');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'HelveNueThinNormal';
  src: url('../../fonts/helveticaneuethn-webfont.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

/******************************************************************************************************
* DEFAULT PREVIEW_STYLE
*
******************************************************************************************************/

.preview-title,
.preview-body h1 {
    display: inline-block;
    font-family: freight-sans-pro;
    color: #000;
    font-size: 32rem;
    line-height: 1em;
    letter-spacing: normal;
    font-style: normal;
    text-decoration: none;
    font-weight: normal;
    direction: ltr;
    margin-left: 0px;
    margin-right: 0px;
    margin-top: 0px;
    margin-bottom: 0px;
    padding-left: 0px;
    padding-right: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    background-color: transparent;
    text-shadow: none;
    text-transform: none;
}

.preview-title-holder {
    display: inline-block;
    text-align: inherit;
    max-width: inherit;
}

.preview-subtitle,
.preview-body h2 {
    display: inline-block;
    font-family: freight-sans-pro;
    color: #000;
    font-size: 25rem;
    line-height: 1em;
    letter-spacing: normal;
    font-style: normal;
    text-decoration: none;
    font-weight: normal;
    direction: ltr;
    margin-left: 0px;
    margin-right: 0px;
    margin-top: 0px;
    margin-bottom: 0px;
    padding-left: 0px;
    padding-right: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    background-color: transparent;
    text-shadow: none;
    text-transform: none;
}

/* Ensure sufficient color contrast for accessibility (WCAG AA 4.5:1) */
/* Use white text with shadow for better visibility on all backgrounds */
h3.preview-subtitle {
    color: #000000 !important;
}

/* For h3 elements within links */
a > h3.preview-subtitle,
a h3.preview-subtitle {
    color: #ffffff !important;
}

/* Ensure h2 subtitle elements also have good contrast */
h2.preview-subtitle {
    color: #ffffff !important;
}

.preview-subtitle-holder {
    display: inline-block;
    text-align: inherit;
    max-width: inherit;
}

.preview-body {
    display: inline-block;
    font-family: freight-sans-pro;
    color: #000;
    font-size: 25rem;
    line-height: 1em;
    letter-spacing: normal;
    font-style: normal;
    text-decoration: none;
    font-weight: normal;
    direction: ltr;
    margin-left: 0px;
    margin-right: 0px;
    margin-top: 0px;
    margin-bottom: 0px;
    padding-left: 0px;
    padding-right: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    background-color: transparent;
    max-width: 980px;
    text-shadow: none;
    -webkit-column-count: 1;
    column-count: 1;
    text-transform: none;
}

.preview-body-holder {
    display: inline-block;
    text-align: inherit;
    max-width: inherit;
}

.preview-element.icon-source {
    width: 100px;
    border-style: solid;
    border-width: 0px;
    border-color: #000000;
    margin-left: 0px;
    margin-right: 0px;
    margin-top: 15px;
    margin-bottom: 15px;
    padding-left: 0px;
    padding-right: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    background-color: transparent;
}

.preview-icon-holder {
    text-align: inherit;
}

.background-div {
    background-size: cover;
    background-position: center center;
    opacity: 1;
}

.preview.image-cover {
    min-height: inherit;
    margin-left: 0px;
    margin-right: 0px;
    margin-top: 0px;
    margin-bottom: 0px;
    padding-left: 0px;
    padding-right: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    background-color: transparent;
}

.inner-pic {
    display: inline-block;
    -webkit-filter: none;
    filter: none;
    background-size: cover;
    background-position: center center;
    opacity: 1;
}

.pic-side:after,
.sub.item-box:after {
    background-color: #2098d1;
}

.inner-pic-holder {
    vertical-align: middle;
    text-align: center;
    background-color: transparent;
}

.preview-item-links span,
#sr-basket-widget * {
    display: inline-block;
    font-family: freight-sans-pro;
    color: #000;
    font-size: 25rem;
    line-height: 1em;
    letter-spacing: normal;
    font-style: normal;
    text-decoration: none;
    font-weight: normal;
    margin-left: 0px;
    margin-right: 0px;
    margin-top: 0px;
    margin-bottom: 0px;
    padding-left: 0px;
    padding-right: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    background-color: transparent;
    max-width: 980px;
    text-shadow: none;
    border-style: solid;
    border-width: 0px;
    border-color: #000000;
    border-radius: 0px;
}

.preview-item-links span:hover {
    color: #000;
    background-color: transparent;
}

.preview-item-links {
    text-align: inherit;
}

.preview-item-links.allow-bg-color,
.submenu {
    background-color: #666;
    background-image: none;
}

.preview-item-links span:before {
    background-color: #2098d1;
}

.preview-form .Field {
    display: inline-block;
    font-family: freight-sans-pro;
    font-size: 25rem;
    line-height: 1em;
    letter-spacing: normal;
    font-style: normal;
    text-decoration: none;
    font-weight: normal;
    margin-left: 0px;
    margin-right: 0px;
    margin-top: 5px;
    margin-bottom: 5px;
    padding-left: 0px;
    padding-right: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    background-color: transparent;
    max-width: 400px;
    min-width: 0px;
    border-style: solid;
    border-width: 1px;
    border-color: #000000;
}

.preview-form .Field:hover {
    color: #000;
    background-color: transparent;
}

.preview-form .Field.placeholder-mode:not(:hover),
.preview-form .Field.no-value:not(:hover) {
    color: #555;
}

.preview-form .Field:not(.placeholder-mode):not(.no-value):not(:hover) {
    color: #000;
}

.preview-link-img {
    display: inline-block;
    width: 50px;
}

.preview-social-holder {
    display: inline-block;
    margin-left: 0px;
    margin-right: 0px;
    margin-top: 0px;
    margin-bottom: 0px;
    padding-left: 0px;
    padding-right: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    background-color: transparent;
    border-style: solid;
    border-width: 0px;
    border-color: #000000;
}

.preview-social-wrapper {
    text-align: inherit;
}

.preview-content-holder {
    display: inline-block;
    max-width: none;
    text-align: center;
    margin-left: 0px;
    margin-right: 0px;
    margin-top: 0px;
    margin-bottom: 0px;
    padding-left: 0px;
    padding-right: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    background-color: transparent;
    border-style: solid;
    border-width: 0px;
    border-color: #000000;
    left: auto;
    right: auto;
    top: auto;
    bottom: auto;
    width: auto;
    height: auto;
}

.preview-content-wrapper {
    text-align: center;
    vertical-align: middle;
}

.blocks-preview-content-holder {
    display: inline-block;
    text-align: center;
    max-width: none;
    margin-left: 0px;
    margin-right: 0px;
    margin-top: 0px;
    margin-bottom: 0px;
    padding-left: 0px;
    padding-right: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
}

.blocks-preview-content-wrapper {
    text-align: center;
}

.middle_layout .helper-div,
.multi_layout .helper-div.middle-center .text-side {
    max-width: none;
}

.preview-price {
    display: inline-block;
    font-family: freight-sans-pro;
    color: #000;
    font-size: 25rem;
    line-height: 1em;
    letter-spacing: normal;
    font-style: normal;
    text-decoration: none;
    font-weight: normal;
    direction: ltr;
    margin-left: 0px;
    margin-right: 0px;
    margin-top: 0px;
    margin-bottom: 0px;
    padding-left: 0px;
    padding-right: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    background-color: transparent;
    text-shadow: none;
    text-transform: none;
}

.stripe-background {
    -webkit-filter: none;
    filter: none;
    opacity: 1;
    background-size: cover;
    background-position: center center;
    margin-top: 0px;
    margin-left: 0%;
}

.blocks-preview-title {
    display: inline-block;
    font-family: Montserrat;
    color: #000;
    font-size: 32rem;
    line-height: 1em;
    letter-spacing: normal;
    font-style: normal;
    text-decoration: none;
    font-weight: normal;
    direction: ltr;
    margin-left: 0px;
    margin-right: 0px;
    margin-top: 20px;
    margin-bottom: 5px;
    padding-left: 0px;
    padding-right: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    background-color: transparent;
    text-shadow: none;
    text-transform: none;
}

.blocks-preview-title-holder {
    display: inline-block;
    text-align: inherit;
    max-width: inherit;
}

.blocks-preview-subtitle {
    display: inline-block;
    font-family: Arial;
    color: #999999;
    font-size: 20rem;
    line-height: 1em;
    letter-spacing: normal;
    font-style: normal;
    text-decoration: none;
    font-weight: normal;
    direction: ltr;
    margin-left: 0px;
    margin-right: 0px;
    margin-top: 15px;
    margin-bottom: 0px;
    padding-left: 0px;
    padding-right: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    background-color: transparent;
    text-shadow: none;
    text-transform: none;
}

.blocks-preview-subtitle-holder {
    display: inline-block;
    text-align: inherit;
    max-width: inherit;
}

.blocks-preview-body {
    display: inline-block;
    font-family: Arial;
    color: #000;
    font-size: 12rem;
    line-height: 1.2em;
    letter-spacing: normal;
    font-style: normal;
    text-decoration: none;
    font-weight: normal;
    direction: ltr;
    margin-left: 0px;
    margin-right: 0px;
    margin-top: 10px;
    margin-bottom: 20px;
    padding-left: 0px;
    padding-right: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    background-color: transparent;
    max-width: 600px;
    text-shadow: none;
    -webkit-column-count: 1;
    column-count: 1;
    text-transform: none;
}

.blocks-preview-body-holder {
    display: inline-block;
    text-align: inherit;
    max-width: inherit;
}

.blocks-inner-pic {
    display: inline-block;
    width: 600px;
    margin-left: 0px;
    margin-right: 0px;
    margin-top: 10px;
    margin-bottom: 10px;
}

.blocks-inner-pic-holder {
    display: inline-block;
}

.preview-divider {
    display: inline-block;
    width: 50%;
    border-style: solid;
    border-bottom-width: 1px;
    border-color: #000000;
    margin-top: 10px;
    margin-bottom: 10px;
}

.blocks-preview-divider {
    display: inline-block;
    width: 50%;
    border-style: solid;
    border-bottom-width: 2px;
    border-color: #000000;
    margin-top: 10px;
    margin-bottom: 10px;
}

.multi_layout .helper-div.middle-center {
    max-width: none;
    padding-left: 0%;
    padding-right: 0%;
    width: 100%;
}

/******************************************************************************************************
* DEFAULT STRIPE_STYLE
*
******************************************************************************************************/

.Title,
.Body h1 {
    display: inline-block;
    font-family: freight-sans-pro;
    color: #000;
    font-size: 50rem;
    line-height: 1em;
    letter-spacing: normal;
    font-style: normal;
    text-decoration: none;
    font-weight: normal;
    direction: ltr;
    margin-left: 0px;
    margin-right: 0px;
    margin-top: 0px;
    margin-bottom: 0px;
    padding-left: 0px;
    padding-right: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    background-color: transparent;
    text-shadow: none;
    max-width: none;
    text-transform: none;
}

.Subtitle,
.Body h2 {
    display: inline-block;
    font-family: freight-sans-pro;
    color: #000;
    font-size: 25rem;
    line-height: 1em;
    letter-spacing: normal;
    font-style: normal;
    text-decoration: none;
    font-weight: normal;
    direction: ltr;
    margin-left: 0px;
    margin-right: 0px;
    margin-top: 0px;
    margin-bottom: 0px;
    padding-left: 0px;
    padding-right: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    background-color: transparent;
    text-shadow: none;
    max-width: none;
    text-transform: none;
}

.Body {
    display: inline-block;
    font-family: Arial;
    color: #000;
    font-size: 15rem;
    line-height: 1em;
    letter-spacing: normal;
    font-style: normal;
    text-decoration: none;
    font-weight: normal;
    direction: ltr;
    max-width: none;
    margin-left: 0px;
    margin-right: 0px;
    margin-top: 0px;
    margin-bottom: 0px;
    padding-left: 0px;
    padding-right: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    background-color: transparent;
    text-shadow: none;
    -webkit-column-count: 1;
    column-count: 1;
    text-transform: none;
}

.element.icon-source {
    width: 100px;
    border-style: solid;
    border-width: 0px;
    border-color: #000000;
}

.element.image-source {
    border-style: solid;
    border-width: 0px;
    border-color: #000000;
}

.Quote {
    display: inline-block;
    font-family: freight-sans-pro;
    color: #000;
    font-size: 25rem;
    line-height: 1em;
    letter-spacing: normal;
    font-style: normal;
    direction: ltr;
    text-decoration: none;
    font-weight: normal;
    text-shadow: none;
}

#pagination-holder {
    display: inline-block;
    font-family: freight-sans-pro;
    color: #000;
    font-size: 25rem;
    line-height: 1em;
    letter-spacing: normal;
    font-style: normal;
    text-decoration: none;
    font-weight: normal;
    margin-left: 0px;
    margin-right: 0px;
    margin-top: 0px;
    margin-bottom: 0px;
    padding-left: 0px;
    padding-right: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    background-color: transparent;
    max-width: 980px;
    text-shadow: none;
    border-style: solid;
    border-width: 0px;
    border-color: #000000;
}

.master.container>.children {
    background-color: white;
}

.background-image-div {
    -webkit-filter: none;
    filter: none;
    opacity: 1;
    background-size: cover;
    background-position: center center;
}