body.anti-cameltoe-product-category {
   background: #fff;
}

body.dt-special-product-category {
   background: #fff;
}

body.anti-cameltoe-product-category .breadcrumbs,
body.anti-cameltoe-product-category .v2-shop-hero:not(.mobile-menu),
body.anti-cameltoe-product-category .v2-trust-strip,
body.anti-cameltoe-product-category .v2-gift-strip,
body.anti-cameltoe-product-category .dt-compare,
body.anti-cameltoe-product-category .v2-shop-press-wrap,
body.anti-cameltoe-product-category .v2-shop-gif-row-wrap,
body.anti-cameltoe-product-category .v2-shop-compare-wrap,
body.dt-special-product-category .breadcrumbs,
body.dt-special-product-category .v2-shop-hero:not(.mobile-menu),
body.dt-special-product-category .v2-trust-strip,
body.dt-special-product-category .v2-gift-strip,
body.dt-special-product-category .dt-compare,
body.dt-special-product-category .v2-shop-press-wrap,
body.dt-special-product-category .v2-shop-gif-row-wrap,
body.dt-special-product-category .v2-shop-compare-wrap {
   display: none !important;
}

body.anti-cameltoe-product-category.archive .shop {
   margin-top: 36px;
   padding-inline: 18px;
   padding-bottom: 34px;
}

body.dt-special-product-category.archive .shop {
   margin-top: 36px;
   padding-inline: 18px;
   padding-bottom: 34px;
}

body.anti-cameltoe-product-category .notice-filters-shop {
   margin-bottom: 30px;
}

body.dt-special-product-category .notice-filters-shop {
   margin-bottom: 30px;
}

.dt-ac-related {
   border-top: 1px solid rgba(22, 19, 19, 0.08);
   background: #fff;
   padding: clamp(34px, 5vw, 0px) 18px clamp(48px, 6vw, 0px);
   padding-bottom: 0px;
}

.dt-ac-related__inner {
   max-width: 1220px;
   margin: 0 auto;
}

.dt-ac-related__header {
   margin-bottom: clamp(22px, 3vw, 34px);
   text-align: center;
   margin-bottom: 30px;
}

.dt-ac-related__title {
   margin: 0;
   color: #161313;
   font-size: clamp(30px, 4vw, 46px);
   font-weight: 800;
   letter-spacing: 0;
   line-height: 1.08;
}

.dt-ac-related__products .products {
   margin-bottom: 0;
}

.dt-ac-hero {
   background: #fff;
   padding: clamp(30px, 40px, 72px) 18px clamp(22px, 3vw, 42px);
}

.dt-ac-hero__inner {
   display: grid;
   grid-template-columns: minmax(0, 0.9fr) minmax(360px, 1.1fr);
   gap: clamp(28px, 5vw, 78px);
   align-items: center;
   max-width: 1220px;
   margin: 0 auto;
}

.dt-ac-hero__copy {
   max-width: 470px;
   margin: 0 auto;
   text-align: center;
}

.dt-ac-hero__eyebrow,
.dt-ac-reviews__eyebrow {
   margin: 0 0 14px;
   color: #74635f;
   font-size: 12px;
   font-weight: 700;
   letter-spacing: 1.8px;
   line-height: 1.2;
   text-transform: uppercase;
}

.dt-ac-hero__title {
   margin: 0;
   color: #161313;
   font-size: clamp(31px, 4vw, 48px);
   font-weight: 800;
   letter-spacing: 0;
   line-height: 0.96;
   text-transform: uppercase;
}

.dt-ac-hero__text {
   margin-top: 22px;
   color: #2b2624;
   font-size: 16px;
   line-height: 1.68;
}

.dt-ac-hero__text p {
   margin: 0;
}

.dt-ac-hero__text p+p {
   margin-top: 14px;
}

.dt-ac-hero__media {
   position: relative;
   width: 100%;
   margin: 0;
   overflow: visible;
   border-radius: 8px;
   background: #f6f2ee;
}

.dt-ac-hero__image {
   display: block;
   width: 100%;
   height: 100%;
   object-fit: cover;
}

.dt-ac-sale-strip {
   background: #fff;
   padding: 0 18px clamp(18px, 2.5vw, 30px);
}

.dt-ac-sale-strip__inner {
   max-width: 1220px;
   margin: 0 auto;
   overflow: hidden;
   border: 1px solid rgba(22, 19, 19, 0.1);
   border-radius: 999px;
   background: #fbf5f2;
   box-shadow: 0 12px 30px rgba(22, 19, 19, 0.06);
}

.dt-ac-sale-strip__track {
   display: flex;
   width: max-content;
   animation: dt-ac-sale-marquee 24s linear infinite;
}

