.category-tile {
  position: relative;
}
.category-tile h1,
.category-tile h2 {
  font-size: 1.75rem;
  position: absolute;
  bottom: 1.875rem;
  left: 1.875rem;
  color: #fff;
}
.category-tile::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), to(rgba(0, 0, 0, 0.5)));
  background-image: linear-gradient(to bottom, transparent 60%, rgba(0, 0, 0, 0.5) 100%);
}

.page .hero {
  background-position-y: 0;
}
.page .shop-the-style .hero {
  background-position-y: 45%;
}

.hp-category-message,
.hp-promotion-message {
  position: absolute;
  bottom: 0.9375em;
  left: 1.875em;
}
.hp-category-message a,
.hp-promotion-message a {
  color: #fff;
}
.hp-category-message a.hp-promotion-message1,
.hp-promotion-message a.hp-promotion-message1 {
  font-size: 0.75em;
}

.category-tile {
  border: 1px solid white;
}

.half-height {
  min-height: 23.125em;
}
@media (max-width: 768.98px) {
  .half-height {
    min-height: 15.375em;
  }
}

.full-height {
  min-height: 51.725em;
}
@media (max-width: 768.98px) {
  .full-height {
    min-height: 35.375em;
  }
}
@media (max-width: 543.98px) {
  .full-height {
    min-height: 15.375em;
  }
}

.mens-jackets {
  background-position: 50% 34%;
}
@media (min-width: 544px) {
  .mens-jackets {
    background-size: auto 100%;
  }
}
@media (max-width: 543.98px) {
  .mens-jackets {
    background-position-y: 8%;
  }
}

.womens-dresses {
  background-position: 50% 15%;
}

.womens-jewelry {
  background-position: 40% 60%;
}
@media (min-width: 544px) {
  .womens-jewelry {
    background-size: auto 100%;
  }
}

.shop-red {
  background-position-y: 60%;
  min-height: 28.65em;
}
@media (max-width: 768.98px) {
  .shop-red {
    min-height: 15.375em;
  }
}
@media (max-width: 543.98px) {
  .shop-red {
    background-position: 45% 85%;
  }
}

@media (max-width: 543.98px) {
  .container.home-categories {
    padding-left: 0;
    padding-right: 0;
  }
}

.home-main-categories {
  margin-bottom: 2em;
}

.hp-product-grid {
  margin: 0;
}
.hp-product-grid .hp-product-content {
  background-color: transparent;
  text-align: center;
  border: 0;
}
@media (max-width: 543.98px) {
  .hp-product-grid .hp-product-content {
    min-height: 20.375em;
  }
}
.hp-product-grid .hp-product-content span {
  font-size: 1em;
}
@media (max-width: 768.98px) {
  .hp-product-grid .hp-product-content span {
    font-size: 0.85em;
  }
}
@media (max-width: 543.98px) {
  .hp-product-grid .hp-product-content span {
    font-size: 0.65em;
  }
}
.hp-product-grid .hp-product-content span.largeText {
  font-size: 5.5em;
  font-weight: 200;
}
@media (max-width: 1199.98px) {
  .hp-product-grid .hp-product-content span.largeText {
    font-size: 4.5em;
  }
}
@media (max-width: 991.98px) {
  .hp-product-grid .hp-product-content span.largeText {
    font-size: 3.4em;
  }
}
@media (max-width: 768.98px) {
  .hp-product-grid .hp-product-content span.largeText {
    font-size: 3em;
  }
}
@media (max-width: 543.98px) {
  .hp-product-grid .hp-product-content span.largeText {
    font-size: 2.5em;
  }
}
.hp-product-grid .hp-product-content a {
  color: #00a1e0;
  text-decoration: none;
}

.home-email-signup {
  background-color: #444;
}
.home-email-signup > .container {
  padding-top: 0.625em;
  padding-bottom: 0.625em;
}
.home-email-signup .email-description {
  padding-top: 0.375em;
  color: #fff;
}

