.layout-category-landing > .container {
  max-width: 100%;
  padding: 0;
  width: 100%;
  margin: 0; }

.landing-category-banner {
  position: relative;
  background: #3D4550;
  align-items: stretch; }
  .landing-category-banner > .inner {
    display: flex;
    position: relative; }

[data-page-type="category"] .landing-category--description .page-heading {
  text-align: left; }

.landing-category--description {
  padding: 70px 30px 50px 0;
  color: white;
  font-size: 20px;
  width: 40%;
  text-align: left; }
  .landing-category--description h1 {
    color: #53E09A;
    text-align: left;
    margin-bottom: 10px; }

.landing-category--img {
  width: 60%; }
  .landing-category--img img {
    height: 100%;
    width: auto;
    object-fit: cover; }

.ob-subcategory__title {
  text-align: center; }

.ob-subcategory__descr {
  font-weight: 400;
  font-size: 18px; }

.ob-subcategory__link .button--primary {
  border-radius: 40px;
  font-size: 18px; }

.landing--subcategory {
  margin-top: 50px; }

@media all and (max-width: 768px) {
  .landing-category--description {
    padding: 50px 0 10px 0;
    font-size: 16px; }
    .landing-category--description p {
      padding-bottom: 0; }
  .landing-category-banner > .inner {
    flex-wrap: wrap;
    padding-bottom: 20px; }
  .landing-category--description,
  .landing-category--img {
    width: 100%; } }

/* Landing page layout fixes. Keep these rules scoped to category landing pages. */
.category-landing-page .header:not(.is-open),
body:has(.layout-category-landing) .header:not(.is-open) {
  height: auto; }

.category-landing-page .ob-ribbon-banner,
.category-landing-page .ob-ribbon-banner .message-carousel,
.category-landing-page .ob-ribbon-banner .message,
body:has(.layout-category-landing) .ob-ribbon-banner,
body:has(.layout-category-landing) .ob-ribbon-banner .message-carousel,
body:has(.layout-category-landing) .ob-ribbon-banner .message {
  height: auto;
  min-height: 40px; }

.category-landing-page .ob-ribbon-banner .message p,
body:has(.layout-category-landing) .ob-ribbon-banner .message p {
  height: auto;
  min-height: 40px;
  padding: 8px 32px 8px 0;
  line-height: 1.35;
  overflow-wrap: anywhere; }

.layout-category-landing {
  padding-top: var(--landing-header-space, 0px) !important; }

.layout-category-landing .landing-category--description,
.layout-category-landing .landing-category--img {
  min-width: 0; }

.layout-category-landing .landing-category--img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover; }

.layout-category-landing .landing-subcategories .productCarousel {
  width: 100%;
  min-width: 0;
  margin-left: 0;
  margin-right: 0; }

.layout-category-landing .landing-subcategories .productCarousel-slide {
  padding-left: 8px;
  padding-right: 8px; }

.layout-category-landing .landing-subcategories .card {
  margin-left: 0;
  margin-right: 0; }

.layout-category-landing .ob-card-details {
  width: 100%;
  min-width: 0; }

.layout-category-landing .ob-product-card__image-link {
  display: flex;
  align-items: center;
  justify-content: center; }

.layout-category-landing .ob-product-card__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain; }

@media (max-width: 799px) {
  .layout-category-landing {
    padding-top: var(--landing-header-space, 300px) !important; }
  .category-landing-page .ob-trust-icons:not(.scrolling),
  body:has(.layout-category-landing) .ob-trust-icons:not(.scrolling) {
    padding-top: 10px; }
  .category-landing-page .ob-trust-icons.scrolling,
  body:has(.layout-category-landing) .ob-trust-icons.scrolling {
    overflow: hidden;
    pointer-events: none; }
  .layout-category-landing .landing-category-banner > .inner {
    flex-direction: column;
    padding-bottom: 20px;
    gap: 16px; }
  .layout-category-landing .landing-category--description,
  .layout-category-landing .landing-category--img {
    width: 100%; }
  .layout-category-landing .landing-category--description {
    padding: 28px 0 0; }
  .layout-category-landing .landing-category--description .page-heading {
    font-size: 32px;
    line-height: 1.2;
    margin-top: 0; }
  .layout-category-landing .landing-category--img img {
    height: auto; }
  .layout-category-landing .landing-subcategories > .container,
  .layout-category-landing .landing-testimonials-section > .container {
    padding-left: 16px;
    padding-right: 16px; }
  .layout-category-landing .landing-subcategories .productCarousel-slide {
    padding-left: 0;
    padding-right: 0; }
  .layout-category-landing .landing-subcategories .card {
    padding: 18px;
    border-radius: 20px; }
  .layout-category-landing .landing-subcategories .card-figure {
    aspect-ratio: 4 / 3; }
  .layout-category-landing .landing-subcategories .card-title {
    height: auto !important;
    font-size: 17px;
    line-height: 1.35; }
  .layout-category-landing .landing-subcategories .slick-prev {
    left: 4px; }
  .layout-category-landing .landing-subcategories .slick-next {
    right: 4px; }
  .layout-category-landing .landing-subcategories .slick-prev,
  .layout-category-landing .landing-subcategories .slick-next {
    top: 35%;
    opacity: .85;
    z-index: 3; }
  .layout-category-landing .landing-subcategories .card-price-rating {
    height: auto;
    min-height: 36px;
    margin-bottom: 12px; }
  .layout-category-landing .ob-subcategory__title h2 {
    font-size: 28px;
    line-height: 1.25; } }

@media (min-width: 601px) and (max-width: 799px) {
  .layout-category-landing .landing-subcategories .productCarousel-slide {
    padding-left: 6px;
    padding-right: 6px; } }

.category-landing-page .ob-trust-icons.scrolling,
body:has(.layout-category-landing) .ob-trust-icons.scrolling {
  overflow: hidden;
  pointer-events: none; }

/* Keep navigation inside the landing carousel at tablet and desktop widths too. */
.layout-category-landing .landing-subcategories .slick-prev {
  left: 4px; }

.layout-category-landing .landing-subcategories .slick-next {
  right: 4px; }

/* Give the homepage-style reviews room after the final product carousel. */
.layout-category-landing .landing-testimonials-section {
  margin-top: 72px;
  padding-bottom: 24px; }

@media (max-width: 799px) {
  .layout-category-landing .landing-testimonials-section {
    margin-top: 48px; } }

@media (max-width: 799px) {
  .layout-category-landing .landing-testimonials-section .ob-client-testimonials {
    width: 100%;
    margin-right: 0; } }