.dt-ac-sale-strip__item {
   display: inline-flex;
   align-items: center;
   gap: 10px;
   padding: 10px 24px;
   color: #161313;
   font-size: 12px;
   font-weight: 800;
   letter-spacing: 0.08em;
   line-height: 1;
   text-transform: uppercase;
   white-space: nowrap;
}

.dt-ac-sale-strip__item::after {
   content: "";
   display: inline-block;
   width: 5px;
   height: 5px;
   margin-left: 8px;
   border-radius: 999px;
   background: #ff3181;
   opacity: 0.8;
}

.dt-ac-sale-strip__item strong {
   color: #ff3181;
   font-weight: 900;
}


.dt-summer-hero .dt-ac-hero__media {
   border: 1px solid rgba(22, 19, 19, 0.08);
   background: #eef4ed;
   box-shadow: 0 18px 44px rgba(28, 24, 22, 0.08);
}

.dt-summer-icons {
   margin-bottom: 30px;
   background: #fcf8f2;
   padding: 10px 18px 10px;
}

.dt-summer-icons__inner {
   display: grid;
   grid-template-columns: repeat(4, minmax(0, 1fr));
   gap: 14px;
   max-width: 1220px;
   margin: 0 auto;
}

.dt-summer-icon {
   display: flex;
   flex-direction: column;
   align-items: center;
   justify-content: center;
   gap: 14px;
   padding: 10px;
   text-align: center;
}

.dt-summer-icon__media {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 54px;
   height: 54px;
   flex: 0 0 54px;
   border: 1px solid rgba(22, 19, 19, 0.08);
   border-radius: 50%;
   background: #fff;
   color: #5c4f42;
}

.dt-summer-icon__media svg {
   width: 24px;
   height: 24px;
   fill: none;
   stroke: currentColor;
   stroke-width: 1.7;
   stroke-linecap: round;
   stroke-linejoin: round;
}

.dt-summer-icon__media--logo {
   width: 146px;
   height: 54px;
   flex-basis: 54px;
   border-radius: 8px;
   color: #e92b8d;
}

.dt-summer-icon__media--logo svg {
   width: 114px;
   height: auto;
   fill: currentColor;
   stroke: none;
}

.dt-summer-icon__label {
   max-width: 220px;
   margin: 0;
   color: #000;
   font-size: 16px;
   font-weight: 600;
   letter-spacing: 0;
   line-height: 1.25;
}

@keyframes dt-ac-sale-marquee {
   from {
      transform: translate3d(0, 0, 0);
   }

   to {
      transform: translate3d(-50%, 0, 0);
   }
}

@media (prefers-reduced-motion: reduce) {
   .dt-ac-sale-strip__track {
      width: 100%;
      justify-content: center;
      animation: none;
   }

   .dt-ac-sale-strip__item:nth-child(n+2) {
      display: none;
   }
}

.dt-bundle-press-wrap {
   background: #fff;
   padding: 0 18px clamp(20px, 3vw, 38px);
}

body.summer-essentials-product-category .dt-bundle-press-wrap {
   padding-top: clamp(22px, 3vw, 36px);
}

.dt-bundle-press-wrap .as-seen-press {
   max-width: 1220px;
   margin: 0 auto;
   border: 1px solid rgba(22, 19, 19, 0.08);
   border-radius: 8px;
   background: #fffaf6;
}

.dt-ac-reviews {
   background: #fff;
   padding: clamp(48px, 6vw, 78px) 18px clamp(64px, 8vw, 96px);
}

.dt-ac-reviews__inner {
   max-width: 1220px;
   margin: 0 auto;
}

.dt-ac-reviews__header {
   max-width: 680px;
   margin: 0 auto 30px;
   text-align: center;
}

.dt-ac-reviews__title {
   margin: 0;
   color: #111;
   font-size: clamp(30px, 4vw, 46px);
   font-weight: 800;
   letter-spacing: 0;
   line-height: 1.05;
}

.dt-ac-reviews__summary {
   display: inline-flex;
   flex-wrap: wrap;
   gap: 8px 10px;
   align-items: center;
   justify-content: center;
   margin-top: 18px;
   padding: 12px 16px;
   border: 1px solid #ece5df;
   border-radius: 8px;
   background: #fffaf6;
   color: #332b28;
   font-size: 13px;
   line-height: 1.35;
}

.dt-ac-reviews__summary strong {
   font-weight: 800;
}

.dt-ac-reviews__summary img {
   display: block;
   height: auto;
}

.dt-ac-reviews__track {
   display: grid;
   grid-template-columns: repeat(4, minmax(0, 1fr));
   gap: 14px;
}