/*
*    The site`s color palette:
*
*/
/*
*    Main Brand Color Palette (use them with get-brand-color() function):
*/
/*
*    Opaque Color Palette:
*/
/*
* Other colors
*/
/*
*    Main transparency levels
*/
/*
* Transparency
*/
/*
*    State colors (use them with get-state() function)
*/
/*
*	Utility includes. This file must not generate any css rules.
*/
/*
*	Variables, mixins and functions
*/
/*
*    This function is responsible of returning the transparency color
*    depending on the input parameters.
*    Note: If no parameters are passed, the function will return "transparent".
*
*     Parameters:
*         $type - The type of the transparency. Can be "Darken" or "Brighten".
*        $level - Level of transparency. Can be from 0 to 100.
*
*    Usage:
*        .class-name {
*            background-color: get-transparency(Darken, 38);
*        }
*    Result:
*        .class-name {
*            background-color: rgba(0, 0, 0, 0.38);
*        }
*/
/*
*    This function is responsible of returning the state color
*    depending on the input parameter.
*    Note: If no parameters are passed, the function will return null (no css will be generated).
*
*     Parameters:
*        $states - A map where all of the states are defined. Please check the map's structure in _colors.scss file.
*         $type - The type of the state. Please check the state definitions in _colors.scss file.
*
*    Usage:
*        .class-name {
*            color: get-state(info);
*        }
*    Result:
*        .class-name {
*            color: #17A2B8;
*        }
*/
/*
*    This function is responsible of returning the brand color
*    depending on the input parameters.
*    Note: If no parameters are passed or only the type is passed, the function will return null (no css will be generated).
*
*     Parameters:
*         $type - The type of the brand color. Can be "primary" or "secondary". Please check the $brand-primary and $brand-secondary in _colors.scss file.
*        $name - The name of the color. Please check the $brand-primary and $brand-secondary in _colors.scss file.
*        $opacity - The opacity of the returned color.
*
*    Usage:
*        .class-name {
*            color: get-brand-color(primary, creme, 70);
*        }
*    Result:
*        .class-name {
*            color: rgba(255, 243, 229, 0.7);
*        }
*/
/*
*    This variable is used for defining the fallback font families that are defined after main ones.
*/
/*
*    The site`s color palette:
*
*/
/*
*    Main Brand Color Palette (use them with get-brand-color() function):
*/
/*
*    Opaque Color Palette:
*/
/*
* Other colors
*/
/*
*    Main transparency levels
*/
/*
* Transparency
*/
/*
*    State colors (use them with get-state() function)
*/
/*
*    A variable used for defining the spaces used.
*/
/*
*    This mixin is used for adding spacing (margin) styles.
*    Input parameters specification:
*        Uses the $spacing variable defined in _typography_vars.scss file. Please check the structure of the object.
*        If no parameters are passed, no style definitions will be created.
*        The mixin accepts any number of arguments (15px, 10px) and/or the following ones:
*            - xs
*            - s
*            - m
*            - l
*            - xl
*            - xxl
*    Usage:
*        .class-name {
*            @include spacing(m, xl, 10px, 15px);
*        }
*        .class-name2 {
*            @include spacing(m, 30px);
*        }
*    Result:
*        .class-name {
*            margin: 24px 48px 10px 15px;
*        }
*        .class-name2 {
*            margin: 24px 30px;
*        }
*/
/*
*    This mixin is used for adding spacing (margin) to the passed orientation (top, right, bottom, left) styles.
*    Input parameter specification:
*        Uses the $spacing variable defined in _typography_vars.scss file. Please check the structure of the object.
*        @param $orientation parameter must have one of the following parameters:
*            - top
*            - right
*            - bottom
*            - left
*        @param $value parameter can have a user defined value (e.g 10px) or one of the following:
*            - xs
*            - s
*            - m
*            - l
*            - xl
*            - xxl
*    Usage:
*        .class-name {
*            @include spacing-orientation(top, 30px);
*        }
*        .class-name2 {
*            @include spacing-orientation(bottom, xl);
*        }
*    Result:
*        .class-name {
*            margin-top: 30px;
*        }
*        .class-name {
*            margin-bottom: 48px;
*        }
*/
/*
*    This mixin is used for button styles.
*
*     Parameters:
*        $color
*        $background-color
*        $border-color
*/
.homepage .main-callout-desktop {
  font-family: TTNorms-Regular, Helvetica, Arial, sans-serif;
  height: 445px;
  z-index: 999;
}
@media (max-width: 768px) {
  .homepage .main-callout-desktop {
    height: 500px;
  }
}
.homepage .main-callout-desktop .bg-height {
  height: 100%;
}
.homepage .main-callout-desktop h1.herobanner-text {
  font-family: TTNorms-Medium, Helvetica, Arial, sans-serif;
  margin-top: 79px;
  max-width: 48%;
  font-size: 2.5rem;
  color: #fff;
  line-height: 1.3;
  text-shadow: 0 2px 11px #000;
}
.homepage .main-callout-desktop h1.herobanner-text.text-Green {
  color: #3e675b;
  text-shadow: none;
}
.homepage .main-callout-desktop h1.herobanner-text.text-Grey {
  color: #3c3c3b;
  text-shadow: none;
}
@media (max-width: 1199.98px) {
  .homepage .main-callout-desktop h1.herobanner-text {
    margin-top: 40px;
    max-width: 40%;
    font-size: 2rem;
    color: #fff;
    text-align: left;
    line-height: 2.325rem;
  }
}
@media (max-width: 1199.98px) {
  .homepage .main-callout-desktop h1.herobanner-text {
    max-width: 75%;
  }
}
.homepage .main-callout-desktop .button-deskview {
  position: absolute;
  bottom: 50px;
  font-size: 20px;
  line-height: 24px;
}
@media (max-width: 1199.98px) {
  .homepage .main-callout-desktop .button-deskview {
    bottom: 20px;
  }
}
@media (max-width: 1199.98px) and (max-width: 321px) {
  .homepage .main-callout-desktop .button-deskview {
    margin-left: -11px;
  }
}
.homepage .main-callout-desktop .button-deskview a {
  padding: 8px 18px;
}
.homepage .main-callout-desktop .hero-btn {
  padding: 8px;
  height: 60px;
}
@media (max-width: 1199.98px) {
  .homepage .main-callout-desktop .hero-btn {
    text-align: left;
  }
}
.homepage .main-callout-desktop .icon-primary {
  width: 42px;
  height: 42px;
  margin-top: 0 !important;
  margin-right: 18px;
}
@media (max-width: 1199.98px) {
  .homepage .main-callout-desktop .icon-primary {
    margin-right: 15px;
  }
}
.homepage .main-callout-desktop .btn-text {
  line-height: 41px;
}
.homepage .main-icons {
  background-color: #fff;
}
.homepage .main-icons .img-col {
  position: relative;
  height: 6.25rem;
}
.homepage .main-icons .img-col .usp {
  color: #3e675b;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-decoration: none;
  margin-top: 1em;
  margin-bottom: 0.8em;
  position: absolute;
  top: 0;
  bottom: 0;
}
.homepage .main-icons .img-col .usp img {
  width: 50px;
  opacity: 0.6;
}
.homepage .main-icons .img-col .usp p {
  font-family: TTNorms-Regular, Helvetica, Arial, sans-serif;
  font-size: 0.8125rem;
  padding: 0.625rem 1.25rem;
}
.homepage .main-icons-mobile {
  margin-top: 1em;
}
.homepage .main-icons-mobile #myTab {
  border-bottom: none;
  background-color: #90aba0;
}
.homepage .main-icons-mobile #myTab .nav-item {
  width: 25%;
}
.homepage .main-icons-mobile #myTab .nav-item .nav-link {
  border-bottom: none;
  height: 100%;
  width: 100%;
  border-right: 1px solid #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.homepage .main-icons-mobile #myTab .nav-item .nav-link img {
  width: 100%;
}
.homepage .main-icons-mobile #myTab .nav-item .nav-link.active {
  background-color: #fff;
  border-right: none;
}
.homepage .main-icons-mobile .tab-content {
  text-align: center;
  font-size: 0.875em;
  font-family: TTNorms-Regular, Helvetica, Arial, sans-serif;
  background-color: #fff;
  padding: 20px;
}
.homepage .main-icons-mobile .tab-content a {
  text-decoration: none;
}
.homepage .central-top-text {
  margin: 1.25rem 0 1.875rem;
}
.homepage .central-top-text span {
  display: inline-block;
  background: #fff;
  padding: 0 1.25rem;
  position: relative;
  font-weight: 400;
}
.homepage .central-top-text::before {
  content: " ";
  display: block;
  width: 100%;
  height: 2px;
  background: #e0e0e0;
  position: absolute;
  top: 50%;
  margin-top: -1px;
}
.homepage .strike-through .value {
  font-size: 0.875rem;
}
.homepage .minicart .product-summary .sales {
  font-size: 1em;
}
.homepage .minicart .product-summary .line-item-total-price {
  font-family: TTNorms-Medium, Helvetica, Arial, sans-serif;
}
.homepage .business-home-button {
  margin-top: 0;
  padding-bottom: 0;
}
.homepage .business-home-button .button {
  padding: 7px 23px;
}
@media (max-width: 991.98px) {
  .homepage .business-home-button .button {
    padding: 10px 23px;
  }
}
.homepage .categories-image-style-1 {
  position: relative;
  background-size: cover;
  background-position: center center;
  height: 100%;
}
.homepage .categories-image-style-2 {
  position: relative;
  background-size: cover;
  background-position: center center;
}
@media (min-width: 544px) {
  .homepage .half-height {
    min-height: 20.375em;
  }
}
@media (min-width: 769px) {
  .homepage .half-height {
    min-height: 23.8em;
  }
}
@media (min-width: 992px) {
  .homepage .half-height {
    min-height: 14.3em;
  }
}
@media (min-width: 1200px) {
  .homepage .half-height {
    min-height: 17.5em;
  }
}
.homepage .add-padding {
  padding: 10px 10px 10px 0;
}
.homepage .home-page-categories-message {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 3.75rem 1.875rem 1.875rem;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(#000));
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, #000 100%);
}
@media (min-width: 544px) and (max-width: 768.98px) {
  .homepage .home-page-categories-message {
    padding: 1rem 1.875rem 1.875rem;
  }
}
.homepage .home-page-categories-message h4 {
  color: #fff;
  font-family: TTNorms-Regular, Helvetica, Arial, sans-serif;
  padding-right: 3.125rem;
  display: inline-block;
  position: relative;
  font-size: 1.875rem;
}