.dt-ac-review {
   display: flex;
   min-height: 188px;
   flex-direction: column;
   padding: 18px;
   border: 1px solid #ededed;
   border-radius: 8px;
   background: #f8f8f8;
   box-shadow: 0 10px 28px rgba(28, 24, 22, 0.05);
}

.dt-ac-review__rating {
   display: block;
   width: 76px;
   height: auto;
   margin-bottom: 12px;
}

.dt-ac-review__text {
   margin: 0;
   color: #1f1f1f;
   font-size: 14px;
   line-height: 1.55;
}

.dt-ac-review__name {
   margin: auto 0 0;
   padding-top: 18px;
   color: #5b4c48;
   font-size: 13px;
   font-weight: 800;
}

@media (max-width: 1024px) {
   .dt-ac-hero__inner {
      grid-template-columns: minmax(0, 1fr) minmax(320px, 1fr);
      gap: 30px;
   }

   .dt-ac-reviews__track {
      grid-template-columns: repeat(2, minmax(0, 1fr));
   }
}

@media (max-width: 768px) {
   body.anti-cameltoe-product-category.archive .shop {
      margin-top: 10px;
      padding-inline: 15px;
      overflow: hidden;
   }

   body.dt-special-product-category.archive .shop {
      margin-top: 10px;
      padding-inline: 15px;
      overflow: hidden;
   }

   .dt-ac-hero {
      padding: 0 15px 0px;
   }

   .dt-ac-hero__inner {
      grid-template-columns: 1fr;
      gap: 24px;
   }

   .dt-ac-hero__copy {
      max-width: 520px;
   }

   .dt-ac-hero__title {
      font-size: clamp(30px, 9vw, 42px);
      line-height: 1;
   }

   .dt-ac-hero__text {
      margin-top: 18px;
      font-size: 16px;
      line-height: 1.62;
   }

   .dt-ac-hero__media {
      max-width: 560px;
      margin: 0 auto;
      order: -1;
      margin-left: -15px;
      margin-right: -15px;
      display: block;
      width: calc(100% + 30px);
   }

   .dt-ac-sale-strip {
      padding: 14px 15px 16px;
   }

   .dt-ac-sale-strip__inner {
      border-radius: 12px;
      margin-left: -5px;
      margin-right: -5px;
   }

   .dt-ac-sale-strip__item {
      gap: 8px;
      padding: 9px 16px;
      font-size: 12px;
      letter-spacing: 0.06em;
   }

   .dt-summer-icons {
      margin-top: 15px;
      margin-bottom: 15px;
      padding: 10px 15px 10px;
   }

   .dt-summer-icons__inner {
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 10px;
   }

   .dt-summer-icon {
      gap: 12px;
      padding: 10px;
   }

   .dt-summer-icon__media {
      width: 48px;
      height: 48px;
      flex-basis: 48px;
   }

   .dt-summer-icon__media--logo {
      width: 120px;
      height: 48px;
      flex-basis: 48px;
   }

   .dt-summer-icon__media svg {
      width: 22px;
      height: 22px;
   }

   .dt-summer-icon__media--logo svg {
      width: 96px;
      height: auto;
   }

   .dt-summer-icon__label {
      font-size: 14px;
      line-height: 1.25;
   }

   .dt-ac-related {
      padding: 38px 15px 0px;
   }

   .dt-ac-related__header {
      margin-bottom: 30px;
   }



   .dt-ac-related .products.columns-4 {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 18px 12px;
      max-width: 600px;
      margin-left: auto !important;
      margin-right: auto !important;
   }

   .dt-bundle-press-wrap {
      padding: 0 15px 18px;
   }

   .dt-bundle-press-wrap .as-seen-press {
      padding: 22px 16px;
   }

   .dt-ac-reviews {
      padding: 44px 0 68px;
      overflow: hidden;
   }

   .dt-ac-reviews__header {
      padding-inline: 15px;
      margin-bottom: 22px;
   }

   .dt-ac-reviews__summary {
      width: 100%;
      max-width: 360px;
      margin-inline: auto;
   }

   .dt-ac-reviews__track {
      display: flex;
      gap: 14px;
      overflow-x: auto;
      padding: 2px 15px 16px;
      scroll-padding-left: 15px;
      scroll-snap-type: x mandatory;
      -webkit-overflow-scrolling: touch;
   }

   .dt-ac-reviews__track::-webkit-scrollbar {
      display: none;
   }

   .dt-ac-review {
      flex: 0 0 min(82vw, 330px);
      min-height: 196px;
      scroll-snap-align: start;
   }
}