/** Shopify CDN: Minification failed

Line 1294:10 "positoin" is not a known CSS property
Line 2541:78 Unexpected "*"

**/
@charset "UTF-8";
/* Breakpoints - DO NOT CHANGE */
html {
  background-color: var(--colorAnnouncement);
  scroll-behavior: smooth;
  scroll-padding-top: 140px; }
  @media only screen and (max-width: 768px) {
    html {
      height: -webkit-fill-available; } }
  @media only screen and (max-width: 768px) {
    html {
      scroll-padding-top: 100px; } }

#menu {
  scroll-margin-top: 10px; }
  @media only screen and (max-width: 768px) {
    #menu {
      scroll-margin-top: 10px; } }

body {
  /* Meal plan page has its own header - no padding needed */ }
  @media only screen and (max-width: 768px) {
    body {
      /* mobile viewport bug fix */
      min-height: -webkit-fill-available;
      /* compensate for fixed header + announcement bar */
      padding-top: 105px; } }
  @media only screen and (max-width: 768px) {
    body.body--meal-plan {
      padding-top: 0; } }

body.js-drawer-open .klaviyo-form,
body.js-drawer-open div[data-testid*="POPUP"],
body.js-drawer-open div[class*="klaviyo"],
body.js-drawer-open div[id^="klaviyo_"] {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important; }

@media only screen and (max-width: 768px) {
  .page-width {
    padding: 1rem !important; } }

.btn {
  font-family: "Cooper BT Medium";
  font-size: 18px; }

.tns--primary-btn {
  display: flex;
  font-size: 18px;
  transition: 0.2s;
  text-transform: uppercase; }
  .tns--primary-btn svg {
    margin-left: 10px; }
    .tns--primary-btn svg .filled-arrow__circle {
      fill: #f6faf7; }
    .tns--primary-btn svg .filled-arrow__arrow {
      fill: #f26722; }
  .tns--primary-btn:hover {
    background: #26cad3; }
    .tns--primary-btn:hover svg .filled-arrow__arrow {
      fill: #26cad3; }

.tns--secondary-btn {
  display: flex;
  font-size: 18px;
  background: #034956; }
  .tns--secondary-btn svg {
    margin-left: 10px; }
    .tns--secondary-btn svg .filled-arrow__circle {
      fill: #26CAD3; }
    .tns--secondary-btn svg .filled-arrow__arrow {
      fill: #fff; }
  .tns--secondary-btn:hover {
    background: #26cad3; }
    .tns--secondary-btn:hover svg .filled-arrow__circle {
      fill: #fff; }
    .tns--secondary-btn:hover svg .filled-arrow__arrow {
      fill: #26CAD3; }

.blink {
  animation: blink 0.75s infinite; }

@keyframes blink {
  to {
    opacity: .0; } }

#typing-effect, .typing-effect-cursor {
  display: inline; }

.announcement__wrapper {
  background: red; }
  .announcement__wrapper .announcement__text {
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 2px;
    padding: 10px 20px; }
    @media only screen and (max-width: 768px) {
      .announcement__wrapper .announcement__text {
        font-size: 12px;
        font-weight: 300; } }
  .announcement__wrapper .announcement__text[data-text="active-filters"] {
    white-space: normal;
    line-height: 1.4;
    padding: 8px 20px; }
  @media only screen and (max-width: 768px) {
    .announcement__wrapper .announcement__item {
      align-items: flex-start !important;
      line-height: 1; } }
  @media only screen and (max-width: 768px) {
    .announcement__wrapper .announcement__item.filters {
      position: relative !important; } }

.announcement:has(.filters) {
  overflow: visible; }

@media only screen and (max-width: 768px) {
  .header-wrapper {
    position: fixed !important;
    top: 0 !important;
    left: 0;
    right: 0;
    z-index: 10;
    background-color: #fff;
    width: 100%;
    transform: none !important;
    transition: none !important; } }
@media only screen and (max-width: 768px) {
  .header-wrapper.header-wrapper--sticky {
    position: fixed !important;
    top: 0 !important;
    transform: none !important; } }

@media only screen and (max-width: 768px) {
  .site-header {
    padding: 0; }
    .site-header.site-header--sticky, .site-header.site-header--opening {
      position: relative !important;
      top: 0 !important;
      transform: none !important;
      transition: none !important; } }
.site-header.site-header--sticky {
  position: fixed;
  top: env(safe-area-inset-top, 0) !important; }
@media only screen and (min-width: 769px) {
  .site-header {
    padding: 25px 44px; }
    .site-header .header-item--icons {
      margin-left: 50px; } }

.site-nav__link {
  color: #034956; }

.header-wrapper .tns-mega-menu {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: 350px;
  background-color: #fff;
  z-index: 100; }
  .header-wrapper .tns-mega-menu.open {
    display: block; }
  .header-wrapper .tns-mega-menu .tns-mega-menu__wrapper {
    padding-top: 20px;
    padding-bottom: 20px; }
    .header-wrapper .tns-mega-menu .tns-mega-menu__wrapper > div {
      display: none;
      align-items: center; }
      .header-wrapper .tns-mega-menu .tns-mega-menu__wrapper > div.open {
        display: flex; }
      .header-wrapper .tns-mega-menu .tns-mega-menu__wrapper > div > div {
        flex-grow: 0;
        flex-shrink: 1; }
        .header-wrapper .tns-mega-menu .tns-mega-menu__wrapper > div > div.tns-mega-menu__links {
          flex-basis: 40%; }
          .header-wrapper .tns-mega-menu .tns-mega-menu__wrapper > div > div.tns-mega-menu__links ul {
            margin: 0; }
            .header-wrapper .tns-mega-menu .tns-mega-menu__wrapper > div > div.tns-mega-menu__links ul li {
              margin-bottom: 10px;
              list-style: none; }
              .header-wrapper .tns-mega-menu .tns-mega-menu__wrapper > div > div.tns-mega-menu__links ul li:last-child {
                margin-bottom: 0; }
              .header-wrapper .tns-mega-menu .tns-mega-menu__wrapper > div > div.tns-mega-menu__links ul li a {
                position: relative;
                font-family: var(--typeHeaderPrimary);
                font-size: calc(var(--typeHeaderSize) - 53px); }
                .header-wrapper .tns-mega-menu .tns-mega-menu__wrapper > div > div.tns-mega-menu__links ul li a:after {
                  content: '';
                  position: absolute;
                  top: 100%;
                  left: 0;
                  width: 0%;
                  height: 3px;
                  background-color: #26CAD3;
                  transition: width .3s ease; }
                .header-wrapper .tns-mega-menu .tns-mega-menu__wrapper > div > div.tns-mega-menu__links ul li a:hover:after {
                  width: 100%; }
        .header-wrapper .tns-mega-menu .tns-mega-menu__wrapper > div > div.tns-mega-menu__images {
          flex-basis: 60%; }
          .header-wrapper .tns-mega-menu .tns-mega-menu__wrapper > div > div.tns-mega-menu__images img {
            border-radius: 24px; }
          .header-wrapper .tns-mega-menu .tns-mega-menu__wrapper > div > div.tns-mega-menu__images > div {
            display: none; }
            .header-wrapper .tns-mega-menu .tns-mega-menu__wrapper > div > div.tns-mega-menu__images > div.block-default, .header-wrapper .tns-mega-menu .tns-mega-menu__wrapper > div > div.tns-mega-menu__images > div.active {
              display: block; }
          .header-wrapper .tns-mega-menu .tns-mega-menu__wrapper > div > div.tns-mega-menu__images.active > div.block-default {
            display: none; }

@media only screen and (max-width: 768px) {
  .header-layout {
    padding: 0.33rem 0.66rem; } }
.header-layout .site-nav--icons .site-nav__icons {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px; }
  @media only screen and (max-width: 768px) {
    .header-layout .site-nav--icons .site-nav__icons button {
      padding: 10px;
      background-color: #26CAD3;
      border-radius: 50%; } }
  @media only screen and (max-width: 768px) {
    .header-layout .site-nav--icons .site-nav__icons button svg path {
      stroke: white !important; } }

/* Mobile Thumb Menu Override */
.slide-nav__overflow {
  background-color: #e2f1f2 !important;
  height: 100% !important;
  max-height: 100%;
  left: 0;
  right: 0;
  bottom: 0;
  padding-left: 20px;
  padding-right: 20px;
  border-radius: 0 !important;
  /* Closing animation - keep visible while animating out */ }
  .slide-nav__overflow .slide-nav__wrapper {
    position: absolute;
    left: 50%;
    bottom: 108px;
    width: 100%;
    height: 74%;
    max-width: calc(100vw - 40px);
    max-height: calc(100% - 194px);
    background-color: #F6FAF7;
    border-radius: 36px;
    overflow: hidden;
    transform: translateY(100%) translateX(-50%); }
    .slide-nav__overflow .slide-nav__wrapper ul.slide-nav {
      position: absolute;
      width: 100%;
      top: 50%;
      transform: translateZ(0) translateY(-50%); }
      .slide-nav__overflow .slide-nav__wrapper ul.slide-nav li {
        margin-bottom: 10px; }
        .slide-nav__overflow .slide-nav__wrapper ul.slide-nav li a:active, .slide-nav__overflow .slide-nav__wrapper ul.slide-nav li a:focus, .slide-nav__overflow .slide-nav__wrapper ul.slide-nav li a:hover, .slide-nav__overflow .slide-nav__wrapper ul.slide-nav li button:active, .slide-nav__overflow .slide-nav__wrapper ul.slide-nav li button:focus, .slide-nav__overflow .slide-nav__wrapper ul.slide-nav li button:hover {
          background-color: transparent !important; }
        .slide-nav__overflow .slide-nav__wrapper ul.slide-nav li .slide-nav__dropdown {
          background-color: #F6FAF7;
          border-radius: 0; }
          .slide-nav__overflow .slide-nav__wrapper ul.slide-nav li .slide-nav__dropdown.is-active {
            transition: all .1s ease-out; }
          .slide-nav__overflow .slide-nav__wrapper ul.slide-nav li .slide-nav__dropdown > li:not(:first-child) {
            padding-left: 30px;
            padding-right: 30px; }
            .slide-nav__overflow .slide-nav__wrapper ul.slide-nav li .slide-nav__dropdown > li:not(:first-child) .image-wrap {
              margin-bottom: 5px;
              border-radius: 24px; }
          .slide-nav__overflow .slide-nav__wrapper ul.slide-nav li .slide-nav__dropdown .slide-nav__table {
            display: flex;
            align-items: center;
            margin-bottom: 10px; }
            .slide-nav__overflow .slide-nav__wrapper ul.slide-nav li .slide-nav__dropdown .slide-nav__table .slide-nav__sublist-header {
              font-weight: 600;
              color: #26CAD3;
              letter-spacing: 0.25em;
              text-transform: uppercase;
              font-size: calc(var(--typeBaseSize) - 5px);
              margin-bottom: 15px;
              font-family: var(--typeBasePrimary); }
            .slide-nav__overflow .slide-nav__wrapper ul.slide-nav li .slide-nav__dropdown .slide-nav__table .slide-nav__return {
              flex: 0 1 20%; }
              .slide-nav__overflow .slide-nav__wrapper ul.slide-nav li .slide-nav__dropdown .slide-nav__table .slide-nav__return button {
                padding-top: 5px;
                padding-bottom: 5px; }
            .slide-nav__overflow .slide-nav__wrapper ul.slide-nav li .slide-nav__dropdown .slide-nav__table a {
              flex: 0 1 80%;
              text-align: center; }
          .slide-nav__overflow .slide-nav__wrapper ul.slide-nav li .slide-nav__dropdown .slide-nav__return-btn svg {
            width: 34px;
            height: 34px;
            transform: rotate(180deg); }
            .slide-nav__overflow .slide-nav__wrapper ul.slide-nav li .slide-nav__dropdown .slide-nav__return-btn svg circle {
              fill: #26CAD3; }
            .slide-nav__overflow .slide-nav__wrapper ul.slide-nav li .slide-nav__dropdown .slide-nav__return-btn svg path {
              fill: #fff; }
        .slide-nav__overflow .slide-nav__wrapper ul.slide-nav li a, .slide-nav__overflow .slide-nav__wrapper ul.slide-nav li button {
          color: #383A35; }
  .slide-nav__overflow.js-menu--is-open .slide-nav__wrapper {
    transform: translateY(0) translateX(-50%); }
  .slide-nav__overflow.js-menu--is-closing {
    display: block !important;
    background-color: transparent !important;
    transition: background-color 0.15s ease-out; }
    .slide-nav__overflow.js-menu--is-closing .slide-nav__wrapper {
      transform: translateY(100%) translateX(-50%);
      transition: transform 0.15s cubic-bezier(0.4, 0, 0.6, 1); }
  .slide-nav__overflow.sub-nav--is-open .slide-nav__wrapper {
    overflow-y: scroll; }
    .slide-nav__overflow.sub-nav--is-open .slide-nav__wrapper ul.slide-nav {
      height: 100%;
      transform: translate3d(-100%, -50%, 0); }
  .slide-nav__overflow .tns--primary-btn {
    position: absolute;
    left: 50%;
    bottom: 21.5px;
    display: inline-flex;
    align-items: center;
    font-size: 22px;
    padding-top: 15px;
    padding-bottom: 15px;
    transform: translateX(-50%);
    justify-content: space-between;
    white-space: nowrap; }

.slide-nav__overflow.slide-nav__overflow--thumb.js-menu--is-open ~ [data-section-id=header] .header-wrapper {
  position: fixed;
  z-index: 2147483651 !important; }

#partial-striped-bg {
  position: absolute;
  top: 0;
  right: 0;
  width: 40%;
  height: 1220px; }
  @media only screen and (max-width: 768px) {
    #partial-striped-bg {
      top: 60vh;
      width: 100%;
      height: 900px; } }

@media only screen and (min-width: 769px) {
  .site-nav .site-nav__item {
    font-size: 18px;
    font-weight: 600;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    margin-right: 1rem; }
    .site-nav .site-nav__item .icon-arrow {
      margin-bottom: 2px;
      transform: rotate(180deg);
      transition: transform 0.3s ease; }
    .site-nav .site-nav__item.mega-menu-open .icon-arrow, .site-nav .site-nav__item.is-focused .icon-arrow, .site-nav .site-nav__item:hover .icon-arrow {
      transform: rotate(0deg); }
    .site-nav .site-nav__item.mega-menu-open a {
      color: #383a35 !important;
      color: var(--colorTextBody) !important;
      background-color: #f6faf7;
      background-color: var(--colorBody);
      opacity: 1;
      transition: none; }
      .site-nav .site-nav__item.mega-menu-open a:before {
        left: 15px;
        right: 25px; } }

.get-started {
  min-width: 200px;
  padding: 10px 15px;
  white-space: nowrap;
  align-items: center;
  justify-content: center;
  font-size: 17px; }

.homepage-top-section .feature-row {
  gap: 5%; }
  .homepage-top-section .feature-row .feature-row__text {
    min-width: 40%;
    flex: 0 1 40%;
    margin-bottom: 1rem !important; }

.feature-row .feature-row__text {
  min-width: 38%;
  flex: 0 1 38%; }
  @media only screen and (max-width: 768px) {
    .feature-row .feature-row__text {
      padding: 30px 12px 0; } }
.feature-row .rte > * {
  font-family: "Proxima Nova";
  font-size: 30px;
  line-height: 36px; }
  @media only screen and (max-width: 768px) {
    .feature-row .rte > * {
      font-size: 24px;
      line-height: 32px; } }

.homepage-top-section {
  margin: 40px 0 0; }
  .homepage-top-section .feature-row {
    align-items: stretch; }
    .homepage-top-section .feature-row .tns--primary-btn {
      display: inline-flex;
      align-items: center;
      font-size: 22px;
      padding-top: 15px;
      padding-bottom: 15px; }
    .homepage-top-section .feature-row .feature-row__item.feature-row__text {
      position: relative; }
      .homepage-top-section .feature-row .feature-row__item.feature-row__text .tns--primary-btn {
        margin-top: 60px; }
    .homepage-top-section .feature-row .feature-row__item.feature-row__item--overlap-video-image {
      width: 100%; }
      .homepage-top-section .feature-row .feature-row__item.feature-row__item--overlap-video-image .image-wrap img {
        border-radius: 24px; }
      .homepage-top-section .feature-row .feature-row__item.feature-row__item--overlap-video-image .video-square {
        position: absolute;
        width: 550px;
        height: 550px;
        top: 200px;
        background: #f6faf7;
        border-radius: 24px; }
        @media only screen and (max-width: 768px) {
          .homepage-top-section .feature-row .feature-row__item.feature-row__item--overlap-video-image .video-square {
            position: relative;
            top: 0;
            width: 100%;
            height: 0;
            padding-bottom: 100%; } }
        .homepage-top-section .feature-row .feature-row__item.feature-row__item--overlap-video-image .video-square video {
          border-radius: 24px; }
          @media only screen and (max-width: 768px) {
            .homepage-top-section .feature-row .feature-row__item.feature-row__item--overlap-video-image .video-square video {
              position: absolute;
              margin-top: 1.5rem; } }
        .homepage-top-section .feature-row .feature-row__item.feature-row__item--overlap-video-image .video-square .corner-tagline {
          position: absolute;
          left: 0;
          bottom: 25px;
          font-family: "Proxima Nova";
          font-weight: 600;
          font-size: 13px;
          letter-spacing: 0.08em;
          line-height: 15.83px;
          text-transform: uppercase;
          color: #383a35; }
          @media only screen and (max-width: 768px) {
            .homepage-top-section .feature-row .feature-row__item.feature-row__item--overlap-video-image .video-square .corner-tagline {
              left: 0.5rem;
              font-size: 0.7rem; } }
          .homepage-top-section .feature-row .feature-row__item.feature-row__item--overlap-video-image .video-square .corner-tagline span {
            opacity: 0.6; }
          .homepage-top-section .feature-row .feature-row__item.feature-row__item--overlap-video-image .video-square .corner-tagline svg {
            margin-left: 5px; }
        .homepage-top-section .feature-row .feature-row__item.feature-row__item--overlap-video-image .video-square .img-square {
          position: absolute;
          bottom: -150px;
          right: -170px;
          width: 350px;
          height: 350px;
          border-radius: 24px;
          background-size: 100%;
          background-repeat: no-repeat;
          filter: drop-shadow(0px 4.1463px 16.5852px rgba(0, 0, 0, 0.1)); }
          @media only screen and (max-width: 768px) {
            .homepage-top-section .feature-row .feature-row__item.feature-row__item--overlap-video-image .video-square .img-square {
              display: none; } }
          .homepage-top-section .feature-row .feature-row__item.feature-row__item--overlap-video-image .video-square .img-square .homepage-badge {
            position: absolute;
            width: 115px;
            bottom: -31px;
            left: -43px; }

.start-fresh-stack .tns-text-and-images-list-blocks .tns-tai-block {
  padding-bottom: 6rem !important; }
  @media only screen and (max-width: 768px) {
    .start-fresh-stack .tns-text-and-images-list-blocks .tns-tai-block {
      padding-bottom: 0 !important; } }
  .start-fresh-stack .tns-text-and-images-list-blocks .tns-tai-block .tns-tai-block_content-wrapper .tns-tai-block_number {
    display: inline-block;
    margin-bottom: -1rem !important;
    margin-right: 0.5rem !important; }
  .start-fresh-stack .tns-text-and-images-list-blocks .tns-tai-block .tns-tai-block_content-wrapper .h2 {
    display: inline-block; }
  .start-fresh-stack .tns-text-and-images-list-blocks .tns-tai-block .tns-tai-block_content-wrapper .rte-setting {
    padding-left: 4.5rem; }
    @media only screen and (max-width: 768px) {
      .start-fresh-stack .tns-text-and-images-list-blocks .tns-tai-block .tns-tai-block_content-wrapper .rte-setting {
        padding: 1rem 0 0; } }
  .start-fresh-stack .tns-text-and-images-list-blocks .tns-tai-block .tns-tai-block_content-wrapper a.tns--primary-btn {
    margin-left: 4.5rem; }
    @media only screen and (max-width: 768px) {
      .start-fresh-stack .tns-text-and-images-list-blocks .tns-tai-block .tns-tai-block_content-wrapper a.tns--primary-btn {
        margin-left: 0; } }
.start-fresh-stack .tns-text-and-images-list-blocks .tns-tai-block:nth-child(1) .tns-tai-block_image-wrapper {
  top: 7rem; }
  @media only screen and (max-width: 768px) {
    .start-fresh-stack .tns-text-and-images-list-blocks .tns-tai-block:nth-child(1) .tns-tai-block_image-wrapper {
      top: 2rem;
      margin-bottom: 9rem; } }
  @media only screen and (max-width: 768px) {
    .start-fresh-stack .tns-text-and-images-list-blocks .tns-tai-block:nth-child(1) .tns-tai-block_image-wrapper .tns-tai-block_image--primary {
      transform: scale(1.2) translate(-14%, 40%) !important; } }
  @media only screen and (max-width: 768px) {
    .start-fresh-stack .tns-text-and-images-list-blocks .tns-tai-block:nth-child(1) .tns-tai-block_image-wrapper .tns-tai-block_image--secondary {
      transform: translate(33%, -45%) !important; } }
.start-fresh-stack .tns-text-and-images-list-blocks .tns-tai-block:nth-child(2) {
  align-items: flex-start; }
  .start-fresh-stack .tns-text-and-images-list-blocks .tns-tai-block:nth-child(2) .tns-tai-block_image-wrapper {
    flex: 0 1 30%;
    top: 5rem; }
    @media only screen and (max-width: 768px) {
      .start-fresh-stack .tns-text-and-images-list-blocks .tns-tai-block:nth-child(2) .tns-tai-block_image-wrapper {
        top: 7rem; } }
  .start-fresh-stack .tns-text-and-images-list-blocks .tns-tai-block:nth-child(2) .tns-tai-block_content-wrapper {
    flex: 0 1 65%;
    padding-top: 3rem;
    padding-right: 3rem; }
    @media only screen and (max-width: 768px) {
      .start-fresh-stack .tns-text-and-images-list-blocks .tns-tai-block:nth-child(2) .tns-tai-block_content-wrapper {
        padding-top: 7rem;
        padding-right: 0rem; } }
    @media only screen and (max-width: 768px) {
      .start-fresh-stack .tns-text-and-images-list-blocks .tns-tai-block:nth-child(2) .tns-tai-block_content-wrapper .tns-tai-block_number {
        margin-right: 0.5rem !important; } }
    @media only screen and (max-width: 768px) {
      .start-fresh-stack .tns-text-and-images-list-blocks .tns-tai-block:nth-child(2) .tns-tai-block_content-wrapper .h2 {
        font-size: 1.5rem !important;
        margin-top: 2rem; } }
  .start-fresh-stack .tns-text-and-images-list-blocks .tns-tai-block:nth-child(2) .tns-tai-block_image--secondary {
    transform: translate(-33%, -66%); }
.start-fresh-stack .tns-text-and-images-list-blocks .tns-tai-block:nth-child(3) {
  justify-content: space-evenly;
  align-items: flex-start;
  padding-top: 0;
  padding-bottom: 0rem !important; }
  .start-fresh-stack .tns-text-and-images-list-blocks .tns-tai-block:nth-child(3) .tns-tai-block_content-wrapper {
    padding-top: 6rem; }
    @media only screen and (max-width: 768px) {
      .start-fresh-stack .tns-text-and-images-list-blocks .tns-tai-block:nth-child(3) .tns-tai-block_content-wrapper {
        padding-top: 0; } }
  .start-fresh-stack .tns-text-and-images-list-blocks .tns-tai-block:nth-child(3) .tns-tai-block_image-wrapper {
    margin-top: -6rem; }
    @media only screen and (max-width: 768px) {
      .start-fresh-stack .tns-text-and-images-list-blocks .tns-tai-block:nth-child(3) .tns-tai-block_image-wrapper {
        margin-top: 14rem; } }

.homepage-logos {
  padding-top: 260px;
  position: relative; }
  @media only screen and (max-width: 768px) {
    .homepage-logos {
      position: relative;
      padding-top: 10px;
      margin: 20px 0; } }
  @media only screen and (max-width: 768px) {
    .homepage-logos > .page-width {
      padding: 0 !important; } }
  @media only screen and (max-width: 768px) {
    .homepage-logos > .page-width .mobile-overflow-scroller-wrap {
      position: relative;
      overflow: hidden; } }
  @media only screen and (max-width: 768px) {
    .homepage-logos > .page-width .mobile-overflow-scroller-wrap .mobile-overflow-scroller {
      position: relative;
      overflow: hidden;
      overflow-x: scroll;
      -webkit-overflow-scrolling: touch;
      scroll-snap-type: x mandatory;
      direction: ltr; }
      .homepage-logos > .page-width .mobile-overflow-scroller-wrap .mobile-overflow-scroller::-webkit-scrollbar {
        display: none; } }
  @media only screen and (max-width: 768px) {
    .homepage-logos > .page-width .mobile-overflow-scroller-wrap .mobile-overflow-scroller .logo-bar {
      justify-content: flex-start;
      flex-wrap: nowrap;
      margin-bottom: 0;
      padding: 2rem 0; } }
  @media only screen and (max-width: 768px) {
    .homepage-logos > .page-width .mobile-overflow-scroller-wrap .mobile-overflow-scroller .logo-bar:after {
      content: "";
      flex: auto;
      padding-left: 1px; } }
  @media only screen and (max-width: 768px) {
    .homepage-logos > .page-width .mobile-overflow-scroller-wrap .mobile-overflow-scroller .logo-bar .logo-bar__item {
      flex: 0 0 110px;
      scroll-snap-align: center;
      scroll-snap-stop: always; } }
  @media only screen and (max-width: 768px) {
    .homepage-logos > .page-width .mobile-overflow-scroller-wrap .mobile-overflow-scroller .logo-bar .logo-bar__item:first-child {
      margin-left: 30px; } }
  @media only screen and (max-width: 768px) {
    .homepage-logos > .page-width .mobile-overflow-scroller-wrap .mobile-overflow-scroller .logo-bar .logo-bar__item:last-child {
      margin-right: 30px; } }

.tns-card-parent {
  position: relative; }
  @media only screen and (max-width: 768px) {
    .tns-card-parent {
      z-index: 2; } }
  .tns-card-parent .card-corner-img {
    position: absolute;
    z-index: 2; }

.tns-card {
  position: relative;
  border-radius: 24px;
  padding: 40px 0;
  z-index: 1; }
  @media only screen and (max-width: 768px) {
    .tns-card {
      padding: 40px 0; } }
  @media only screen and (max-width: 768px) {
    .tns-card .tns-card-wrapper {
      max-width: 100%;
      padding-left: 20px;
      padding-right: 20px; } }
  .tns-card .tns-card-wrapper,
  .tns-card .tns-card-wrapper-columns {
    margin: 0 auto;
    max-width: 700px; }
    .tns-card .tns-card-wrapper.two-cols,
    .tns-card .tns-card-wrapper-columns.two-cols {
      display: flex;
      max-width: 92%; }
      @media only screen and (max-width: 768px) {
        .tns-card .tns-card-wrapper.two-cols,
        .tns-card .tns-card-wrapper-columns.two-cols {
          flex-direction: column;
          flex-wrap: wrap; } }
      .tns-card .tns-card-wrapper.two-cols .h2,
      .tns-card .tns-card-wrapper.two-cols .tns-card-body,
      .tns-card .tns-card-wrapper-columns.two-cols .h2,
      .tns-card .tns-card-wrapper-columns.two-cols .tns-card-body {
        flex: 0 1 50%;
        text-align: left;
        margin-top: 0; }
    .tns-card .tns-card-wrapper .subheading,
    .tns-card .tns-card-wrapper-columns .subheading {
      font-size: var(--typeBaseSize);
      line-height: calc(var(--typeBaseSize) + 6px);
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: .05em;
      text-align: center; }
    .tns-card .tns-card-wrapper h2,
    .tns-card .tns-card-wrapper-columns h2 {
      font-family: "Cooper BT Light";
      font-size: 42px;
      line-height: 50px;
      text-align: center; }
      @media only screen and (max-width: 768px) {
        .tns-card .tns-card-wrapper h2,
        .tns-card .tns-card-wrapper-columns h2 {
          margin-bottom: 20px; } }
      @media only screen and (max-width: 768px) {
        .tns-card .tns-card-wrapper h2 br,
        .tns-card .tns-card-wrapper-columns h2 br {
          display: none; } }
    .tns-card .tns-card-wrapper .tns-card-body,
    .tns-card .tns-card-wrapper-columns .tns-card-body {
      margin-top: 20px;
      text-align: center; }
      .tns-card .tns-card-wrapper .tns-card-body a,
      .tns-card .tns-card-wrapper-columns .tns-card-body a {
        position: relative;
        font-family: var(--typeHeaderPrimary);
        font-size: calc(var(--typeBaseSize) + 4px); }
        .tns-card .tns-card-wrapper .tns-card-body a:after,
        .tns-card .tns-card-wrapper-columns .tns-card-body a:after {
          content: '';
          width: 100%;
          height: 2px;
          position: absolute;
          left: 0;
          top: 100%;
          margin-top: 5px;
          background-color: #26CAD3;
          transition: var(--colorBtnPrimaryBgTransition); }
        .tns-card .tns-card-wrapper .tns-card-body a:hover:after,
        .tns-card .tns-card-wrapper-columns .tns-card-body a:hover:after {
          background-color: #F26722; }
      .tns-card .tns-card-wrapper .tns-card-body > *,
      .tns-card .tns-card-wrapper-columns .tns-card-body > * {
        font-family: "Proxima Nova";
        font-weight: 400;
        font-size: 17px;
        line-height: 26px; }
    .tns-card .tns-card-wrapper .btn,
    .tns-card .tns-card-wrapper-columns .btn {
      display: inline-flex; }
      .tns-card .tns-card-wrapper .btn:after,
      .tns-card .tns-card-wrapper-columns .btn:after {
        display: none; }
  .tns-card .tns-card-wrapper-columns {
    display: flex;
    max-width: 92%;
    justify-content: space-between;
    gap: 10px; }
    @media only screen and (max-width: 768px) {
      .tns-card .tns-card-wrapper-columns {
        flex-wrap: wrap;
        flex-direction: row;
        gap: 0;
        width: 100%;
        padding-left: 20px;
        padding-right: 20px; } }
    .tns-card .tns-card-wrapper-columns > div {
      flex: 0 1 30%; }
      @media only screen and (max-width: 768px) {
        .tns-card .tns-card-wrapper-columns > div {
          flex: 1 0 100%; } }
      .tns-card .tns-card-wrapper-columns > div h2 {
        text-align: left; }
        @media only screen and (max-width: 768px) {
          .tns-card .tns-card-wrapper-columns > div h2 {
            margin-bottom: 40px; } }
      .tns-card .tns-card-wrapper-columns > div ul {
        margin: 0; }
        @media only screen and (max-width: 768px) {
          .tns-card .tns-card-wrapper-columns > div ul {
            margin-bottom: 10px; } }
        .tns-card .tns-card-wrapper-columns > div ul li {
          position: relative;
          list-style: none;
          padding-left: 30px;
          font-family: "Cooper BT Light";
          font-size: calc(var(--typeBaseSize) + 4px);
          margin-bottom: 20px; }
          @media only screen and (max-width: 768px) {
            .tns-card .tns-card-wrapper-columns > div ul li {
              margin-bottom: 10px;
              font-size: var(--typeBaseSize); } }
          .tns-card .tns-card-wrapper-columns > div ul li:before {
            content: '';
            width: 20px;
            height: 20px;
            position: absolute;
            top: 8px;
            left: 0;
            background-repeat: no-repeat;
            background-image: url("//tomandsawyer.com/cdn/shop/t/54/assets/check.svg?v=173400682001990534791764015711"); }
          .tns-card .tns-card-wrapper-columns > div ul li:last-child {
            margin-bottom: 0; }

.product-grid-heading {
  text-align: center;
  margin-bottom: 20px;
  margin-top: 40px; }
  .product-grid-heading h1 {
    font-size: 3rem; }
  @media only screen and (max-width: 768px) {
    .product-grid-heading {
      margin-bottom: 15px;
      margin-top: 30px; } }
  .product-grid-heading + .collection-tag-filter {
    margin-top: 0; }

#calculator .feature-row__text {
  flex: 0 1 50%;
  padding-left: 20px;
  padding-right: 0px; }
#calculator .h2 {
  font-family: "Cooper BT Light";
  font-size: 42px;
  line-height: 50px; }

.tns-product-carousel__card--icons {
  padding: 0px 26px;
  /* Tooltip container */
  /* Show the tooltip text when you mouse over the tooltip container */ }
  .tns-product-carousel__card--icons ul {
    display: flex;
    justify-content: space-evenly;
    margin-left: 0; }
    .tns-product-carousel__card--icons ul li {
      list-style: none;
      margin-bottom: 0; }
      .tns-product-carousel__card--icons ul li img {
        max-width: 40px;
        width: 36px; }
  .tns-product-carousel__card--icons .tooltip {
    position: relative;
    display: inline-block; }
  .tns-product-carousel__card--icons .tooltip .tooltip__label {
    visibility: hidden;
    width: 100px;
    background-color: var(--colorTextBody);
    color: #fff;
    text-align: center;
    padding: 5px 0;
    border-radius: 6px;
    font-size: calc(var(--typeBaseSize) - 5px);
    position: absolute;
    z-index: 1;
    bottom: 100%;
    left: 50%;
    margin-left: -50px; }
  .tns-product-carousel__card--icons .tooltip .tooltip__label::after {
    content: " ";
    position: absolute;
    top: 100%;
    /* At the bottom of the tooltip */
    left: 50%;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: var(--colorTextBody) transparent transparent transparent; }
  .tns-product-carousel__card--icons .tooltip:hover .tooltip__label {
    visibility: visible; }

@media only screen and (max-width: 768px) {
  .tns-product-carousel-wrapper {
    overflow: hidden !important; } }

.tns-product-carousel {
  position: relative;
  background: url("//tomandsawyer.com/cdn/shop/t/54/assets/stripe.svg?v=98891315502547727001764015712");
  padding-bottom: 50px; }
  @media only screen and (max-width: 768px) {
    .tns-product-carousel {
      margin-bottom: 20px;
      padding-bottom: 0; } }
  .tns-product-carousel .tns-product-carousel__btns {
    position: relative;
    top: -34px;
    display: flex;
    justify-content: center; }
    .tns-product-carousel .tns-product-carousel__btns .btn {
      display: inline-flex;
      align-items: center;
      height: 66px;
      border: 2px solid #FFF;
      color: #034956;
      background: #FFF;
      padding: 10px;
      padding-right: 30px;
      transition: all ease-in 0.2s; }
      @media only screen and (max-width: 768px) {
        .tns-product-carousel .tns-product-carousel__btns .btn {
          display: flex;
          flex-wrap: wrap;
          flex-direction: row;
          padding-right: 10px;
          justify-content: center; } }
      .tns-product-carousel .tns-product-carousel__btns .btn svg .animal-bg {
        fill: #FFF;
        stroke: #EEF7F7;
        transition: all ease-in 0.2s; }
      @media only screen and (max-width: 768px) {
        .tns-product-carousel .tns-product-carousel__btns .btn svg {
          margin-top: -35px; } }
      .tns-product-carousel .tns-product-carousel__btns .btn span {
        margin-left: 25px; }
        @media only screen and (max-width: 768px) {
          .tns-product-carousel .tns-product-carousel__btns .btn span {
            width: 100%;
            margin-left: 0; } }
      .tns-product-carousel .tns-product-carousel__btns .btn:hover, .tns-product-carousel .tns-product-carousel__btns .btn.active {
        transform: scale(1.05);
        font-family: "Cooper BT Medium";
        border-color: #26CAD3; }
        .tns-product-carousel .tns-product-carousel__btns .btn:hover svg .animal-bg, .tns-product-carousel .tns-product-carousel__btns .btn.active svg .animal-bg {
          fill: #EEF7F7;
          stroke: #26CAD3; }
      .tns-product-carousel .tns-product-carousel__btns .btn:last-child {
        margin-left: 28px; }
  .tns-product-carousel .tns-product-carousel__tab-content {
    display: none;
    position: relative; }
    .tns-product-carousel .tns-product-carousel__tab-content.active {
      display: block !important; }
    @media only screen and (max-width: 768px) {
      .tns-product-carousel .tns-product-carousel__tab-content {
        margin-left: -20px;
        margin-right: -20px; } }
    @media only screen and (max-width: 768px) {
      .tns-product-carousel .tns-product-carousel__tab-content .tns-product-carousel_arrows {
        display: none; } }
    .tns-product-carousel .tns-product-carousel__tab-content .tns-product-carousel_arrows button {
      position: absolute;
      top: 50%;
      width: 44px;
      height: 44px;
      box-shadow: 0px 6px 24px rgba(0, 0, 0, 0.1);
      transform: translateY(-50%);
      background-color: #fff;
      border-radius: 50%;
      padding: 0; }
      .tns-product-carousel .tns-product-carousel__tab-content .tns-product-carousel_arrows button svg {
        position: absolute;
        top: 50%;
        left: 50%;
        width: 35px;
        height: 35px;
        fill: #26CAD3;
        transform: translate(-50%, -50%); }
      .tns-product-carousel .tns-product-carousel__tab-content .tns-product-carousel_arrows button.tns-product-carousel_arrow-prev {
        left: 0; }
        .tns-product-carousel .tns-product-carousel__tab-content .tns-product-carousel_arrows button.tns-product-carousel_arrow-prev svg {
          transform: translate(-50%, -50%) rotate(-180deg); }
      .tns-product-carousel .tns-product-carousel__tab-content .tns-product-carousel_arrows button.tns-product-carousel_arrow-next {
        right: 0; }
  .tns-product-carousel .overflow-scroll-wrap {
    margin: 0 auto;
    max-width: 942px; }
    .tns-product-carousel .overflow-scroll-wrap .overflow-scroller {
      scroll-behavior: smooth; }
      @media only screen and (max-width: 768px) {
        .tns-product-carousel .overflow-scroll-wrap .overflow-scroller {
          overflow-x: auto;
          scroll-snap-type: x mandatory;
          -webkit-overflow-scrolling: touch; }
          .tns-product-carousel .overflow-scroll-wrap .overflow-scroller::-webkit-scrollbar {
            display: none; } }
  .tns-product-carousel .tns-product-carousel__wrapper {
    max-width: 100%;
    padding-top: 0px;
    display: flex;
    gap: 2%; }
    @media only screen and (max-width: 768px) {
      .tns-product-carousel .tns-product-carousel__wrapper {
        max-width: 100%;
        padding-left: 20px;
        gap: 15px; } }
    @media only screen and (max-width: 768px) {
      .tns-product-carousel .tns-product-carousel__wrapper:after {
        content: '';
        flex: auto;
        padding-left: 1px; } }
    .tns-product-carousel .tns-product-carousel__wrapper .carousel-cell {
      flex: 1 0 32%;
      padding-top: 70px; }
      @media only screen and (max-width: 768px) {
        .tns-product-carousel .tns-product-carousel__wrapper .carousel-cell {
          flex: 1 0 82%;
          scroll-snap-align: center;
          scroll-snap-stop: always; } }
    .tns-product-carousel .tns-product-carousel__wrapper .tns-product-carousel__card {
      position: relative;
      min-height: 490px;
      background: #FFF;
      border-radius: 24px;
      flex: 1;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      box-shadow: 0px 6px 24px rgba(0, 0, 0, 0.1); }
      .tns-product-carousel .tns-product-carousel__wrapper .tns-product-carousel__card:first-child {
        margin-left: 0; }
      .tns-product-carousel .tns-product-carousel__wrapper .tns-product-carousel__card .tns-product-carousel__card--top {
        width: 100%;
        height: 24px;
        background: #26CAD3;
        border-radius: 24px 24px 0px 0px; }
      .tns-product-carousel .tns-product-carousel__wrapper .tns-product-carousel__card img.tns-product-carousel__card--main-image {
        position: relative;
        width: 85%;
        margin-top: -95px;
        left: 7.5%; }
      .tns-product-carousel .tns-product-carousel__wrapper .tns-product-carousel__card h3 {
        font-size: 32px;
        line-height: 38.39px;
        text-align: center;
        margin-bottom: 10px;
        padding: 0 5px; }
      .tns-product-carousel .tns-product-carousel__wrapper .tns-product-carousel__card div.product-description {
        padding: 0.5rem 1.5rem 2rem; }
        .tns-product-carousel .tns-product-carousel__wrapper .tns-product-carousel__card div.product-description * {
          display: block;
          font-size: 13px;
          line-height: 17px;
          text-align: center; }
      .tns-product-carousel .tns-product-carousel__wrapper .tns-product-carousel__card .tns-product-carousel__card--bottom {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 54px;
        background: #034956;
        border-radius: 0px 0px 24px 24px;
        color: #FFF;
        font-family: "Cooper BT Medium";
        font-size: 17px;
        cursor: pointer;
        transition: var(--colorBtnPrimaryBgTransition); }
        .tns-product-carousel .tns-product-carousel__wrapper .tns-product-carousel__card .tns-product-carousel__card--bottom:hover {
          background-color: #26CAD3; }
  .tns-product-carousel .tns-product-carousel__bottom-section {
    padding-top: 90px;
    padding-bottom: 100px; }
    @media only screen and (max-width: 768px) {
      .tns-product-carousel .tns-product-carousel__bottom-section {
        padding-top: 45px;
        padding-bottom: 50px; } }

.tns-product--popup {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 100; }
  @media only screen and (max-width: 768px) {
    .tns-product--popup {
      overflow-y: scroll; } }
  .tns-product--popup.show {
    display: block; }
  .tns-product--popup:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5); }
  .tns-product--popup .tns-product--wrapper {
    background-color: #f6faf7;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    max-width: 1080px;
    transform: translate(-50%, -50%);
    padding: 25px 35px;
    border-radius: 24px;
    z-index: 1; }
    @media only screen and (max-width: 768px) {
      .tns-product--popup .tns-product--wrapper {
        top: 0;
        padding-top: 60px;
        transform: translate(-50%, 0);
        border-radius: 0; } }
    .tns-product--popup .tns-product--wrapper .closePopup {
      position: absolute;
      top: 24px;
      right: -24px;
      width: 48px;
      height: 48px;
      border-radius: 50%;
      background-color: #26CAD3;
      cursor: pointer; }
      @media only screen and (max-width: 768px) {
        .tns-product--popup .tns-product--wrapper .closePopup {
          top: 10px;
          right: 10px;
          width: 28px;
          height: 28px; } }
      .tns-product--popup .tns-product--wrapper .closePopup:after, .tns-product--popup .tns-product--wrapper .closePopup:before {
        content: '';
        position: absolute;
        top: 50%;
        left: 50%;
        width: 22px;
        height: 2.6px;
        background-color: #fff;
        border-radius: 2px; }
        @media only screen and (max-width: 768px) {
          .tns-product--popup .tns-product--wrapper .closePopup:after, .tns-product--popup .tns-product--wrapper .closePopup:before {
            width: 18px; } }
      .tns-product--popup .tns-product--wrapper .closePopup:after {
        transform: translate(-50%, -50%) rotate(-45deg); }
      .tns-product--popup .tns-product--wrapper .closePopup:before {
        transform: translate(-50%, -50%) rotate(45deg); }
    .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner {
      display: flex;
      padding-bottom: 6rem; }
      @media only screen and (max-width: 768px) {
        .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner {
          flex-direction: column; } }
      .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner > div {
        flex: 0 1 50%;
        min-height: 1px; }
        @media only screen and (max-width: 768px) {
          .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner > div {
            flex: 1 0 100%; } }
        .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner > div.tns-product--popup_slideshow {
          padding-left: 50px; }
          @media only screen and (max-width: 768px) {
            .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner > div.tns-product--popup_slideshow {
              order: 1;
              padding-left: 0;
              /* min-height: 464px; */ } }
          .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner > div.tns-product--popup_slideshow .tns-product--popup_slideshow_inner {
            position: relative;
            z-index: 3; }
            .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner > div.tns-product--popup_slideshow .tns-product--popup_slideshow_inner .carousel-cell {
              width: 100%;
              min-height: 620px;
              background-color: #F0F0F0;
              border-radius: 24px; }
              @media only screen and (max-width: 768px) {
                .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner > div.tns-product--popup_slideshow .tns-product--popup_slideshow_inner .carousel-cell {
                  padding: 30px;
                  min-height: 310px; } }
              .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner > div.tns-product--popup_slideshow .tns-product--popup_slideshow_inner .carousel-cell img {
                position: absolute;
                top: 50%;
                left: 50%;
                transform: translate(-50%, -50%); }
                @media only screen and (max-width: 768px) {
                  .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner > div.tns-product--popup_slideshow .tns-product--popup_slideshow_inner .carousel-cell img {
                    position: static;
                    transform: unset; } }
            .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner > div.tns-product--popup_slideshow .tns-product--popup_slideshow_inner .flickity-button {
              background-color: #fff; }
              .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner > div.tns-product--popup_slideshow .tns-product--popup_slideshow_inner .flickity-button.flickity-next {
                right: -20px; }
              .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner > div.tns-product--popup_slideshow .tns-product--popup_slideshow_inner .flickity-button.flickity-previous {
                left: -20px; }
              .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner > div.tns-product--popup_slideshow .tns-product--popup_slideshow_inner .flickity-button .flickity-button-icon {
                fill: #26CAD3; }
      .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details {
        position: relative;
        overflow-y: auto;
        max-height: 620px;
        z-index: 1;
        padding-bottom: 90px; }
        @media only screen and (max-width: 768px) {
          .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details {
            order: 2;
            max-height: 100%; } }
        .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details h2 {
          font-family: var(--typeHeaderPrimary);
          font-size: calc(var(--typeHeaderSize) * 0.49);
          color: #034956;
          margin-top: 15px;
          margin-bottom: 10px; }
        .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details > div.popup-description {
          margin-bottom: 20px; }
          .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details > div.popup-description * {
            font-size: calc(var(--typeBaseSize) - 1px); }
        .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .tns-product-carousel__card--icons {
          padding: 0 0; }
          .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .tns-product-carousel__card--icons ul {
            flex-wrap: wrap;
            gap: 20px;
            justify-content: flex-start; }
            .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .tns-product-carousel__card--icons ul li {
              flex: 0 1 30%; }
              @media only screen and (max-width: 768px) {
                .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .tns-product-carousel__card--icons ul li {
                  flex: 0 1 46%; } }
              .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .tns-product-carousel__card--icons ul li > span {
                display: flex;
                gap: 12px;
                align-items: center; }
                .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .tns-product-carousel__card--icons ul li > span span {
                  font-size: calc(var(--typeBaseSize) - 5px); }
        .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .tns-product--accordeon_wrapper .tns-product--accordeon_single .tns-product--accordeon_header {
          display: flex;
          align-items: center;
          justify-content: space-between;
          padding-bottom: 10px;
          margin-bottom: 10px;
          border-bottom: 1px solid var(--color-body-text); }
          .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .tns-product--accordeon_wrapper .tns-product--accordeon_single .tns-product--accordeon_header .readmore {
            display: none; }
            @media only screen and (max-device-width: 1280px) {
              .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .tns-product--accordeon_wrapper .tns-product--accordeon_single .tns-product--accordeon_header .readmore {
                display: block; } }
          .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .tns-product--accordeon_wrapper .tns-product--accordeon_single .tns-product--accordeon_header h5 {
            font-size: var(--typeBaseSize);
            margin-bottom: 0; }
          .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .tns-product--accordeon_wrapper .tns-product--accordeon_single .tns-product--accordeon_header span {
            position: relative;
            font-size: calc(var(--typeBaseSize) - 5px);
            cursor: pointer;
            padding-right: 20px; }
            .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .tns-product--accordeon_wrapper .tns-product--accordeon_single .tns-product--accordeon_header span.open i {
              transform: translateY(-50%) rotate(45deg); }
            .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .tns-product--accordeon_wrapper .tns-product--accordeon_single .tns-product--accordeon_header span i {
              content: '';
              position: absolute;
              top: 50%;
              right: 0;
              width: 16px;
              height: 16px;
              background-color: #26CAD3;
              border-radius: 50%;
              transition: all 0.15s ease;
              transform: translateY(-50%); }
              .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .tns-product--accordeon_wrapper .tns-product--accordeon_single .tns-product--accordeon_header span i::after {
                content: '';
                position: absolute;
                top: 50%;
                left: 50%;
                width: 8px;
                height: 7px;
                background-image: url("//tomandsawyer.com/cdn/shop/t/54/assets/cross-icon.svg?v=128553607068161151021764015712");
                background-repeat: no-repeat;
                transform: translate(-50%, -50%); }
        .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .tns-product--accordeon_wrapper .tns-product--accordeon_single .tns-product--accordeon_content {
          max-height: 99em;
          overflow: hidden;
          transition: max-height 0.5s cubic-bezier(0, 1, 0, 1); }
          @media only screen and (max-device-width: 1280px) {
            .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .tns-product--accordeon_wrapper .tns-product--accordeon_single .tns-product--accordeon_content {
              max-height: 45px; } }
          .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .tns-product--accordeon_wrapper .tns-product--accordeon_single .tns-product--accordeon_content p {
            font-size: calc(var(--typeBaseSize) - 5px); }
        .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .tns-product--accordeon_wrapper .tns-product--accordeon_single.open .tns-product--accordeon_content {
          max-height: 99em;
          transition: max-height .5s ease-in-out; }
    .tns-product--popup .tns-product--wrapper .tns-product--footer {
      position: absolute;
      left: 0;
      bottom: 0;
      width: 100%;
      padding: 30px 35px;
      background-color: #EEF7F7;
      border-radius: 0 0 24px 24px;
      z-index: 2; }
      @media only screen and (max-width: 768px) {
        .tns-product--popup .tns-product--wrapper .tns-product--footer {
          padding: 30px 20px;
          border-radius: 0; } }
      .tns-product--popup .tns-product--wrapper .tns-product--footer .tns-product--footer_actions {
        display: flex;
        gap: 20px; }
        .tns-product--popup .tns-product--wrapper .tns-product--footer .tns-product--footer_actions a {
          position: relative;
          font-family: var(--typeHeaderPrimary);
          color: #034956; }
          @media only screen and (max-width: 768px) {
            .tns-product--popup .tns-product--wrapper .tns-product--footer .tns-product--footer_actions a {
              font-size: calc(var(--typeBaseSize) - 4px); } }
          .tns-product--popup .tns-product--wrapper .tns-product--footer .tns-product--footer_actions a:after {
            content: '';
            position: absolute;
            width: 100%;
            height: 2px;
            background-color: #26CAD3;
            top: 100%;
            left: 0; }

.template-index .tns-text-and-images-list .section-header {
  padding: 60px 0 20px;
  max-width: 800px;
  margin: 0 auto !important;
  position: relative;
  z-index: 5;
  border-radius: 12px; }

.tns-our-team .page-width {
  padding: 0 !important; }

.tns-text-and-images-list {
  position: relative; }
  @media only screen and (min-width: 769px) {
    .tns-text-and-images-list {
      margin-top: 0; } }
  @media only screen and (max-width: 768px) {
    .tns-text-and-images-list {
      margin-bottom: 20px;
      margin-top: 5rem; } }
  .tns-text-and-images-list.single-tns-text-and-images-list .tns-text-and-images-list-blocks {
    padding-top: 0; }
  @media only screen and (max-width: 768px) {
    .tns-text-and-images-list .section-header {
      margin-top: 0 !important;
      padding-top: 0rem !important; } }
  .tns-text-and-images-list .section-header h2 {
    font-size: calc(var(--typeHeaderSize) - 20px); }
    @media only screen and (max-width: 768px) {
      .tns-text-and-images-list .section-header h2 {
        font-size: calc(var(--typeHeaderSize) - 40px); } }
  .tns-text-and-images-list .tns-text-and-images-list-blocks .tns-tai-block {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 80px;
    padding-bottom: 10rem; }
    @media only screen and (max-width: 768px) {
      .tns-text-and-images-list .tns-text-and-images-list-blocks .tns-tai-block {
        justify-content: center;
        flex-direction: column;
        padding-bottom: 2rem; } }
    .tns-text-and-images-list .tns-text-and-images-list-blocks .tns-tai-block .tns-tai-block_image-wrapper {
      flex: 0 1 50%;
      position: relative; }
      @media only screen and (max-width: 768px) {
        .tns-text-and-images-list .tns-text-and-images-list-blocks .tns-tai-block .tns-tai-block_image-wrapper {
          order: 1;
          flex: 0 1 100%;
          positoin: absolute; } }
      .tns-text-and-images-list .tns-text-and-images-list-blocks .tns-tai-block .tns-tai-block_image-wrapper .tns-tai-block_image--primary {
        position: relative;
        z-index: 2; }
        .tns-text-and-images-list .tns-text-and-images-list-blocks .tns-tai-block .tns-tai-block_image-wrapper .tns-tai-block_image--primary img {
          border-radius: 24px; }
      .tns-text-and-images-list .tns-text-and-images-list-blocks .tns-tai-block .tns-tai-block_image-wrapper .tns-tai-block_image--secondary {
        position: absolute;
        left: 0;
        top: 0;
        max-width: 360px;
        z-index: 1;
        transform: translate(-45%, -65%); }
        @media only screen and (max-width: 768px) {
          .tns-text-and-images-list .tns-text-and-images-list-blocks .tns-tai-block .tns-tai-block_image-wrapper .tns-tai-block_image--secondary {
            transform: translate(-50%, -50%); } }
        .tns-text-and-images-list .tns-text-and-images-list-blocks .tns-tai-block .tns-tai-block_image-wrapper .tns-tai-block_image--secondary.bottom-position {
          top: unset;
          bottom: 0;
          transform: translate(-45%, 70%); }
          @media only screen and (max-width: 768px) {
            .tns-text-and-images-list .tns-text-and-images-list-blocks .tns-tai-block .tns-tai-block_image-wrapper .tns-tai-block_image--secondary.bottom-position {
              top: 0;
              bottom: unset;
              transform: translate(-50%, -50%); } }
        .tns-text-and-images-list .tns-text-and-images-list-blocks .tns-tai-block .tns-tai-block_image-wrapper .tns-tai-block_image--secondary img {
          border-radius: 24px; }
    .tns-text-and-images-list .tns-text-and-images-list-blocks .tns-tai-block .tns-tai-block_content-wrapper {
      flex: 0 1 40%; }
      @media only screen and (max-width: 768px) {
        .tns-text-and-images-list .tns-text-and-images-list-blocks .tns-tai-block .tns-tai-block_content-wrapper {
          order: 2;
          padding-top: 40px;
          text-align: center;
          flex: 0 1 100%; } }
      .tns-text-and-images-list .tns-text-and-images-list-blocks .tns-tai-block .tns-tai-block_content-wrapper .tns-tai-block_number {
        position: relative;
        width: 48px;
        height: 48px;
        background-color: #EEF7F7;
        border: 2px solid #C2E7EA;
        border-radius: 50%;
        margin-bottom: 20px; }
        @media only screen and (max-width: 768px) {
          .tns-text-and-images-list .tns-text-and-images-list-blocks .tns-tai-block .tns-tai-block_content-wrapper .tns-tai-block_number {
            margin-left: auto;
            margin-right: auto; } }
        .tns-text-and-images-list .tns-text-and-images-list-blocks .tns-tai-block .tns-tai-block_content-wrapper .tns-tai-block_number span {
          position: absolute;
          top: 50%;
          left: 50%;
          font-size: calc(var(--typeBaseSize) + 6px);
          color: #26cad3;
          transform: translate(-50%, -50%); }
      .tns-text-and-images-list .tns-text-and-images-list-blocks .tns-tai-block .tns-tai-block_content-wrapper .subheading {
        font-size: var(--typeBaseSize);
        line-height: calc(var(--typeBaseSize) + 6px);
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 0.05em; }
      .tns-text-and-images-list .tns-text-and-images-list-blocks .tns-tai-block .tns-tai-block_content-wrapper .h2 {
        font-family: var(--typeHeaderPrimary);
        font-size: calc(var(--typeHeaderSize) - 44px); }
      .tns-text-and-images-list .tns-text-and-images-list-blocks .tns-tai-block .tns-tai-block_content-wrapper .btn {
        display: inline-flex; }
    .tns-text-and-images-list .tns-text-and-images-list-blocks .tns-tai-block.image-to-right .tns-tai-block_image-wrapper {
      order: 2; }
      @media only screen and (max-width: 768px) {
        .tns-text-and-images-list .tns-text-and-images-list-blocks .tns-tai-block.image-to-right .tns-tai-block_image-wrapper {
          order: 1; } }
      .tns-text-and-images-list .tns-text-and-images-list-blocks .tns-tai-block.image-to-right .tns-tai-block_image-wrapper .tns-tai-block_image--secondary {
        position: absolute;
        left: unset;
        right: 0;
        top: 0;
        max-width: 360px;
        z-index: 1;
        transform: translate(20%, -70%); }
        @media only screen and (max-device-width: 1440px) {
          .tns-text-and-images-list .tns-text-and-images-list-blocks .tns-tai-block.image-to-right .tns-tai-block_image-wrapper .tns-tai-block_image--secondary {
            transform: translate(40%, -50%); } }
        @media only screen and (max-width: 768px) {
          .tns-text-and-images-list .tns-text-and-images-list-blocks .tns-tai-block.image-to-right .tns-tai-block_image-wrapper .tns-tai-block_image--secondary {
            transform: translate(50%, -50%); } }
    .tns-text-and-images-list .tns-text-and-images-list-blocks .tns-tai-block.image-to-right .tns-tai-block_content-wrapper {
      order: 1; }
      @media only screen and (max-width: 768px) {
        .tns-text-and-images-list .tns-text-and-images-list-blocks .tns-tai-block.image-to-right .tns-tai-block_content-wrapper {
          order: 2; } }

@media only screen and (max-width: 768px) {
  .template-index .tns-tai-block:nth-child(2) .tns-tai-block_image-wrapper .tns-tai-block_image--secondary {
    transform: translate(-20%, -78%) !important; } }
@media only screen and (max-width: 768px) {
  .template-index .tns-tai-block:nth-child(3) .tns-tai-block_image-wrapper .tns-tai-block_image--primary {
    transform: scale(1.1) translate(19%, 0%) !important; } }
@media only screen and (max-width: 768px) {
  .template-index .tns-tai-block:nth-child(3) .tns-tai-block_image-wrapper .tns-tai-block_image--secondary {
    transform: translate(-15%, -59%) !important; } }

@media only screen and (max-width: 768px) {
  .tns-cta-with-images-wrapper {
    padding-top: 140px;
    margin-top: -140px;
    overflow: inherit; } }
.tns-cta-with-images-wrapper .tns-cta-with-images {
  position: relative;
  padding-bottom: 5rem; }
  @media only screen and (max-width: 768px) {
    .tns-cta-with-images-wrapper .tns-cta-with-images {
      padding-top: 60%;
      padding-bottom: 0; } }
  @media only screen and (max-width: 768px) {
    .tns-cta-with-images-wrapper .tns-cta-with-images.extra-padding-mobile {
      padding-top: 23rem; } }
  .tns-cta-with-images-wrapper .tns-cta-with-images .tns-cta-with-images__content-wrapper {
    max-width: 540px;
    margin: 0 auto;
    text-align: center; }
    @media only screen and (max-width: 768px) {
      .tns-cta-with-images-wrapper .tns-cta-with-images .tns-cta-with-images__content-wrapper {
        position: relative;
        z-index: 5; } }
    .tns-cta-with-images-wrapper .tns-cta-with-images .tns-cta-with-images__content-wrapper .h2 {
      font-family: var(--typeHeaderPrimary);
      font-size: calc(var(--typeHeaderSize) - 44px);
      line-height: calc(var(--typeHeaderSize) - 36px); }
    .tns-cta-with-images-wrapper .tns-cta-with-images .tns-cta-with-images__content-wrapper .btn {
      display: inline-flex; }
  .tns-cta-with-images-wrapper .tns-cta-with-images .tns-cta-with-images__image-left-wrapper {
    position: absolute;
    top: 40%;
    left: 0;
    max-width: 550px;
    transform: translateX(-5%);
    width: 26vw; }
    .tns-cta-with-images-wrapper .tns-cta-with-images .tns-cta-with-images__image-left-wrapper img {
      border-radius: 24px; }
    @media only screen and (max-width: 768px) {
      .tns-cta-with-images-wrapper .tns-cta-with-images .tns-cta-with-images__image-left-wrapper {
        display: none; } }
    .tns-cta-with-images-wrapper .tns-cta-with-images .tns-cta-with-images__image-left-wrapper .tns-cta-with-images__image-left {
      position: relative;
      z-index: 2; }
    .tns-cta-with-images-wrapper .tns-cta-with-images .tns-cta-with-images__image-left-wrapper .tns-cta-with-images__image-left-corner {
      position: absolute;
      right: 0;
      bottom: 0;
      max-width: 180px;
      z-index: 1;
      transform: translate(50%, 50%); }
  .tns-cta-with-images-wrapper .tns-cta-with-images .tns-cta-with-images__image-right-wrapper {
    position: absolute;
    top: 65%;
    right: 8%;
    max-width: 404px;
    width: 21vw; }
    @media only screen and (max-width: 768px) {
      .tns-cta-with-images-wrapper .tns-cta-with-images .tns-cta-with-images__image-right-wrapper {
        top: 7rem;
        left: 20px;
        max-width: 65%;
        width: auto; } }
    .tns-cta-with-images-wrapper .tns-cta-with-images .tns-cta-with-images__image-right-wrapper img {
      border-radius: 24px; }
    .tns-cta-with-images-wrapper .tns-cta-with-images .tns-cta-with-images__image-right-wrapper .tns-cta-with-images__image-right {
      position: relative;
      z-index: 2; }
    .tns-cta-with-images-wrapper .tns-cta-with-images .tns-cta-with-images__image-right-wrapper .tns-cta-with-images__image-right-corner {
      position: absolute;
      right: 0;
      top: 0;
      max-width: 340px;
      z-index: 1;
      transform: translate(50%, -60%); }
      @media only screen and (max-width: 768px) {
        .tns-cta-with-images-wrapper .tns-cta-with-images .tns-cta-with-images__image-right-wrapper .tns-cta-with-images__image-right-corner {
          max-width: 80%;
          transform: translate(50%, -70%); } }

@media only screen and (max-width: 768px) {
  .tns-text-cols-bottom-wrapper {
    overflow: visible !important;
    padding-bottom: 20%; } }
.tns-text-cols-bottom-wrapper .tns-card-parent {
  padding: 0 20px; }

@media only screen and (max-width: 768px) {
  .tns-text-cols-bottom {
    margin-top: 20px;
    margin-bottom: 20px; } }
@media only screen and (max-width: 768px) {
  .tns-text-cols-bottom > .page-width {
    padding-left: 0 !important;
    padding-right: 0 !important; } }
.tns-text-cols-bottom > .page-width .rte-setting p {
  font-size: calc(var(--typeBaseSize) - 1px); }
@media only screen and (max-width: 768px) {
  .tns-text-cols-bottom .mobile-overflow-scroller-wrap {
    position: relative;
    overflow: hidden; } }
@media only screen and (max-width: 768px) {
  .tns-text-cols-bottom .mobile-overflow-scroller-wrap .mobile-overflow-scroller {
    position: relative;
    overflow: hidden;
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
    scroll-padding: 0 20px;
    padding-top: 20px;
    padding-bottom: 20px;
    direction: ltr; }
    .tns-text-cols-bottom .mobile-overflow-scroller-wrap .mobile-overflow-scroller::-webkit-scrollbar {
      display: none; } }
@media only screen and (max-width: 768px) {
  .tns-text-cols-bottom .mobile-overflow-scroller-wrap .mobile-overflow-scroller .grid {
    display: flex;
    flex-wrap: nowrap;
    margin-left: 0;
    margin-right: 0px;
    padding-right: 20px;
    gap: 20px; } }
@media only screen and (max-width: 768px) {
  .tns-text-cols-bottom .mobile-overflow-scroller-wrap .mobile-overflow-scroller .grid:after {
    content: "";
    flex: auto;
    padding-left: 1px; } }
@media only screen and (max-width: 768px) {
  .tns-text-cols-bottom .mobile-overflow-scroller-wrap .mobile-overflow-scroller .grid .grid__item {
    flex: 1 0 285px;
    scroll-snap-align: center;
    scroll-snap-stop: always;
    padding: 30px;
    background-color: #fff;
    box-shadow: 0px 6px 24px rgba(0, 0, 0, 0.1);
    border-radius: 24px; } }
  @media only screen and (max-width: 768px) and (max-width: 768px) {
    .tns-text-cols-bottom .mobile-overflow-scroller-wrap .mobile-overflow-scroller .grid .grid__item {
      flex: 1 0 300px; } }
@media only screen and (max-width: 768px) {
  .tns-text-cols-bottom .mobile-overflow-scroller-wrap .mobile-overflow-scroller .grid .grid__item:first-child {
    margin-left: 40px; } }
@media only screen and (max-width: 768px) {
  .tns-text-cols-bottom .mobile-overflow-scroller-wrap .mobile-overflow-scroller .grid .grid__item:last-child {
    margin-bottom: 30px;
    margin-right: 40px; } }
.tns-text-cols-bottom .mobile-overflow-scroller-wrap .mobile-overflow-scroller .grid .grid__item .tns-tai-block_number {
  position: relative;
  width: 48px;
  height: 48px;
  background-color: #eef7f7;
  border: 2px solid #c2e7ea;
  border-radius: 50%;
  margin-bottom: 20px;
  margin-left: auto;
  margin-right: auto; }
  .tns-text-cols-bottom .mobile-overflow-scroller-wrap .mobile-overflow-scroller .grid .grid__item .tns-tai-block_number span {
    position: absolute;
    top: 50%;
    left: 50%;
    font-size: calc(var(--typeBaseSize) + 6px);
    color: #26cad3;
    transform: translate(-50%, -50%); }
.tns-text-cols-bottom .grid .h4 {
  font-family: var(--typeHeaderPrimary);
  font-size: calc(var(--typeBaseSize) + 4px);
  line-height: calc(var(--typeBaseSize) + 10px); }
.tns-text-cols-bottom .tns-text-cols_bottom-section_wrapper {
  display: flex;
  justify-content: center;
  gap: 5%;
  padding-top: 40px;
  padding-bottom: 40px; }
  @media only screen and (max-width: 768px) {
    .tns-text-cols-bottom .tns-text-cols_bottom-section_wrapper {
      flex-wrap: wrap;
      padding-top: 0; } }
  .tns-text-cols-bottom .tns-text-cols_bottom-section_wrapper > div {
    display: flex;
    gap: 10px;
    align-items: center; }
    @media only screen and (max-width: 768px) {
      .tns-text-cols-bottom .tns-text-cols_bottom-section_wrapper > div {
        flex: 0 1 46%;
        flex-direction: column;
        margin-bottom: 25px; } }
    .tns-text-cols-bottom .tns-text-cols_bottom-section_wrapper > div .tns-tcb-image_wrapper {
      flex-shrink: 0; }
      @media only screen and (max-width: 768px) {
        .tns-text-cols-bottom .tns-text-cols_bottom-section_wrapper > div .tns-tcb-image_wrapper {
          flex: 0 1 100%;
          align-self: center; } }
      .tns-text-cols-bottom .tns-text-cols_bottom-section_wrapper > div .tns-tcb-image_wrapper img {
        width: 24px; }
    .tns-text-cols-bottom .tns-text-cols_bottom-section_wrapper > div .h5 {
      font-size: var(--typeBaseSize);
      line-height: calc(var(--typeBaseSize) + 6px);
      margin-bottom: 0; }
      @media only screen and (max-width: 768px) {
        .tns-text-cols-bottom .tns-text-cols_bottom-section_wrapper > div .h5 {
          flex: 0 1 100%;
          align-self: center;
          text-align: center; } }

@media only screen and (max-width: 768px) {
  .tns-reviews {
    margin-top: 0;
    margin-bottom: 0; } }
.tns-reviews .tns-reviews-grid {
  display: flex;
  flex-wrap: nowrap;
  gap: 20px;
  padding-top: 40px;
  padding-bottom: 40px; }
  @media only screen and (max-width: 768px) {
    .tns-reviews .tns-reviews-grid {
      overflow-x: auto;
      scroll-snap-type: x mandatory;
      -webkit-overflow-scrolling: touch; }
      .tns-reviews .tns-reviews-grid::-webkit-scrollbar {
        display: none; } }
  @media only screen and (max-width: 768px) {
    .tns-reviews .tns-reviews-grid:after {
      content: "";
      flex: auto;
      padding-left: 1px; } }
  .tns-reviews .tns-reviews-grid .tns-review-block-item {
    position: relative;
    flex: 0 0 20%;
    background-color: white;
    box-shadow: 0px 6px 24px rgba(0, 0, 0, 0.1);
    border-radius: 24px;
    overflow: hidden;
    padding-bottom: 80px; }
    @media only screen and (max-width: 768px) {
      .tns-reviews .tns-reviews-grid .tns-review-block-item {
        flex: 1 0 300px;
        scroll-snap-align: center;
        scroll-snap-stop: always; } }
    @media only screen and (max-width: 768px) {
      .tns-reviews .tns-reviews-grid .tns-review-block-item:first-child {
        margin-left: 30px; } }
    @media only screen and (max-width: 768px) {
      .tns-reviews .tns-reviews-grid .tns-review-block-item:last-child {
        margin-right: 30px; } }
    .tns-reviews .tns-reviews-grid .tns-review-block-item .tns-review-block-item_image-wrapper {
      margin-bottom: 0px; }
    .tns-reviews .tns-reviews-grid .tns-review-block-item .tns-review-block-item-stars {
      display: flex;
      justify-content: center;
      gap: 4px;
      padding-top: 40px;
      padding-bottom: 20px; }
      .tns-reviews .tns-reviews-grid .tns-review-block-item .tns-review-block-item-stars span {
        width: 17px;
        height: 16px;
        background-image: url("//tomandsawyer.com/cdn/shop/t/54/assets/review-star.svg?v=66733831679145158601764015711");
        background-repeat: no-repeat; }
    .tns-reviews .tns-reviews-grid .tns-review-block-item .tns-review-block-item-body-text {
      max-width: 80%;
      padding-left: 10px;
      padding-right: 10px;
      margin: 0 auto; }
      .tns-reviews .tns-reviews-grid .tns-review-block-item .tns-review-block-item-body-text > * {
        text-align: center; }
      .tns-reviews .tns-reviews-grid .tns-review-block-item .tns-review-block-item-body-text.special-text > * {
        font-family: var(--typeHeaderPrimary);
        font-size: calc(var(--typeBaseSize) + 4px); }
    .tns-reviews .tns-reviews-grid .tns-review-block-item .tns-review-block-item-meta {
      position: absolute;
      width: 100%;
      left: 0;
      bottom: 20px;
      padding-left: 20px;
      padding-right: 20px;
      margin: 0 auto; }
      .tns-reviews .tns-reviews-grid .tns-review-block-item .tns-review-block-item-meta .tns-review-author {
        font-size: calc(var(--typeBaseSize) - 5px);
        letter-spacing: 0.8px;
        font-weight: bold;
        text-transform: uppercase;
        color: #038399;
        text-align: center; }

.site-footer__section--newsletter {
  background-color: transparent;
  margin-bottom: 0;
  padding-bottom: 0; }
  @media only screen and (max-width: 768px) {
    .site-footer__section--newsletter {
      padding-top: 90%;
      overflow-x: hidden; } }
  .site-footer__section--newsletter .site-footer__section--newsletter-inner {
    position: relative;
    background-color: #fff;
    color: #034956;
    padding: 80px 0; }
    @media only screen and (max-width: 768px) {
      .site-footer__section--newsletter .site-footer__section--newsletter-inner {
        padding-bottom: 20px; } }
    .site-footer__section--newsletter .site-footer__section--newsletter-inner .striped-bg {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      opacity: 0.4; }
    .site-footer__section--newsletter .site-footer__section--newsletter-inner > .page-width {
      position: relative;
      z-index: 1; }
    .site-footer__section--newsletter .site-footer__section--newsletter-inner .h2 {
      font-family: var(--typeHeaderPrimary); }
    .site-footer__section--newsletter .site-footer__section--newsletter-inner .rte--block {
      max-width: 450px;
      margin-left: auto;
      margin-right: auto;
      margin-bottom: 40px; }
      .site-footer__section--newsletter .site-footer__section--newsletter-inner .rte--block > * {
        font-size: calc(var(--typeBaseSize) - 1px);
        line-height: calc(var(--typeBaseSize) + 6px); }
        @media only screen and (max-width: 768px) {
          .site-footer__section--newsletter .site-footer__section--newsletter-inner .rte--block > * {
            font-size: calc(var(--typeBaseSize) - 2px);
            line-height: calc(var(--typeBaseSize) + 5px); } }
    .site-footer__section--newsletter .site-footer__section--newsletter-inner .newsletter-form-group__input {
      font-family: var(--typeHeaderPrimary);
      padding: 10px 45px 10px 20px;
      border: 2px solid #26CAD3;
      border-radius: 8px;
      background-color: #fff; }
    .site-footer__section--newsletter .site-footer__section--newsletter-inner .newsletter-form-group__submit {
      padding-right: 15px; }
      .site-footer__section--newsletter .site-footer__section--newsletter-inner .newsletter-form-group__submit svg {
        display: inline-block;
        vertical-align: middle; }
        .site-footer__section--newsletter .site-footer__section--newsletter-inner .newsletter-form-group__submit svg .filled-arrow__circle {
          fill: #F26722; }
        .site-footer__section--newsletter .site-footer__section--newsletter-inner .newsletter-form-group__submit svg .filled-arrow__arrow {
          fill: #fff; }
    .site-footer__section--newsletter .site-footer__section--newsletter-inner .site-footer__section--newsletter-image {
      position: absolute;
      overflow: hidden; }
      .site-footer__section--newsletter .site-footer__section--newsletter-inner .site-footer__section--newsletter-image.site-footer__section--newsletter-image_1 {
        top: 0;
        left: 0;
        transform: translate(-20%, -50%);
        max-width: 208px; }
        @media only screen and (max-width: 768px) {
          .site-footer__section--newsletter .site-footer__section--newsletter-inner .site-footer__section--newsletter-image.site-footer__section--newsletter-image_1 {
            max-width: 50%;
            transform: translate(-5%, -180%); } }
      .site-footer__section--newsletter .site-footer__section--newsletter-inner .site-footer__section--newsletter-image.site-footer__section--newsletter-image_2 {
        top: 15%;
        left: 15%;
        max-width: 162px; }
        @media only screen and (max-width: 768px) {
          .site-footer__section--newsletter .site-footer__section--newsletter-inner .site-footer__section--newsletter-image.site-footer__section--newsletter-image_2 {
            top: 0;
            left: unset;
            right: 0;
            transform: translate(6%, -210%);
            width: 37%; } }
      .site-footer__section--newsletter .site-footer__section--newsletter-inner .site-footer__section--newsletter-image.site-footer__section--newsletter-image_3 {
        left: 3.5%;
        bottom: 0;
        max-width: 175px;
        border-radius: 16px 16px 0 0; }
        @media only screen and (max-width: 768px) {
          .site-footer__section--newsletter .site-footer__section--newsletter-inner .site-footer__section--newsletter-image.site-footer__section--newsletter-image_3 {
            left: 50%;
            top: 0;
            bottom: unset;
            max-width: 175px;
            border-radius: 16px;
            width: 43%;
            transform: translate(-41%, -94%); } }
      .site-footer__section--newsletter .site-footer__section--newsletter-inner .site-footer__section--newsletter-image.site-footer__section--newsletter-image_4 {
        top: 0;
        right: 0;
        transform: translate(20%, -50%);
        max-width: 270px; }
        @media only screen and (max-width: 768px) {
          .site-footer__section--newsletter .site-footer__section--newsletter-inner .site-footer__section--newsletter-image.site-footer__section--newsletter-image_4 {
            display: none; } }
      .site-footer__section--newsletter .site-footer__section--newsletter-inner .site-footer__section--newsletter-image.site-footer__section--newsletter-image_5 {
        top: 20%;
        right: 15%;
        max-width: 148px; }
        @media only screen and (max-width: 768px) {
          .site-footer__section--newsletter .site-footer__section--newsletter-inner .site-footer__section--newsletter-image.site-footer__section--newsletter-image_5 {
            top: 0;
            left: 0;
            right: unset;
            width: 30%;
            transform: translate(-15%, -50%); } }
      .site-footer__section--newsletter .site-footer__section--newsletter-inner .site-footer__section--newsletter-image.site-footer__section--newsletter-image_6 {
        right: 2%;
        bottom: 4%;
        max-width: 135px; }
        @media only screen and (max-width: 768px) {
          .site-footer__section--newsletter .site-footer__section--newsletter-inner .site-footer__section--newsletter-image.site-footer__section--newsletter-image_6 {
            width: 30%;
            top: 0;
            right: 0;
            bottom: unset;
            transform: translate(25%, -28%); } }

.tns-image-n-text-about.about-text-image .feature-row__text {
  flex: 0 1 50%; }
  .tns-image-n-text-about.about-text-image .feature-row__text .feature-row__text {
    min-width: 50%;
    flex: 0 1 50%; }
@media only screen and (max-width: 768px) {
  .tns-image-n-text-about .feature-row .feature-row__item {
    order: 2; } }
@media only screen and (max-width: 768px) {
  .tns-image-n-text-about .feature-row .feature-row__item.feature-row__text {
    text-align: center !important;
    order: 1;
    margin-bottom: 50px;
    padding-top: 0; } }
.tns-image-n-text-about .feature-row .feature-row__item .image-wrap img {
  border-radius: 24px; }
.tns-image-n-text-about .subheading {
  font-weight: 600;
  color: #26CAD3; }
.tns-image-n-text-about .h2 {
  font-family: var(--typeHeaderPrimary);
  font-size: calc(var(--typeHeaderSize) - 44px);
  line-height: 1.25; }
.tns-image-n-text-about .rte > * {
  font-size: calc(var(--typeBaseSize) - 1px);
  line-height: calc(var(--typeBaseSize) + 8px); }
  @media only screen and (max-width: 768px) {
    .tns-image-n-text-about .rte > * {
      font-size: calc(var(--typeBaseSize) - 2px);
      line-height: calc(var(--typeBaseSize) + 4px); } }
.tns-image-n-text-about .btn {
  position: relative;
  padding: 0;
  border: 0;
  border-radius: 0;
  font-size: calc(var(--typeBaseSize) + 4px);
  color: #034956; }
  .tns-image-n-text-about .btn:after {
    content: '';
    width: 100%;
    height: 2px;
    position: absolute;
    left: 0;
    top: 100%;
    margin-top: 5px;
    background-color: #26CAD3;
    transition: var(--colorBtnPrimaryBgTransition); }
  .tns-image-n-text-about .btn:hover:after {
    background-color: #F26722; }

@media only screen and (max-width: 768px) {
  #shopify-section-footer {
    overflow: inherit; } }
@media only screen and (max-width: 768px) {
  #shopify-section-footer > .site-footer {
    margin-top: 0; } }
#shopify-section-footer > .site-footer .site-footer__section--bottom {
  padding-top: 60px;
  padding-bottom: 10px;
  margin-top: 0;
  background-color: #034956;
  border-top: 10px solid #fff; }
  @media only screen and (max-width: 768px) {
    #shopify-section-footer > .site-footer .site-footer__section--bottom {
      padding-top: 40px; } }
  #shopify-section-footer > .site-footer .site-footer__section--bottom h2 {
    text-align: left;
    font-family: var(--typeHeaderPrimary);
    font-size: calc(var(--typeHeaderSize) - 44px);
    line-height: calc(var(--typeHeaderSize) - 38px);
    color: #F6FAF7; }
  #shopify-section-footer > .site-footer .site-footer__section--bottom .footer__social {
    text-align: left; }
    @media only screen and (max-width: 768px) {
      #shopify-section-footer > .site-footer .site-footer__section--bottom .footer__social {
        margin-top: 20px; } }
    #shopify-section-footer > .site-footer .site-footer__section--bottom .footer__social li:first-child {
      margin-left: 0; }
    #shopify-section-footer > .site-footer .site-footer__section--bottom .footer__social li a {
      padding: 0;
      border: none;
      color: #F6FAF7;
      margin-right: 10px; }
  #shopify-section-footer > .site-footer .site-footer__section--bottom .site-footer__menus {
    position: relative; }
    @media only screen and (max-width: 768px) {
      #shopify-section-footer > .site-footer .site-footer__section--bottom .site-footer__menus {
        padding-top: 0; } }
    @media only screen and (max-width: 768px) {
      #shopify-section-footer > .site-footer .site-footer__section--bottom .site-footer__menus:before {
        content: '';
        display: block;
        height: 1px;
        background-color: #fff;
        margin-bottom: 20px; } }
    #shopify-section-footer > .site-footer .site-footer__section--bottom .site-footer__menus .site-footer__linklist {
      text-align: left; }
      @media only screen and (max-width: 768px) {
        #shopify-section-footer > .site-footer .site-footer__section--bottom .site-footer__menus .site-footer__linklist {
          margin-bottom: 0; } }
      #shopify-section-footer > .site-footer .site-footer__section--bottom .site-footer__menus .site-footer__linklist li a {
        font-family: var(--typeHeaderPrimary);
        font-size: var(--typeBaseSize);
        color: #F6FAF7; }
        @media only screen and (max-width: 768px) {
          #shopify-section-footer > .site-footer .site-footer__section--bottom .site-footer__menus .site-footer__linklist li a {
            padding-left: 0;
            padding-right: 0; } }
  #shopify-section-footer > .site-footer .site-footer__section--bottom .site-footer__copyright {
    display: flex;
    text-align: left;
    opacity: 0.7;
    color: #F6FAF7;
    justify-content: flex-end;
    gap: 28px;
    padding-top: 40px; }
    @media only screen and (max-width: 768px) {
      #shopify-section-footer > .site-footer .site-footer__section--bottom .site-footer__copyright {
        flex-wrap: wrap;
        gap: 10px; } }
    #shopify-section-footer > .site-footer .site-footer__section--bottom .site-footer__copyright span {
      display: flex;
      gap: 5px;
      font-size: calc(var(--typeBaseSize) - 5px);
      padding: 0; }
      @media only screen and (max-width: 768px) {
        #shopify-section-footer > .site-footer .site-footer__section--bottom .site-footer__copyright span {
          flex-basis: 100%;
          order: 2; } }
    @media only screen and (max-width: 768px) {
      #shopify-section-footer > .site-footer .site-footer__section--bottom .site-footer__copyright > div {
        flex-basis: 100%;
        order: 1; } }
    #shopify-section-footer > .site-footer .site-footer__section--bottom .site-footer__copyright > div ul {
      display: flex;
      gap: 28px; }
      #shopify-section-footer > .site-footer .site-footer__section--bottom .site-footer__copyright > div ul li a {
        font-size: calc(var(--typeBaseSize) - 5px); }

@media only screen and (max-width: 768px) {
  .tns-card-wrapper-section > .index-section {
    margin-top: 20px;
    margin-bottom: 0; } }

@media only screen and (max-width: 768px) {
  .h1 {
    font-size: calc(var(--typeHeaderSize) - 44px) !important;
    line-height: calc(var(--typeHeaderSize) - 40px) !important; } }

@media only screen and (max-width: 768px) {
  .h2 {
    font-size: calc(var(--typeHeaderSize) - 54px) !important;
    line-height: calc(var(--typeHeaderSize) - 50px) !important; } }

@media only screen and (max-width: 768px) {
  .tns-timeline-wrapper {
    overflow: hidden; } }

.tns-timeline {
  position: relative; }
  @media only screen and (max-width: 768px) {
    .tns-timeline {
      margin-top: 0;
      margin-bottom: 0; } }
  .tns-timeline .section-header .section-header__title {
    font-size: var(--typeBaseSize);
    line-height: calc(var(--typeBaseSize) + 6px);
    font-family: var(--typeBasePrimary), var(--typeBaseFallback);
    font-weight: 600;
    letter-spacing: 0.05em;
    text-transform: uppercase; }
  .tns-timeline .tns-timeline-grid {
    position: relative;
    display: flex;
    flex-wrap: nowrap;
    gap: 30px;
    padding-top: 40px;
    padding-bottom: 40px;
    z-index: 1; }
    @media only screen and (max-width: 768px) {
      .tns-timeline .tns-timeline-grid {
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch; }
        .tns-timeline .tns-timeline-grid::-webkit-scrollbar {
          display: none; } }
    @media only screen and (max-width: 768px) {
      .tns-timeline .tns-timeline-grid:after {
        content: "";
        flex: auto;
        padding-left: 1px; } }
    .tns-timeline .tns-timeline-grid .tns-timeline-block-item_year {
      position: relative;
      flex: 0 0 28%;
      background-color: #FFF;
      box-shadow: 0px 6px 24px rgba(0, 0, 0, 0.1);
      border-radius: 24px;
      z-index: 1;
      padding-bottom: 2rem; }
      @media only screen and (max-width: 768px) {
        .tns-timeline .tns-timeline-grid .tns-timeline-block-item_year {
          flex: 1 0 300px;
          scroll-snap-align: center;
          scroll-snap-stop: always; } }
      .tns-timeline .tns-timeline-grid .tns-timeline-block-item_year:first-child {
        margin-left: 60px; }
        @media only screen and (max-width: 768px) {
          .tns-timeline .tns-timeline-grid .tns-timeline-block-item_year:first-child {
            margin-left: 30px; } }
      .tns-timeline .tns-timeline-grid .tns-timeline-block-item_year:last-child {
        margin-right: 60px; }
        @media only screen and (max-width: 768px) {
          .tns-timeline .tns-timeline-grid .tns-timeline-block-item_year:last-child {
            margin-right: 30px; } }
      .tns-timeline .tns-timeline-grid .tns-timeline-block-item_year .tns-timeline-year {
        position: absolute;
        top: -25px;
        left: 50%;
        transform: translateX(-50%);
        background-color: #E2F1F2;
        padding: 10px 20px;
        border: 1px solid #26CAD3;
        font-size: 32px;
        line-height: 1;
        font-family: var(--typeHeaderPrimary);
        color: #034956;
        text-align: center;
        border-radius: 34px; }
      .tns-timeline .tns-timeline-grid .tns-timeline-block-item_year .tns-timeline-block-item_image-wrapper {
        margin-bottom: 20px;
        overflow: hidden;
        border-radius: 24px 24px 0 0; }
      .tns-timeline .tns-timeline-grid .tns-timeline-block-item_year .tns-timeline-block-item-body-text {
        max-width: 80%;
        padding-left: 10px;
        padding-right: 10px;
        margin: 0 auto; }
        .tns-timeline .tns-timeline-grid .tns-timeline-block-item_year .tns-timeline-block-item-body-text > * {
          text-align: center; }
  .tns-timeline .card-corner-img {
    position: absolute;
    z-index: 0; }

.tns-our-team .tns-our-team--content-wrapper {
  max-width: 650px;
  margin: 0 auto 100px;
  text-align: center; }
  @media only screen and (max-width: 768px) {
    .tns-our-team .tns-our-team--content-wrapper {
      padding: 0 2rem; } }
  .tns-our-team .tns-our-team--content-wrapper .subheading {
    font-size: var(--typeBaseSize);
    line-height: calc(var(--typeBaseSize) + 6px);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em; }
  .tns-our-team .tns-our-team--content-wrapper .h2 {
    font-family: var(--typeHeaderPrimary), var(--typeBaseFallback);
    font-size: calc(var(--typeHeaderSize) - 44px);
    line-height: 1.25; }
  .tns-our-team .tns-our-team--content-wrapper .rte-setting > * {
    font-size: calc(var(--typeBaseSize) - 1px);
    line-height: calc(var(--typeBaseSize) + 8px); }
@media only screen and (max-width: 768px) {
  .tns-our-team .tns-our-team--members-wrapper {
    margin-left: calc(-1 * var(--gutter));
    margin-right: calc(-1 * var(--gutter));
    width: 100vw;
    max-width: 100vw; } }
@media only screen and (max-width: 768px) {
  .tns-our-team .tns-our-team--members-wrapper .mobile-overflow-scroller-wrap {
    position: relative;
    overflow: hidden; } }
@media only screen and (max-width: 768px) {
  .tns-our-team .tns-our-team--members-wrapper .mobile-overflow-scroller-wrap .mobile-overflow-scroller {
    position: relative;
    overflow: hidden;
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
    direction: ltr; }
    .tns-our-team .tns-our-team--members-wrapper .mobile-overflow-scroller-wrap .mobile-overflow-scroller::-webkit-scrollbar {
      display: none; } }
.tns-our-team .tns-our-team--members-wrapper .mobile-overflow-scroller-wrap .mobile-overflow-scroller .tns-members-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 30px; }
  @media only screen and (min-width: 769px) {
    .tns-our-team .tns-our-team--members-wrapper .mobile-overflow-scroller-wrap .mobile-overflow-scroller .tns-members-grid {
      justify-content: center; } }
  @media only screen and (max-width: 768px) {
    .tns-our-team .tns-our-team--members-wrapper .mobile-overflow-scroller-wrap .mobile-overflow-scroller .tns-members-grid {
      flex-wrap: nowrap; } }
  @media only screen and (max-width: 768px) {
    .tns-our-team .tns-our-team--members-wrapper .mobile-overflow-scroller-wrap .mobile-overflow-scroller .tns-members-grid:after {
      content: "";
      flex: auto;
      padding-left: 1px; } }
  .tns-our-team .tns-our-team--members-wrapper .mobile-overflow-scroller-wrap .mobile-overflow-scroller .tns-members-grid .tns-member-item {
    flex: 0 1 23.15%;
    margin-bottom: 20px;
    text-align: center; }
    @media only screen and (max-width: 768px) {
      .tns-our-team .tns-our-team--members-wrapper .mobile-overflow-scroller-wrap .mobile-overflow-scroller .tns-members-grid .tns-member-item {
        flex: 0 0 200px;
        scroll-snap-align: center;
        scroll-snap-stop: always; } }
    @media only screen and (max-width: 768px) {
      .tns-our-team .tns-our-team--members-wrapper .mobile-overflow-scroller-wrap .mobile-overflow-scroller .tns-members-grid .tns-member-item:first-child {
        margin-left: 30px; } }
    @media only screen and (max-width: 768px) {
      .tns-our-team .tns-our-team--members-wrapper .mobile-overflow-scroller-wrap .mobile-overflow-scroller .tns-members-grid .tns-member-item:last-child {
        margin-right: 30px; } }
    .tns-our-team .tns-our-team--members-wrapper .mobile-overflow-scroller-wrap .mobile-overflow-scroller .tns-members-grid .tns-member-item .tns-member-block-item_image-wrapper {
      border-radius: 24px;
      overflow: hidden;
      margin-bottom: 10px; }
    .tns-our-team .tns-our-team--members-wrapper .mobile-overflow-scroller-wrap .mobile-overflow-scroller .tns-members-grid .tns-member-item .tns-member-block-item_name {
      font-size: calc(var(--typeBaseSize) + 4px);
      line-height: calc(var(--typeBaseSize) + 10px);
      font-family: var(--typeHeaderPrimary), var(--typeBaseFallback);
      font-weight: 400;
      margin-bottom: 10px; }
    .tns-our-team .tns-our-team--members-wrapper .mobile-overflow-scroller-wrap .mobile-overflow-scroller .tns-members-grid .tns-member-item .tns-member-block-item_position {
      font-weight: 600;
      font-size: calc(var(--typeBaseSize) - 5px);
      line-height: var(--typeBaseSize);
      text-transform: uppercase;
      letter-spacing: 0.08em; }

.tns-text-with-images-blocks-wrapper {
  position: relative;
  overflow: hidden; }
  .tns-text-with-images-blocks-wrapper .tns-text-with-images--wrapper.with-extra-padding {
    padding-top: 10%;
    padding-bottom: 10%; }
  .tns-text-with-images-blocks-wrapper .tns-text-with-images--wrapper.width-525 .tns-text-with-images__content-wrapper {
    max-width: 525px !important; }
  .tns-text-with-images-blocks-wrapper .tns-text-with-images--wrapper .tns-text-with-images__content-wrapper {
    text-align: center;
    max-width: 650px;
    margin: 0 auto; }
    .tns-text-with-images-blocks-wrapper .tns-text-with-images--wrapper .tns-text-with-images__content-wrapper .subheading {
      font-size: var(--typeBaseSize);
      line-height: calc(var(--typeBaseSize) + 6px);
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: 0.05em; }
    .tns-text-with-images-blocks-wrapper .tns-text-with-images--wrapper .tns-text-with-images__content-wrapper .h2 {
      font-family: var(--typeHeaderPrimary), var(--typeBaseFallback);
      font-size: calc(var(--typeHeaderSize) - 44px);
      line-height: 1.25; }
    .tns-text-with-images-blocks-wrapper .tns-text-with-images--wrapper .tns-text-with-images__content-wrapper .rte-setting > * {
      font-size: calc(var(--typeBaseSize) - 1px);
      line-height: calc(var(--typeBaseSize) + 8px); }
    .tns-text-with-images-blocks-wrapper .tns-text-with-images--wrapper .tns-text-with-images__content-wrapper .btn {
      display: inline-flex;
      margin-left: auto;
      margin-right: auto; }
  .tns-text-with-images-blocks-wrapper .tns-text-with-images--wrapper.wide-content .tns-text-with-images__content-wrapper {
    max-width: 800px; }
    .tns-text-with-images-blocks-wrapper .tns-text-with-images--wrapper.wide-content .tns-text-with-images__content-wrapper .rte-setting {
      max-width: 650px;
      margin: 0 auto; }
  .tns-text-with-images-blocks-wrapper img {
    border-radius: 24px; }

.tns-card-wrapper-section .food-for-thought .tns-card-body > *,
.tns-card-wrapper-section .food-for-thought .tns-card-body a {
  font-family: var(--typeHeaderPrimary);
  font-size: calc(var(--typeBaserSize) + 4px) !important;
  line-height: calc(var(--typeBaserSize) + 14px) !important; }
.tns-card-wrapper-section .food-for-thought .tns-card-body a {
  text-decoration: underline; }
  .tns-card-wrapper-section .food-for-thought .tns-card-body a:after {
    content: none; }

@media only screen and (max-width: 768px) {
  .tns-find-us {
    padding-top: 50px;
    padding-bottom: 80px; } }
.tns-find-us .page-width {
  overflow: unset; }
.tns-find-us .feature-row__item {
  position: relative; }
  .tns-find-us .feature-row__item .image-wrap {
    position: relative;
    z-index: 1;
    border-radius: 24px; }
  .tns-find-us .feature-row__item .corner-img {
    position: absolute;
    z-index: 0; }
.tns-find-us .feature-row__text .h2 {
  font-family: var(--typeHeaderPrimary), var(--typeBaseFallback);
  font-size: calc(var(--typeHeaderSize) - 44px);
  line-height: 1.25; }
.tns-find-us .feature-row__text .location {
  position: relative;
  padding-left: 40px;
  font-family: var(--typeHeaderPrimary), var(--typeBaseFallback);
  font-size: calc(var(--typeBaseSize) + 3px);
  line-height: calc(var(--typeBaseSize) + 10px);
  margin-bottom: 20px; }
  .tns-find-us .feature-row__text .location a {
    text-decoration: underline; }
  .tns-find-us .feature-row__text .location:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 32px;
    height: 32px;
    background-image: url("//tomandsawyer.com/cdn/shop/t/54/assets/MapPin.svg?v=51509562660991719481764015712");
    background-repeat: no-repeat; }
.tns-find-us .feature-row__text .rte {
  margin-top: 20px; }
  .tns-find-us .feature-row__text .rte span {
    display: block; }
  .tns-find-us .feature-row__text .rte > * {
    font-family: var(--typeHeaderPrimary), var(--typeBaseFallback);
    font-size: calc(var(--typeBaseSize) + 3px);
    line-height: calc(var(--typeBaseSize) + 10px); }

@media only screen and (max-width: 768px) {
  .carousel-cell:first-child {
    margin-left: 30px; } }

@media only screen and (max-width: 768px) {
  .carousel-cell:last-child {
    margin-right: 30px; } }

.tns-slideshow {
  padding-bottom: 10%; }
  @media only screen and (max-width: 768px) {
    .tns-slideshow {
      margin-top: 40px;
      margin-bottom: 60px; } }
  .tns-slideshow .tns-flickity-slideshow .carousel-cell {
    width: 100%; }
    .tns-slideshow .tns-flickity-slideshow .carousel-cell img {
      border-radius: 24px; }
  .tns-slideshow .tns-flickity-slideshow .flickity-button {
    background-color: #fff;
    box-shadow: 0px 6px 24px rgba(0, 0, 0, 0.1); }
    .tns-slideshow .tns-flickity-slideshow .flickity-button.flickity-next {
      right: -20px; }
    .tns-slideshow .tns-flickity-slideshow .flickity-button.flickity-previous {
      left: -20px; }
    .tns-slideshow .tns-flickity-slideshow .flickity-button .flickity-button-icon {
      fill: #26CAD3; }
  .tns-slideshow .tns-flickity-slideshow .corner-img {
    position: absolute;
    z-index: 1;
    border-radius: 24px; }
    @media only screen and (max-width: 768px) {
      .tns-slideshow .tns-flickity-slideshow .corner-img {
        display: none; } }

.how-to-earn-section .page-width .grid .h4,
.tns-rewards-blocks .page-width .grid .h4 {
  font-size: calc(var(--typeHeaderSize) - 54px); }
.how-to-earn-section .page-width .grid .rte-setting > *,
.tns-rewards-blocks .page-width .grid .rte-setting > * {
  font-family: var(--typeHeaderPrimary);
  font-size: calc(var(--typeBaseSize) + 4px);
  line-height: calc(var(--typeBaseSize) + 10px); }

.how-to-earn-section {
  padding-bottom: 8%;
  position: relative;
  overflow: hidden; }
  .how-to-earn-section:after {
    content: '';
    position: absolute;
    top: 10%;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url("//tomandsawyer.com/cdn/shop/t/54/assets/stripe.svg?v=98891315502547727001764015712");
    opacity: 0.4;
    z-index: 0; }
  .how-to-earn-section .page-width {
    position: relative;
    z-index: 1; }
    .how-to-earn-section .page-width .section-header__title {
      font-family: var(--typeBasePrimary), var(--typeBaseFallback);
      font-size: var(--typeBaseSize);
      line-height: calc(var(--typeBaseSize) + 6px);
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: .05em;
      text-align: center; }
    .how-to-earn-section .page-width .grid .rte-setting {
      max-width: 300px;
      margin-left: auto;
      margin-right: auto; }
    .how-to-earn-section .page-width .tns-product-carousel__bottom-section {
      margin-top: 60px; }

@media only screen and (max-width: 768px) {
  .bottom-footer-block {
    padding: 60px 0 80px; } }

.hows-made .section-header__title {
  font-size: calc(var(--typeHeaderSize) - 44px); }

.main-page img {
  border-radius: 24px; }
.main-page .rte h1,
.main-page .rte h2,
.main-page .rte h3,
.main-page .rte h4 {
  font-family: var(--typeHeaderPrimary);
  font-weight: 400; }
  .main-page .rte h1 span,
  .main-page .rte h2 span,
  .main-page .rte h3 span,
  .main-page .rte h4 span {
    font-family: var(--typeBasePrimary);
    font-weight: 600;
    letter-spacing: 0.05em;
    text-transform: uppercase; }
.main-page .rte h1 {
  font-size: calc(var(--typeHeaderSize) - 44px);
  line-height: calc(var(--typeHeaderSize) - 36px); }
.main-page .rte h2 {
  font-size: calc(var(--typeHeaderSize) - 54px);
  line-height: 1.25; }
.main-page .rte h3 {
  font-size: calc(var(--typeBaseSize) + 4px);
  line-height: calc(var(--typeBaseSize) + 10px); }
.main-page .rte h4 {
  font-size: var(--typeBaseSize);
  line-height: calc(var(--typeBaseSize) - 6px); }
.main-page .rte li,
.main-page .rte p {
  font-size: calc(var(--typeBaseSize) - 1px);
  line-height: calc(var(--typeBaseSize) + 8px);
  font-weight: 400; }

.open-product-popup {
  cursor: pointer; }

/* Matt Tweaks */
.page-container {
  overflow-x: hidden; }

.tns-cta-with-images-wrapper .tns-cta-with-images .tns-cta-with-images__image-left-wrapper {
  top: 53%; }

.tns-cta-with-images-wrapper .tns-cta-with-images .tns-cta-with-images__image-left-wrapper .tns-cta-with-images__image-left-corner {
  transform: translate(72%, 25%); }

h1.section-header__title {
  font-size: calc(var(--typeHeaderSize) - 10px); }

h2, .h2 {
  line-height: 1.2; }

#RecoverPasswordForm h2 {
  font-size: calc(var(--typeHeaderSize)*.35); }

.tns-text-cols-bottom .tns-text-cols_bottom-section_wrapper > div .tns-tcb-image_wrapper img {
  width: 65px; }

.tns-product-carousel .tns-product-carousel__wrapper .tns-product-carousel__card div.product-description {
  min-height: 140px;
  font-family: 'Cooper BT Light';
  font-size: 16px; }

/* New Dog Cat Filter Buttons */
.tns-product-carousel .tns-product-carousel__btns .btn span {
  margin-left: 15px; }

.carousel-pet-btn {
  width: 45px;
  height: 45px;
  background-color: #fff;
  border-radius: 50px; }

.dog-btn {
  background-image: url("/cdn/shop/files/tom-sawyer-dog-stroke.png?v=1636662970");
  background-size: contain;
  transition: all ease-in .2s; }

.cat-btn {
  background-image: url("/cdn/shop/files/tom-sawyer-cat-stroke.png?v=1636662970");
  background-size: contain;
  transition: all ease-in .2s; }

.active .carousel-pet-btn {
  transition: all ease-in .2s;
  background-color: #EEF7F7;
  -webkit-box-shadow: inset 0 0 0 2px #24cad3;
  box-shadow: inset 0 0 0 2px #24cad3; }

@media only screen and (min-width: 769px) {
  .tns-product-carousel .tns-product-carousel__btns .btn:hover > .carousel-pet-btn,
  .dog-btn:hover,
  .cat-btn:hover,
  .active .carousel-pet-btn {
    width: 50px;
    height: 50px;
    background-color: #EEF7F7;
    -webkit-box-shadow: inset 0 0 0 2px #24cad3;
    box-shadow: inset 0 0 0 2px #24cad3;
    transition: all ease-in .2s; } }
/*-- MOBILE EDITS --*/
/* Carousel & Pet Buttons Mobile */
@media only screen and (max-width: 768px) {
  .tns-text-cols-bottom {
    margin-bottom: 0px; }

  .tns-product-carousel .tns-product-carousel__btns .btn:last-child {
    margin-left: 20px; }

  .tns-product-carousel-wrapper {
    padding-top: 10px; }

  .carousel-pet-btn {
    position: absolute;
    top: -35px; }

  .tns-product-carousel .tns-product-carousel__btns .btn {
    height: 50px;
    padding: 10px 25px;
    transform: none;
    transition: none; }

  .tns-product-carousel .tns-product-carousel__btns .btn span {
    margin-left: 0px; }

  .tns-product-carousel .tns-product-carousel__btns .btn:hover > .carousel-pet-btn {
    background-color: #EEF7F7;
    -webkit-box-shadow: inset 0 0 0 2px #24cad3;
    box-shadow: inset 0 0 0 2px #24cad3;
    transition: none; }

  .tns-product-carousel .tns-product-carousel__wrapper .carousel-cell {
    padding-top: 30px; }

  .tns-product-carousel .tns-product-carousel__wrapper .tns-product-carousel__card h3 {
    margin-top: 0px; } }
@media only screen and (max-width: 376px) {
  .tns-product-carousel .tns-product-carousel__btns .btn {
    padding: 10px 20px; } }
/* Science Mobile Images */
@media only screen and (max-width: 768px) {
  #shopify-section-template--15359197872358__1636041978ed4448cd.shopify-section {
    overflow-y: hidden !important; }

  #shopify-section-template--15359197872358__1636041978ed4448cd .card-corner-img {
    left: -110px !important;
    bottom: -140px !important; }

  #shopify-section-template--15359197872358__1636041749353a46c4.shopify-section {
    overflow-y: visible !important;
    padding-bottom: 0px; }

  #shopify-section-template--15359197872358__16360413721f9dff43.shopify-section {
    padding-top: 80px; }

  .template-page .tns-text-and-images-list .tns-text-and-images-list-blocks .tns-tai-block.image-to-right .tns-tai-block_image-wrapper .tns-tai-block_image--secondary {
    transform: translate(15%, -80%); } }
/* Footer Images Mobile */
@media only screen and (max-width: 768px) {
  #shopify-section-template--15359197610214__16337158822f109b8d .index-section {
    margin-bottom: 0px; } }
/* Modal Buttons */
@media only screen and (max-width: 768px) {
  .tns-product--popup .tns-product--wrapper .closePopup {
    top: 15px;
    right: 15px;
    width: 36px;
    height: 36px; }

  .flickity-prev-next-button {
    width: 36px;
    height: 36px; } }
/* Announcement & Header & Hero */
@media only screen and (max-width: 768px) {
  .announcement__wrapper {
    min-height: 25px !important; }
    .announcement__wrapper .announcement__text {
      font-size: 12px;
      letter-spacing: 2px;
      padding: 0 0 0.5rem !important;
      text-transform: none; }

  #partial-striped-bg {
    top: 50vh; }

  .image-wrap {
    background: transparent; }

  .homepage-top-section {
    margin: 0; }

  .homepage-logos {
    margin-bottom: 0px; }

  .homepage-logos > .page-width .mobile-overflow-scroller-wrap .mobile-overflow-scroller .logo-bar .logo-bar__item {
    margin-bottom: 0px; } }
@media only screen and (max-width: 374px) {
  .announcement__wrapper .announcement__text {
    font-size: 10px; } }
/* Misc Padding Mobile */
@media only screen and (max-width: 768px) {
  .tns-text-cols-bottom-wrapper {
    padding-bottom: 0px; } }
/* Homepage - Video Replacement with Static Image - Remove when we add a video back in */
.homepage-top-section .feature-row .feature-row__item.feature-row__item--overlap-video-image .video-square {
  background: transparent; }

@media only screen and (max-width: 768px) {
  .homepage-top-section .feature-row {
    margin-top: 0px; }

  .homepage-top-section .feature-row__text--right {
    padding-top: 20px; }

  /*
  .homepage-top-section .feature-row .feature-row__item.feature-row__item--overlap-video-image .video-square .img-square {
    display: block;
  }
  .homepage-top-section .feature-row .feature-row__item.feature-row__item--overlap-video-image .video-square .img-square {
    bottom: 0px;
    right: -40px;
    width: 165px;
    height: 165px;
    filter: none;
  }
  .homepage-top-section .feature-row .feature-row__item.feature-row__item--overlap-video-image .video-square .img-square .homepage-badge {
    width: 90px;
    bottom: 10px;
    left: -40px;
  } */
  .homepage-top-section .feature-row .feature-row__item.feature-row__item--overlap-video-image .video-square {
    padding-bottom: 84%; }

  .homepage-top-section .feature-row .feature-row__item.feature-row__text .rte* {
    font-size: 18px; }

  .homepage-top-section .feature-row .feature-row__item.feature-row__text .tns--primary-btn {
    margin-top: 36px; }

  #partial-striped-bg {
    display: none; } }
/* 13" Laptop */
@media (max-width: 1280px) and (min-width: 769px) {
  .tns-product--popup .tns-product--wrapper {
    max-height: 95vh; }

  .tns-product--popup .tns-product--wrapper .tns-product--wrapper_inner > div.tns-product--popup_slideshow .tns-product--popup_slideshow_inner .carousel-cell {
    min-height: 450px; } }
/*-- END MOBILE EDITS --*/
/* HP Video */
.homepage-top-section .feature-row .feature-row__item.feature-row__item--overlap-video-image .video-square {
  background: transparent;
  background-color: transparent; }

.video-square, .video-square .image-wrap {
  background: transparent;
  background-color: transparent; }

.slide-nav__overflow {
  z-index: 2147483650 !important; }

/* Default Intro Margin */
@media only screen and (min-width: 769px) {
  .default-page-header {
    margin-top: 0px;
    margin-bottom: 0px; } }
/* Large Intro Margin */
@media only screen and (min-width: 769px) {
  .our-kitchen {
    margin-bottom: 80px; } }
/* Small Into Margin */
@media only screen and (min-width: 769px) {
  .page-faq {
    margin-bottom: 0px; } }
/* No Into Margin */
@media only screen and (min-width: 769px) {
  .find-a-retailer {
    margin-bottom: -80px; } }
/* Account */
.subheading-account {
  font-weight: 600;
  color: #26cad3;
  font-size: .90em;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-bottom: 0px; }

.no-margin {
  margin-bottom: 0px;
  margin-top: 10px; }

.ts-blue {
  color: #26cad3; }

.account-actions {
  display: flex;
  width: auto;
  margin-bottom: 30px; }

.account-actions .btn {
  margin: 0px 15px 0px 0px; }

.account-actions .btn {
  border-bottom: transparent; }

@media only screen and (max-width: 768px) {
  .account-actions .btn {
    font-size: .85em; }

  .account-actions .btn {
    margin: 0px 5px 0px 0px; } }
#smile-ui-lite-container {
  z-index: 500 !important; }

/* Final Edits */
@media only screen and (min-width: 769px) {
  #shopify-section-template--15458174271718__163226591916752c4e > div {
    margin-top: -100px; }

  .vmp-cart-recommendations-item .vmp-item-description {
    min-height: 140px; } }
@media only screen and (max-width: 479px) {
  .tns-product-carousel__card {
    min-height: 537px !important; }

  .vmp-cart-recommendations-item .vmp-item-add-to-cart {
    font-size: 13px !important; }

  .vmp-cart-recommendations-item .vmp-item-icons {
    display: none !important; }

  #volt-meal-plan .vmp-cart-side-panel-body.is-subscription-flow {
    height: auto;
    padding-bottom: 30px; }

  .vmp-cart-mobile-header h2, .vmp-cart-recommendations h2 {
    font-size: 42px; } }
/* Meal plan questionnaire exit button - mobile only */
.vmp-exit-btn {
  display: none; }
  @media only screen and (max-width: 768px) {
    .vmp-exit-btn {
      display: flex;
      align-items: center;
      justify-content: center;
      position: absolute;
      right: 8px;
      top: 14px;
      transform: translateY(-50%);
      width: 32px;
      height: 32px;
      color: #383A35;
      text-decoration: none; }
      .vmp-exit-btn:hover {
        color: #034956; }
      .vmp-exit-btn svg {
        width: 14px;
        height: 14px; } }

.tns-timeline .overflow-scroll-wrap {
  z-index: 1; }

.fourohfour-page .tns-text-and-images-list-blocks {
  padding-top: 0px; }

/* Awtomatic */
.site-nav svg,
.site-nav .site-nav__item .icon-arrow {
  display: inline; }

.bundleapp-subscriptions-list__title {
  font-family: "Cooper BT Light" !important;
  font-size: 42px;
  color: #034956; }

#bundle-app *:not(button) {
  color: #383A35; }

.bundleapp-subscription-list-item, .bundle-card {
  background: #E2F2F2;
  color: #034956;
  border-color: transparent !important;
  border-radius: 12px; }

.bundleapp-subscription-list-item *,
.bundle-card * {
  color: #034956 !important; }

.bundleapp-subscriptions-list__link a {
  font-family: var(--typeHeaderPrimary);
  font-size: calc(var(--typeBaseSize) + 4px);
  color: #034956 !important; }

.bundleapp-subscription-list-item__subscription-total-price span {
  font-family: var(--typeHeaderPrimary);
  font-size: 1.5em;
  margin-bottom: 10px; }

#slide-panel .bundle-button,
#bundleapp-subscriptions-portal .bundle-button,
#bundle-app .bundle-button {
  font-weight: normal;
  font-size: 16px !important;
  background: var(--colorBtnPrimary);
  padding: 10px 25px !important;
  border-radius: 30px !important;
  color: #fff !important;
  line-height: 1.10 !important;
  text-align: center !important;
  vertical-align: middle !important;
  white-space: normal !important;
  cursor: pointer !important;
  border: 2px solid transparent !important;
  font-family: "Cooper BT Light" !important;
  transition: 0.20s; }
  @media only screen and (max-width: 768px) {
    #slide-panel .bundle-button,
    #bundleapp-subscriptions-portal .bundle-button,
    #bundle-app .bundle-button {
      padding: 6px 16px !important;
      font-size: 12px !important; } }

#slide-panel .bundle-button:hover,
#bundleapp-subscriptions-portal .bundle-button:hover,
#bundle-app .bundle-button:hover {
  background: #26cad3; }

#slide-panel .bundle-button:disabled,
#bundleapp-subscriptions-portal .bundle-button:disabled,
#bundle-app .bundle-button:disabled {
  background: #CCC; }

#slide-panel .button--secondary,
#bundleapp-subscriptions-portal .button--secondary,
#bundle-app .button--secondary,
button.chakra-button {
  background: #034956 !important;
  color: #fff !important; }

#bundle-app .bundle-img-badge {
  background: #26CAD3;
  width: 22px;
  height: 22px;
  line-height: 24px;
  font-weight: bold;
  display: none; }

.bundleapp-subscription-list-item__subscription-delivery-frequency span {
  font-weight: 600;
  letter-spacing: .25em;
  text-transform: uppercase;
  margin-top: 5px;
  font-size: 12px; }

.bundle-product-name {
  color: #034956 !important; }

h4.bundle-details-table-title,
h3.bundle-text--heading {
  font-family: "Cooper BT Light" !important;
  font-size: 34px;
  color: #034956 !important;
  margin-bottom: 20px;
  font-weight: normal; }

.bundle-table__header th,
.bundle-card__body p strong,
.bundle-card__title {
  font-weight: bold !important;
  letter-spacing: .25em;
  text-transform: uppercase;
  margin-top: 5px;
  font-size: 12px !important; }

.bundle-table__header th {
  color: #034956 !important; }

.addon-container {
  padding: 10px 0 30px;
  margin: 60px 0;
  border-top: 20px dotted #E2F2F2;
  border-bottom: 20px dotted #E2F2F2; }

.slide-panel-container #slidepanel-title,
.addon-container .bundle-product-card__subtitle,
.addons-modal-content .bundle-product-card .bundle-product-card__subtitle,
.bundle-update-content .bundle-product-card .bundle-product-card__title {
  font-size: 20px;
  margin: 20px auto;
  line-height: 1.2;
  font-family: var(--typeHeaderPrimary);
  max-width: 70%; }

.slide-panel-container .VariantSliderSelector__SliderFooter-sc-axpe15-1.gvULQ.bundle-slider-footer,
.slide-panel-container .bundle-text--subdued,
.slide-panel-container .bundle-text--heading,
.slide-panel-container .awt-text-divider,
.slide-panel-container .awt-swap-button-container {
  display: none; }

/* ,
.slide-panel-container .bundle-slider-footer
*/
.slide-panel-container .bundle-slider-footer .bundle-text--body {
  font-size: 1px;
  color: white;
  align-self: flex-start; }

.slide-panel-container .bundle-slider-footer .bundle-text--body::before {
  content: "How often?";
  font-size: 28px;
  font-weight: light;
  display: block;
  color: #034956;
  margin-bottom: -15px; }

.bundle-table__body-row .bundle-repeat-icon-wrapper {
  display: inline-block;
  margin-top: 5px;
  padding: 5px 12px;
  border-radius: 10px;
  background: rgba(141, 223, 211, 0.25); }

#bundleapp-subscriptions-portal .bundleapp-modal .bundle-product-card__quantity-button-container {
  background: white; }

#bundleapp-subscriptions-portal .bundleapp-modal .bundleapp-modal__container--complete-screen {
  background-color: #f7faf7; }

@media only screen and (max-width: 768px) {
  #bundleapp-subscriptions-portal .bundleapp-modal .bundleapp-modal__container--complete-screen .bundle-container {
    padding-right: 0;
    padding-left: 0; } }

#bundleapp-subscriptions-portal .bundleapp-modal .bundleapp-modal__container--complete-screen .bundle-container main {
  max-width: 100%;
  padding: 0 4rem 6rem;
  grid-template-columns: repeat(auto-fit, minmax(275px, 1fr));
  row-gap: 3rem;
  align-self: center; }
  @media only screen and (max-width: 768px) {
    #bundleapp-subscriptions-portal .bundleapp-modal .bundleapp-modal__container--complete-screen .bundle-container main {
      padding: 0 0 6rem; } }

#bundleapp-subscriptions-portal .bundleapp-modal .bundleapp-modal__container--complete-screen .bundle-container main .bundle-product-card {
  justify-self: center;
  justify-content: space-evenly; }

#bundleapp-subscriptions-portal .bundleapp-modal .bundleapp-modal__container--complete-screen header {
  background: white;
  border-bottom: 1px solid #cccccc;
  padding: 3rem; }

#bundleapp-subscriptions-portal .bundleapp-modal .bundleapp-modal__container--complete-screen header button {
  background: transparent !important; }
  @media only screen and (max-width: 768px) {
    #bundleapp-subscriptions-portal .bundleapp-modal .bundleapp-modal__container--complete-screen header button {
      top: 33px;
      right: 10px; } }

#bundleapp-subscriptions-portal .bundleapp-modal #modal-title {
  color: black;
  font-size: 28px;
  line-height: 1;
  font-weight: bold;
  font-family: var(--typeHeaderPrimary); }

#bundleapp-subscriptions-portal .bundleapp-modal .bundleapp-modal__container--complete-screen footer div:first-child {
  flex-direction: column;
  align-items: flex-end; }

#bundleapp-subscriptions-portal .bundleapp-modal .bundleapp-modal__container--complete-screen footer .bundle-text--body {
  padding: 3px 0 15px;
  font-size: 18px;
  font-weight: 100;
  color: #1CA0A5;
  display: inline-block; }

#bundleapp-subscriptions-portal .bundleapp-modal .bundleapp-modal__container--complete-screen footer .bundle-text--body::before {
  content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' id='body_1' width='29' height='22'%3E%3Cg transform='matrix(0.022 0 0 0.022 3.4999995 -0)'%3E%3Cpath d='M830.1 360.5L990 271.7L954.7 252.6L662.9 93.600006L502.10004 181.3L336.9 91.4L10 269.3L44.8 288.9L172.2 359.7L170.7 360.40002L170.59999 360.40002L170.59999 360.50003L12.799988 446.50003L170.59999 531.30005L170.59999 744.50006L499.89996 908.50006L829.2999 744.50006L829.2999 531.9L988.3999 446.40002L830.1 360.5zM662.9 143.8L898.4 272L784.5 335.4L546.3 207.4L662.9 143.8zM101.3 269.7L336.8 141.50002L453.59998 205.1L215.29997 333.1L101.3 269.7zM105.3 446.3L222 382.6L460 511.3L343.6 574.2L105.3 446.3zM214.7 717.1L214.7 555.2L344 624.5L478 550L478 848.1L214.7 717.1zM785.3 717.1L522.1 848.1L522.1 549.7L656.8 624.5L785.3 555.5L785.3 717.1zM895.7 446.2L657.30005 574.2L542.9 511.30002L778.60004 382.60004L895.7 446.2z' stroke='none' fill='%231CA0A5' fill-rule='nonzero' /%3E%3C/g%3E%3C/svg%3E");
  width: 29px;
  height: 22px;
  margin-right: 4px;
  position: relative;
  top: 6px; }

#bundleapp-subscriptions-portal .bundleapp-modal .bundleapp-modal__container--complete-screen .bundleapp-modal__logo {
  height: 55px;
  top: 38px;
  left: 29px;
  background-image: url("https://cdn.shopify.com/s/files/1/0944/2296/files/logo-tom-sawyer_170x.png?v=1663947313"); }
  @media only screen and (max-width: 768px) {
    #bundleapp-subscriptions-portal .bundleapp-modal .bundleapp-modal__container--complete-screen .bundleapp-modal__logo {
      top: 20px;
      left: 10px; } }

/* #bundleapp-subscriptions-portal .bundleapp-modal #modal-title::after {
  content: "Manage your Meal Plan";
  display: block;
  font-size: 28px;
  font-weight: bold;
  line-height: 1;
} */
.bundle-table__body-row--standard td,
.bundle-table__body-row--bab-parent td {
  padding: 16px 0 !important;
  border-top: 1px solid rgba(0, 0, 0, 0.1) !important; }

.bundle-table__body-row--standard .body-row__quantity,
.bundle-table__body-row--standard .body-row__price {
  text-align: center; }

.bundle-table__body-row--standard .body-row__quantity button,
.bundle-table__body-row--standard .body-row__quantity span {
  font-size: 20px; }

.bundle-table__body-row--bab-parent .bundle-product-detail-container,
.bundle-table__body-row--standard .bundle-product-detail-container {
  align-items: center;
  justify-content: space-evenly; }

.bundle-table__body-row--standard .bundle-product-name {
  font-family: var(--typeHeaderPrimary);
  font-size: 18px;
  margin-bottom: 7px;
  letter-spacing: 1px; }

.bundle-table__body-row--standard .bundle-text--subdued {
  margin-top: 5px;
  padding: 5px 12px;
  border-radius: 10px;
  background: rgba(204, 141, 234, 0.25);
  white-space: nowrap; }

.bundle-table__body-row--standard .bundle-text--subdued::before {
  content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' id='body_1' width='16' height='16'%3E%3Cg transform='matrix(0.035031945 0 0 0.035031945 0 0)'%3E%3Cpath d='M408.204 54.922L385.09302 54.922L385.09302 33.845C 385.093 15.174 369.913 0 351.251 0C 332.59302 0 317.413 15.174 317.413 33.845L317.413 33.845L317.413 54.923L269.116 54.923L269.116 33.845C 269.116 15.174 253.938 0 235.278 0C 216.618 0 201.43399 15.174 201.43399 33.845L201.43399 33.845L201.43399 54.923L148.43298 54.923L148.43298 33.845C 148.43298 15.174002 133.25299 0 114.59299 0C 95.938 0 80.758 15.174 80.758 33.845L80.758 33.845L80.758 54.923L48.656 54.923C 38.726997 54.923 30.679998 59.985 30.679998 66.225L30.679998 66.225L30.679998 117.389C 30.655998 117.838 30.543 118.264 30.543 118.724L30.543 118.724L30.543 427.276C 30.543 443.506 43.752 456.726 59.996 456.726L59.996 456.726L396.588 456.726C 412.82703 456.726 426.036 443.51703 426.036 427.276L426.036 427.276L426.036 167.176C 426.082 166.883 426.181 166.61499 426.181 166.32199L426.181 166.32199L426.181 66.219C 426.186 59.984 418.127 54.922 408.204 54.922zM334.241 33.845C 334.241 24.463001 341.856 16.832 351.246 16.832C 360.627 16.832 368.255 24.463001 368.255 33.845L368.255 33.845L368.255 54.923L334.241 54.923L334.241 33.845zM218.263 33.845C 218.263 24.463001 225.889 16.832 235.274 16.832C 244.654 16.832 252.28 24.463001 252.28 33.845L252.28 33.845L252.28 54.923L218.263 54.923L218.263 33.845zM97.579 33.845C 97.579 24.463001 105.208 16.832 114.589005 16.832C 123.97001 16.832 131.6 24.463 131.6 33.845L131.6 33.845L131.6 54.923L97.579 54.923L97.579 33.845zM400.79 427.275C 400.79 429.597 398.909 431.478 396.58902 431.478L396.58902 431.478L59.992 431.478C 57.672 431.478 55.783 429.597 55.783 427.275L55.783 427.275L55.783 177.629L400.79 177.629L400.79 427.275zM165.4 282.673C 162.55199 279.75 161.129 276.34702 161.129 272.505C 161.129 268.04 162.53 264.758 165.332 262.656C 168.133 260.55402 173.081 257.841 180.169 254.513C 190.766 249.512 199.231 244.269 205.582 238.754C 211.928 233.237 217.554 227.065 222.457 220.231C 227.36 213.40201 230.556 209.2 232.048 207.62401C 233.535 206.05101 236.337 205.26001 240.448 205.26001C 245.089 205.26001 248.81 207.05501 251.612 210.645C 254.413 214.238 255.814 219.179 255.814 225.48001L255.814 225.48001L255.814 375.85602C 255.814 393.454 249.817 402.252 237.823 402.252C 232.481 402.252 228.191 400.458 224.953 396.868C 221.713 393.273 220.09401 387.976 220.09401 380.97202L220.09401 380.97202L220.09401 261.475C 197.85501 278.547 182.882 287.073 175.177 287.073C 171.507 287.082 168.242 285.616 165.4 282.673z' stroke='none' fill='%23000000' fill-rule='nonzero' /%3E%3C/g%3E%3C/svg%3E");
  width: 16px;
  height: 16px;
  margin-right: 8px;
  position: relative;
  top: 3px; }

.bundle-table__body-row--standard .bundle-action-item--remove img {
  margin-left: 20px; }

.bundle-table__body-row--standard .bundle-product-subtitle {
  display: none; }

.bundle-table__body-row--bab-parent .bundle-product-name {
  font-size: 24px;
  font-family: var(--typeHeaderPrimary);
  padding-left: 5px; }

.bundle-table__body-row--bab-parent .bundle-product-details p {
  display: inline-block;
  margin-right: 15px; }

.bundle-table__body-row--bab-parent .bundle-product-subtitle {
  font-size: 14px; }

.bundle-table__body-row--bab-parent .bundle-product-subtitle::before {
  content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' id='body_1' width='29' height='22'%3E%3Cg transform='matrix(0.022 0 0 0.022 3.4999995 -0)'%3E%3Cpath d='M830.1 360.5L990 271.7L954.7 252.6L662.9 93.600006L502.10004 181.3L336.9 91.4L10 269.3L44.8 288.9L172.2 359.7L170.7 360.40002L170.59999 360.40002L170.59999 360.50003L12.799988 446.50003L170.59999 531.30005L170.59999 744.50006L499.89996 908.50006L829.2999 744.50006L829.2999 531.9L988.3999 446.40002L830.1 360.5zM662.9 143.8L898.4 272L784.5 335.4L546.3 207.4L662.9 143.8zM101.3 269.7L336.8 141.50002L453.59998 205.1L215.29997 333.1L101.3 269.7zM105.3 446.3L222 382.6L460 511.3L343.6 574.2L105.3 446.3zM214.7 717.1L214.7 555.2L344 624.5L478 550L478 848.1L214.7 717.1zM785.3 717.1L522.1 848.1L522.1 549.7L656.8 624.5L785.3 555.5L785.3 717.1zM895.7 446.2L657.30005 574.2L542.9 511.30002L778.60004 382.60004L895.7 446.2z' stroke='none' fill='%231CA0A5' fill-rule='nonzero' /%3E%3C/g%3E%3C/svg%3E");
  width: 29px;
  height: 22px;
  margin-right: 4px;
  position: relative;
  top: 6px; }

label[value="SUBSCRIPTION"] .chakra-radio__control,
label[value="SUBSCRIPTION"] .chakra-radio__control[data-checked] {
  background: rgba(141, 223, 211, 0.25); }

label[value="ONETIME"] .chakra-radio__control,
label[value="ONETIME"] .chakra-radio__control[data-checked] {
  background: rgba(204, 141, 234, 0.25); }

.bundle-table__body-row--bab-child .gkZEJG {
  padding-left: 75px; }
  @media only screen and (max-width: 768px) {
    .bundle-table__body-row--bab-child .gkZEJG {
      padding-left: 0px; } }

.bundle-table__body-row--bab-child .awt-img-container img {
  max-width: 50px;
  padding: 6px 0; }

.bundle-table__body-row--bab-child .awt-bab-product-name {
  font-weight: 300;
  font-size: 16px; }

.bundle-table__body-row--bab-child td {
  padding-bottom: 22px !important;
  padding-top: 0px !important; }

.css-1cxocs7::before {
  bottom: 8px !important; }

.react-datepicker__day {
  color: #2db3b9 !important; }

.react-datepicker__day.react-datepicker__day--disabled {
  color: #999 !important; }

.react-datepicker__day--selected {
  background-color: #2db3b9 !important;
  color: white !important; }

.bundle-table__footer-row.bundle-table__footer-row--shipping,
.bundle-table__footer-row.bundle-table__footer-row--total {
  display: none; }

.bundle-table__footer .bundle-table-label {
  display: inline-block;
  padding-right: 20px; }

.bundle-details-table .bundle-table__footer::before {
  content: "Sales tax and shipping are not displayed because they are calculated with each new order.";
  display: block;
  font-size: 14px;
  font-style: italic;
  position: absolute;
  margin-top: 25px;
  width: 55%;
  line-height: 1.3; }
  @media only screen and (max-width: 768px) {
    .bundle-details-table .bundle-table__footer::before {
      width: 100%;
      margin-top: 50px; } }

/* .bundle-details-table-title::after {
  content: "You can adjust the date that your next order will process by editing the \"Next Process\" date. We ship each Tuesday and need 48 hours to pack your order from the time it processes. Please set your next order date to the Friday before you would like to receive it.";
  display: block;
  background: #e2f2f2;
  padding: 15px 20px;
  font-family: var(--chakra-fonts-body);
  line-height: 1.4;
  font-size: 12px;
  margin: 15px 0;
  border: 2px solid;
  font-weight: 600;
}*/
.ITBNK.bundle-text--body {
  margin-bottom: 135px; }

/* Recipes Template */
.recipes-filter .tns-product-carousel__btns {
  position: relative;
  top: -34px;
  display: flex;
  justify-content: center;
  gap: 20px; }
  @media only screen and (max-width: 768px) {
    .recipes-filter .tns-product-carousel__btns {
      top: 0;
      margin-top: 50px; } }
  .recipes-filter .tns-product-carousel__btns .btn {
    position: relative;
    display: inline-flex;
    align-items: center;
    height: 66px;
    border: 2px solid #FFF;
    color: #034956;
    background: #FFF;
    padding: 10px 30px 10px 10px;
    transition: all ease-in .2s;
    font-family: Cooper BT Medium; }
    .recipes-filter .tns-product-carousel__btns .btn.active {
      border-color: #26cad3; }
    .recipes-filter .tns-product-carousel__btns .btn .carousel-pet-btn {
      width: 45px;
      height: 45px;
      background-color: #fff;
      border-radius: 50px; }
      @media only screen and (max-width: 768px) {
        .recipes-filter .tns-product-carousel__btns .btn .carousel-pet-btn {
          left: 50%;
          transform: translateX(-50%); } }
    .recipes-filter .tns-product-carousel__btns .btn span {
      margin-left: 15px; }
.recipes-filter .tns-card {
  font-family: "Cooper BT Light";
  font-size: 20px;
  line-height: 28px;
  text-align: center;
  padding: 20px 20px;
  margin-bottom: 20px; }
  .recipes-filter .tns-card p:last-child {
    margin-bottom: 0; }
.recipes-filter .filter-wrapper {
  display: flex;
  text-transform: uppercase;
  gap: 10px;
  margin-bottom: 30px;
  justify-content: center; }
  @media only screen and (max-width: 768px) {
    .recipes-filter .filter-wrapper {
      margin-top: 20px;
      justify-content: center;
      flex-wrap: wrap; } }
  .recipes-filter .filter-wrapper .filter-list {
    display: flex;
    gap: 30px;
    padding-left: 0;
    margin-bottom: 0; }
    @media only screen and (max-width: 768px) {
      .recipes-filter .filter-wrapper .filter-list {
        margin-left: 0;
        justify-content: center;
        flex-wrap: wrap;
        gap: 15px; } }
    .recipes-filter .filter-wrapper .filter-list li {
      list-style: none;
      color: #26CAD3;
      font-weight: bold;
      cursor: pointer;
      border-bottom: 2px solid transparent; }
      .recipes-filter .filter-wrapper .filter-list li.active {
        border-bottom-color: #26CAD3; }
.recipes-filter .review-wrapper {
  text-align: center;
  margin-bottom: 30px; }
  .recipes-filter .review-wrapper h3 {
    font-family: var(--typeHeaderPrimary);
    font-size: calc(var(--typeHeaderSize) - 44px);
    line-height: 1.25; }
  .recipes-filter .review-wrapper .stars-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px; }
    .recipes-filter .review-wrapper .stars-wrapper a {
      display: flex;
      justify-content: center;
      align-items: center;
      gap: 10px; }
    .recipes-filter .review-wrapper .stars-wrapper span.reviews-text {
      font-family: var(--typeHeaderPrimary);
      font-size: calc(var(--typeHeaderSize) - 60px);
      line-height: 1.25; }
    .recipes-filter .review-wrapper .stars-wrapper .tns-review-block-item-stars {
      display: flex;
      justify-content: center;
      gap: 4px; }
      .recipes-filter .review-wrapper .stars-wrapper .tns-review-block-item-stars span {
        width: 17px;
        height: 16px;
        background-image: url("//tomandsawyer.com/cdn/shop/t/54/assets/review-star.svg?v=66733831679145158601764015711");
        background-repeat: no-repeat; }

.product-recipes-container {
  margin-bottom: 40px; }
  .product-recipes-container.hidden {
    display: none; }
  .product-recipes-container .tns-product--wrapper {
    position: relative;
    border-radius: 24px;
    background-color: #fff;
    padding: 30px 30px 60px; }
    @media only screen and (max-width: 768px) {
      .product-recipes-container .tns-product--wrapper {
        padding-bottom: 30px; } }
    .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner {
      display: flex;
      padding-bottom: 6rem; }
      @media only screen and (max-width: 768px) {
        .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner {
          flex-direction: column; } }
      .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner > div {
        flex: 0 1 50%;
        min-height: 1px; }
        @media only screen and (max-width: 768px) {
          .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner > div {
            flex: 1 0 100%; } }
      .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details {
        position: relative;
        z-index: 1; }
        @media only screen and (max-width: 768px) {
          .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details {
            order: 2;
            max-height: 100%; } }
        .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .popup-title {
          font-family: var(--typeHeaderPrimary);
          font-size: calc(var(--typeHeaderSize) - 44px);
          color: #034956;
          margin-top: 15px;
          margin-bottom: 10px; }
          @media only screen and (max-width: 768px) {
            .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .popup-title {
              margin-top: 30px;
              text-align: center; } }
          .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .popup-title span {
            display: inline-block;
            vertical-align: middle; }
            @media only screen and (max-width: 768px) {
              .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .popup-title span {
                display: block;
                text-align: center; } }
        .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .popup-description {
          margin-bottom: 20px; }
          @media only screen and (max-width: 768px) {
            .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .popup-description {
              text-align: center; } }
          .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .popup-description p {
            font-size: calc(var(--typeBaseSize) - 1px); }
        .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .tns-product--accordeon_single .tns-product--accordeon_header {
          display: flex;
          align-items: center;
          justify-content: space-between;
          padding-bottom: 10px;
          margin-bottom: 10px;
          border-bottom: 1px solid var(--color-body-text); }
          .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .tns-product--accordeon_single .tns-product--accordeon_header h5 {
            font-size: var(--typeBaseSize);
            margin-bottom: 0; }
          .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .tns-product--accordeon_single .tns-product--accordeon_header .readmore {
            position: relative;
            font-size: calc(var(--typeBaseSize) - 5px);
            cursor: pointer;
            padding-right: 20px; }
          .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .tns-product--accordeon_single .tns-product--accordeon_header span {
            position: relative;
            font-size: calc(var(--typeBaseSize) - 5px);
            cursor: pointer;
            padding-right: 20px; }
            .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .tns-product--accordeon_single .tns-product--accordeon_header span.open i {
              transform: translateY(-50%) rotate(45deg); }
            .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .tns-product--accordeon_single .tns-product--accordeon_header span i {
              content: '';
              position: absolute;
              top: 50%;
              right: 0;
              width: 16px;
              height: 16px;
              background-color: #26CAD3;
              border-radius: 50%;
              transition: all 0.15s ease;
              transform: translateY(-50%); }
              .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .tns-product--accordeon_single .tns-product--accordeon_header span i::after {
                content: '';
                position: absolute;
                top: 50%;
                left: 50%;
                width: 8px;
                height: 7px;
                background-image: url("//tomandsawyer.com/cdn/shop/t/54/assets/cross-icon.svg?v=128553607068161151021764015712");
                background-repeat: no-repeat;
                transform: translate(-50%, -50%); }
        .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .tns-product--accordeon_single .tns-product--accordeon_content {
          max-height: 0;
          overflow: hidden;
          transition: max-height 0.5s cubic-bezier(0, 1, 0, 1); }
          .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .tns-product--accordeon_single .tns-product--accordeon_content p {
            font-size: calc(var(--typeBaseSize) - 5px); }
          .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .tns-product--accordeon_single .tns-product--accordeon_content.tns-product-benefits ul {
            margin-left: 0; }
            .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .tns-product--accordeon_single .tns-product--accordeon_content.tns-product-benefits ul li {
              display: flex;
              font-size: calc(var(--typeBaseSize) - 5px);
              margin-bottom: 15px;
              align-items: center; }
              .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .tns-product--accordeon_single .tns-product--accordeon_content.tns-product-benefits ul li > span.icon-benefit {
                flex: 1 0 48px;
                padding-right: 15px; }
                .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .tns-product--accordeon_single .tns-product--accordeon_content.tns-product-benefits ul li > span.icon-benefit img {
                  width: 100%; }
        .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner .tns-product--content_details .tns-product--accordeon_single.open .tns-product--accordeon_content {
          max-height: 99em;
          transition: max-height .5s ease-in-out; }
      .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner .tns-product--popup_slideshow {
        padding-left: 50px; }
        @media only screen and (max-width: 768px) {
          .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner .tns-product--popup_slideshow {
            order: 1;
            padding-left: 0; } }
        .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner .tns-product--popup_slideshow .tns-product--recipes_slideshow_inner {
          position: relative;
          z-index: 3; }
          .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner .tns-product--popup_slideshow .tns-product--recipes_slideshow_inner .carousel-cell {
            width: 100%;
            min-height: 539px; }
            @media only screen and (max-width: 768px) {
              .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner .tns-product--popup_slideshow .tns-product--recipes_slideshow_inner .carousel-cell {
                padding: 30px;
                min-height: 310px; } }
            .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner .tns-product--popup_slideshow .tns-product--recipes_slideshow_inner .carousel-cell img {
              border-radius: 24px; }
              @media only screen and (max-width: 768px) {
                .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner .tns-product--popup_slideshow .tns-product--recipes_slideshow_inner .carousel-cell img {
                  position: static;
                  transform: unset; } }
          .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner .tns-product--popup_slideshow .tns-product--recipes_slideshow_inner .flickity-button {
            background-color: #fff; }
            .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner .tns-product--popup_slideshow .tns-product--recipes_slideshow_inner .flickity-button.flickity-next {
              right: -20px; }
            .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner .tns-product--popup_slideshow .tns-product--recipes_slideshow_inner .flickity-button.flickity-previous {
              left: -20px; }
            .product-recipes-container .tns-product--wrapper .tns-product--wrapper_inner .tns-product--popup_slideshow .tns-product--recipes_slideshow_inner .flickity-button .flickity-button-icon {
              fill: #26CAD3; }
    .product-recipes-container .tns-product--wrapper .tns-product--footer {
      position: absolute;
      left: 0;
      bottom: 0;
      width: 100%;
      padding: 30px 35px;
      z-index: 2; }
      @media only screen and (max-width: 768px) {
        .product-recipes-container .tns-product--wrapper .tns-product--footer {
          position: relative;
          padding: 30px 0; } }
      .product-recipes-container .tns-product--wrapper .tns-product--footer .tns-product--footer_actions {
        display: flex;
        gap: 20px; }
        .product-recipes-container .tns-product--wrapper .tns-product--footer .tns-product--footer_actions a {
          position: relative;
          font-family: var(--typeHeaderPrimary);
          color: #034956; }
          @media only screen and (max-width: 768px) {
            .product-recipes-container .tns-product--wrapper .tns-product--footer .tns-product--footer_actions a {
              font-size: calc(var(--typeBaseSize) - 6.4px); } }
          .product-recipes-container .tns-product--wrapper .tns-product--footer .tns-product--footer_actions a:after {
            content: "";
            position: absolute;
            width: 100%;
            height: 2px;
            background-color: #26cad3;
            top: 100%;
            left: 0; }

.tns-product--content_details .popup-title img {
  max-width: 40px; }

.tns-product--content_details .icon-benefit {
  max-width: 48px; }

.intro-section {
  margin: 10px 0px; }

.intro-section .tns-image-n-text-about .feature-row .feature-row__item.feature-row__text {
  margin-bottom: 10px; }

@media only screen and (min-width: 769px) {
  .intro-section {
    margin: 0px 0px 80px 0px; } }
/* Video Animation */
.video-parent-section .hero__text-wrap {
  opacity: 1; }

/* Mobile Header CTA */
@media only screen and (max-width: 768px) {
  .header-item--logo {
    -webkit-box-flex: 0 1 115px !important;
    -ms-flex: 0 1 115px !important;
    flex: 0 1 115px !important; }

  .mobile-header-cta {
    font-size: 12px !important;
    padding: 6px;
    font-family: unset;
    font-weight: 600;
    display: inline-flex; } }
@media only screen and (max-width: 388px) {
  .mobile-header-cta {
    display: none; } }
/* Recipie Anchor */
a.recipe-anchor {
  display: block;
  position: relative;
  top: -125px;
  -webkit-transform: translate3d(0, 0, 0); }

@media only screen and (max-width: 768px) {
  a.recipe-anchor {
    display: block;
    position: relative;
    top: -65px; } }
/* HP Video Hero */
@media only screen and (max-width: 768px) {
  .homepage-top-section .feature-row .feature-row__item.feature-row__item--overlap-video-image .video-square {
    padding-bottom: 100%;
    margin-bottom: 1.5rem; }

  .homepage-top-section .feature-row .feature-row__item.feature-row__item--overlap-video-image .video-square video {
    object-fit: cover;
    width: 100%;
    height: 100%; } }
.recipes-product {
  position: relative; }

/* Trial Template Flickity - Widen Container and Position Arrows */
.product-trial-section .gallery {
  position: relative; }
.product-trial-section .page-width {
  margin-left: 10px;
  margin-right: 10px; }
  @media (max-width: 768px) {
    .product-trial-section .page-width {
      padding-left: 10px;
      padding-right: 10px;
      margin-left: 0;
      margin-right: 0; } }
.product-trial-section .product-single__meta {
  padding-left: 0; }
@media (max-width: 768px) {
  .product-trial-section .card {
    padding-left: 0;
    padding-right: 0; }
    .product-trial-section .card > *:not(.gallery) {
      padding-left: 10px;
      padding-right: 10px; } }
.product-trial-section .card .gallery {
  min-height: auto; }
  @media (min-width: 769px) {
    .product-trial-section .card .gallery {
      width: 50%;
      float: right;
      margin-left: 3%; } }
  @media (max-width: 768px) {
    .product-trial-section .card .gallery {
      width: 100%;
      float: none;
      top: auto;
      right: auto;
      min-height: 444px; } }

/* Box Includes Section - Clean Structure */
.product-trial-section .box-includes-section {
  margin-top: 2rem; }
  .product-trial-section .box-includes-section h3 {
    font-size: 1.3rem;
    font-weight: bold;
    margin-bottom: 1rem;
    color: #333; }
  .product-trial-section .box-includes-section .box-includes-list {
    list-style: none;
    padding: 0;
    margin: 0; }
    .product-trial-section .box-includes-section .box-includes-list li {
      margin-bottom: 1.5rem;
      font-size: 1.15rem;
      line-height: 1.4;
      padding-left: 0; }
      @media (max-width: 768px) {
        .product-trial-section .box-includes-section .box-includes-list li {
          margin-bottom: 2rem;
          font-size: 1.2rem;
          line-height: 1.5; } }
      .product-trial-section .box-includes-section .box-includes-list li:last-child {
        margin-bottom: 0; }

/* Market/Country Selector Styles */
.market-selector {
  position: relative;
  display: inline-flex;
  align-items: center; }
  .market-selector .market-selector__select {
    appearance: none;
    background: transparent;
    border: 1px solid;
    border-radius: 4px;
    padding: 8px 30px 8px 12px;
    font-size: 14px;
    font-family: inherit;
    color: #383a35;
    cursor: pointer;
    min-width: 70px; }
    .market-selector .market-selector__select:focus {
      outline: none;
      border-color: #f26722; }
    .market-selector .market-selector__select:hover {
      border-color: #f26722; }
  .market-selector .icon-chevron-down {
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    width: 12px;
    height: 12px;
    pointer-events: none;
    fill: #383a35; }
  @media only screen and (max-width: 768px) {
    .market-selector .market-selector__select {
      padding: 6px 25px 6px 8px;
      font-size: 12px;
      min-width: 60px; }
    .market-selector .icon-chevron-down {
      width: 10px;
      height: 10px;
      right: 6px; } }

/* Product Disclaimer Block */
.product-block--disclaimer {
  margin-top: 30px;
  margin-bottom: 30px; }
  .product-block--disclaimer .tns-card-parent {
    position: relative; }
  .product-block--disclaimer .tns-card {
    padding: 30px;
    border-radius: 16px; }
    @media only screen and (max-width: 768px) {
      .product-block--disclaimer .tns-card {
        padding: 20px; } }
    .product-block--disclaimer .tns-card .h3 {
      margin-top: 10px;
      margin-bottom: 15px;
      font-size: 24px; }
      @media only screen and (max-width: 768px) {
        .product-block--disclaimer .tns-card .h3 {
          font-size: 20px; } }
    .product-block--disclaimer .tns-card .subheading {
      font-size: 14px;
      text-transform: uppercase;
      letter-spacing: 0.1em;
      opacity: 0.8;
      margin-bottom: 5px; }
    .product-block--disclaimer .tns-card .tns-card-body p {
      margin-bottom: 15px; }
      .product-block--disclaimer .tns-card .tns-card-body p:last-of-type {
        margin-bottom: 20px; }
    .product-block--disclaimer .tns-card .tns-card-body a:not(.btn) {
      text-decoration: underline; }
      .product-block--disclaimer .tns-card .tns-card-body a:not(.btn):hover {
        text-decoration: none; }
  .product-block--disclaimer .card-corner-img {
    position: absolute;
    pointer-events: none;
    z-index: 1; }

/* Market Auto-Detection Suggestion Banner - Temporarily Disabled */
/* CSS will be added back once compilation issue is resolved */
/* Trial Box Gallery Placeholders - Fixed Sizes to Prevent Layout Shift */
/* Hide placeholder once gallery is loaded */
/* Calculator Icon & Notification Styling */
.calc-widget__container {
  position: relative;
  display: inline-block; }

.calc-widget__link {
  display: inline-block;
  width: 54px;
  height: 54px; }

@media only screen and (max-width: 768px) {
  .site-nav__icons .localization-form {
    display: none; }

  .slide-nav__item--market {
    text-align: center;
    border-bottom: 0 !important; }
    .slide-nav__item--market .localization-form {
      margin-right: 0; } }
.calc-icon {
  display: block;
  width: 52px;
  height: 52px; }

/* Default state: show icon, hide notification */
.calc-widget__container .calc-widget__icon {
  display: inline-block; }

.calc-widget__container .calc-notification {
  display: none; }

/* Notification state: hide icon, show notification */
.calc-widget__container.has-notification .calc-widget__icon {
  display: none; }

.calc-widget__container.has-notification .calc-notification {
  display: inline-flex;
  border-radius: 25px;
  width: 200px;
  height: 50px;
  align-items: center;
  justify-content: center; }

/* kCal Notification Pill */
.calc-notification {
  align-items: center;
  gap: 8px;
  background: #26CAD3;
  border-radius: 25px;
  padding: 6px 12px 6px 16px;
  color: white;
  text-decoration: none;
  transition: background 0.2s ease;
  white-space: nowrap; }
  .calc-notification:hover {
    background: #189da4;
    color: white; }

.calc-notification__content {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 6px;
  position: relative;
  top: 7px; }
  @media only screen and (max-width: 768px) {
    .calc-notification__content {
      top: 0px; } }

.calc-notification__pet_type {
  font-size: 66%;
  position: absolute;
  top: -18px;
  left: 0; }
  @media only screen and (max-width: 768px) {
    .calc-notification__pet_type {
      display: none; } }

.calc-notification__value {
  font-size: 22px;
  font-weight: 600;
  line-height: 1; }

.calc-notification__label {
  font-size: 20px;
  font-weight: 600;
  line-height: 1; }

.calc-notification__subtext {
  font-size: 18px;
  font-weight: 400;
  line-height: 1;
  opacity: 0.9;
  margin-left: 2px; }

@media only screen and (max-width: 768px) {
  .calc-notification {
    padding: 5px 10px 5px 12px; }

  .calc-notification__value {
    font-size: 20px; }

  .calc-notification__label {
    font-size: 14px;
    font-weight: normal; }

  .calc-notification__subtext {
    display: none; }

  .calc-widget__container.has-notification .calc-notification {
    width: 75px;
    flex-direction: column;
    gap: 0.25rem;
    margin-right: 0; }

  .template-collection .calc-widget__container.has-notification .calc-notification,
  .template-product .calc-widget__container.has-notification .calc-notification {
    margin-left: 6px;
    margin-right: 6px; }

  .calc-notification__content {
    flex-direction: column;
    gap: 0px;
    justify-content: center; } }
/* Cart discount remove button */
.cart__discount-item {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px; }

.cart__discount-remove {
  background: none;
  border: none;
  padding: 4px;
  cursor: pointer;
  color: #999;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: color 0.2s ease; }
  .cart__discount-remove:hover {
    color: #c00; }

/* Calculator Drawer Styles */
.drawer--calculator {
  padding-bottom: calc(env(safe-area-inset-bottom) * 1.18); }

/* Calculator "Send me a guide" subject row - "'s Feeding Guide" text styling */
p.feeding-guide-suffix,
.feeding-guide-suffix {
  text-indent: -14px !important;
  margin-left: 10px !important; }

.drawer--calculator.drawer--is-open {
  display: block;
  transition-duration: 0.25s;
  background: #f6faf7; }

@media only screen and (min-width: 769px) {
  .drawer--calculator {
    width: 420px;
    right: -420px; }

  .drawer--calculator.drawer--is-open {
    transform: translateX(-420px); } }
@media only screen and (max-width: 768px) {
  .drawer--calculator {
    width: 100%;
    height: 100%;
    left: 0;
    right: 0;
    top: auto;
    transform: translateY(100%); }

  .drawer--calculator.drawer--is-open {
    transform: translateY(0); }

  /* Mobile drawer closing animation - matches mobile nav pattern */
  .drawer--calculator.drawer--is-closing {
    display: block !important;
    transform: translateY(100%);
    transition: transform 0.15s cubic-bezier(0.4, 0, 0.6, 1); }

  .drawer--cart.drawer--is-closing {
    display: block !important;
    transform: translateY(100%);
    transition: transform 0.15s cubic-bezier(0.4, 0, 0.6, 1); } }
.drawer--calculator .drawer__header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 1rem 1rem 1.5rem;
  border-bottom: 0; }

.drawer--calculator .drawer__title {
  flex-basis: 90%;
  padding: 0 2rem 0 1rem; }

.drawer--calculator .drawer__heading {
  margin: 0 0 8px 0;
  font-family: 'Proxima Nova';
  font-size: 22px;
  color: #333;
  line-height: 1.1; }

.drawer--calculator .drawer__description {
  margin: 0;
  font-size: 15px;
  line-height: 1.1;
  color: #666;
  font-weight: 400;
  padding: 0 5px; }

.drawer--calculator .drawer__close {
  margin-left: auto;
  flex-shrink: 0; }

.drawer--calculator .drawer__scrollable {
  padding: 20px;
  overflow-y: auto;
  max-height: calc(100vh - 80px); }
  .drawer--calculator .drawer__scrollable .cart-items {
    padding-bottom: 1rem; }

/* Cart Drawer Scrolling Fix - Fixed Header/Footer */
.drawer--cart .drawer__header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 10;
  background: #034956;
  color: white;
  display: flex;
  flex-direction: column;
  padding: 0.25rem 0.5rem; }
  .drawer--cart .drawer__header .drawer__title h1 {
    color: white; }
  .drawer--cart .drawer__header .drawer__close-button {
    background: transparent; }
    .drawer--cart .drawer__header .drawer__close-button:active, .drawer--cart .drawer__header .drawer__close-button:focus {
      background: transparent;
      outline: none; }
    .drawer--cart .drawer__header .drawer__close-button svg {
      stroke: white; }
    .drawer--cart .drawer__header .drawer__close-button .icon path {
      stroke: white; }
  .drawer--cart .drawer__header .cart-weight-tally {
    color: white; }
    .drawer--cart .drawer__header .cart-weight-tally .cart-weight-tally__current {
      color: white;
      line-height: 1; }
    .drawer--cart .drawer__header .cart-weight-tally .cart-weight-tally__separator,
    .drawer--cart .drawer__header .cart-weight-tally .cart-weight-tally__min {
      color: white;
      line-height: 1; }
    @media only screen and (max-width: 768px) {
      .drawer--cart .drawer__header .cart-weight-tally {
        line-height: 1; } }
    .drawer--cart .drawer__header .cart-weight-tally svg path {
      fill: none;
      stroke: white;
      stroke-width: 15px; }

.drawer--cart .drawer__header-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0.75rem; }
  @media only screen and (max-width: 768px) {
    .drawer--cart .drawer__header-top {
      gap: 0.5rem; } }

/* Drawer header progress link */
.drawer__header-progress-link {
  flex: 1;
  display: flex;
  align-items: center;
  text-decoration: none;
  color: inherit; }

/* Drawer progress bar - text overlaid on progress bar */
.cart__weight-progress-overlay--drawer {
  flex: 1;
  margin: 0; }

.cart__weight-progress--drawer {
  padding: 4px 0; }

.cart__weight-progress--drawer .cart__weight-segment {
  height: 18px; }

.drawer--cart .cart-weight-tally--drawer {
  margin: 0; }

.drawer--cart .drawer__inner {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
  padding-top: 2rem;
  /* Default, JS adjusts based on actual header height */
  background: var(--colorBody);
  transition: padding-top 0.15s ease; }

.drawer--cart .drawer__scrollable {
  height: 100%;
  overflow-y: auto !important;
  -webkit-overflow-scrolling: touch;
  padding: 0 1rem; }

.drawer--cart .drawer__footer {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 10;
  background: white;
  padding: 0.75rem 0.75rem 1.25rem; }

.calculator-drawer__widget {
  width: 100%;
  max-width: 380px;
  margin: 0 auto;
  padding-bottom: 1rem; }

/* Dynamic Add to Cart Button (Superbutton) Styles */
.a2c_dyn_button {
  position: relative;
  min-height: 44px;
  min-width: 203px;
  display: inline-block;
  overflow: hidden;
  border-radius: 30px;
  margin: 0.5rem 0; }

.add2cart_ui {
  display: block;
  width: 100%;
  position: relative;
  z-index: 1; }

.add2cart_ui .add2cart_form {
  width: 100%;
  margin: 0; }

.add2cart_ui .btn.add-to-cart {
  width: 100%;
  height: 44px;
  margin: 0;
  padding-left: 50px;
  padding-right: 50px;
  line-height: 1; }

.add2cart_ui.sold_out {
  opacity: 0.6;
  cursor: not-allowed; }

.add2cart_ui.sold_out .btn.add-to-cart {
  background-color: #999;
  cursor: not-allowed; }

.cart_quantity_ui {
  position: relative;
  border: 3px solid #F26722;
  border-radius: 30px;
  display: none;
  align-items: center;
  justify-content: space-between;
  background: white;
  min-height: 44px;
  width: 80%;
  margin: 0 auto;
  overflow: hidden; }

@media only screen and (min-width: 769px) {
  .template-product .cart_quantity_ui {
    margin: 0; } }

.cart_quantity_ui[style*="display: flex"],
.cart_quantity_ui[style*="display:flex"] {
  display: flex !important; }

.quantity-selector__button {
  width: 25%;
  min-width: 20px;
  height: 44px;
  cursor: pointer;
  background: #F26722;
  color: white;
  border: none;
  font-size: 20px;
  font-weight: bold;
  transition: background 0.2s ease;
  display: flex;
  align-items: center;
  justify-content: center; }

.template-product .quantity-selector__button {
  width: 30%; }

.quantity-selector__button:hover {
  background: #e05a1a; }

.quantity-selector__button:active {
  background: #d04f12; }

.quantity-selector__button--minus {
  border-radius: 3px 0 0 3px; }

.quantity-selector__button--plus {
  border-radius: 0 3px 3px 0; }

.quantity-selector__value {
  flex: 1;
  text-align: center;
  border: none;
  font-size: 18px;
  font-weight: 600;
  background: white;
  color: #333;
  padding: 0 10px;
  min-width: 40px;
  -moz-appearance: textfield;
  appearance: textfield; }

.quantity-selector__value::-webkit-outer-spin-button,
.quantity-selector__value::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0; }

.quantity-selector__value:focus {
  outline: none;
  background: #f5f5f5; }

/* Loading state for quantity input */
.a2c_dyn_button.is-loading .quantity-selector__value {
  opacity: 0.5;
  pointer-events: none; }

.cart__remove {
  position: absolute;
  right: -32px;
  top: 50%;
  transform: translateY(-50%);
  width: 24px;
  height: 24px;
  border-radius: 50%;
  border: 1.5px solid #F26722;
  background: white;
  color: #F26722;
  text-align: center;
  line-height: 20px;
  font-size: 18px;
  font-weight: bold;
  text-decoration: none;
  opacity: 0.7;
  transition: all 0.2s ease;
  display: flex;
  align-items: center;
  justify-content: center; }

@media (hover: hover) {
  .cart__remove:hover {
    opacity: 1;
    background: #F26722;
    color: white;
    transform: translateY(-50%) scale(1.1); } }
/* Responsive adjustments */
@media only screen and (max-width: 768px) {
  .quantity-selector__button {
    min-width: 38px;
    height: 38px;
    font-size: 2rem; }

  .quantity-selector__value {
    font-size: 16px; }

  .cart__remove {
    right: -28px;
    width: 22px;
    height: 22px;
    line-height: 18px;
    font-size: 16px; } }
/* Market Selector Styling - Amazon-inspired minimal design */
.market-selector {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  cursor: pointer;
  padding: 4px 8px;
  border-radius: 3px;
  transition: background 0.2s ease; }
  .market-selector:hover {
    background: rgba(0, 0, 0, 0.05); }
  .market-selector .currency-flag {
    position: relative;
    width: 20px;
    height: 15px;
    border-radius: 0;
    overflow: hidden;
    flex-shrink: 0;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1); }
    .market-selector .currency-flag:after {
      content: '';
      display: block;
      width: 100%;
      height: 100%;
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat; }
  .market-selector .icon-arrow {
    margin-left: 8px;
    flex-shrink: 0;
    transform: rotate(180deg); }
  @media only screen and (max-width: 768px) {
    .market-selector {
      padding: 3px 6px; }
      .market-selector .currency-flag {
        width: 18px;
        height: 13px; } }

.market-selector__code {
  font-size: 16px;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: inherit;
  user-select: none; }
  @media only screen and (max-width: 768px) {
    .market-selector__code {
      font-size: 14px; } }

.market-selector__select {
  position: absolute !important;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0 !important;
  cursor: pointer;
  z-index: 1;
  border: none !important;
  background: transparent !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important; }

/* Clear Cart Button */
.cart-cta {
  display: flex;
  justify-content: flex-end;
  gap: 1rem; }

.template-cart .cart-cta {
  justify-content: center; }

.cart-btn {
  background: #f97316;
  color: white;
  border: none;
  font-weight: 600;
  text-align: center;
  line-height: 1.3;
  padding: 6px 14px;
  font-size: 13px;
  border-radius: 3px;
  cursor: pointer;
  transition: all 0.2s ease;
  font-family: inherit; }
  @media only screen and (max-width: 768px) {
    .cart-btn span {
      display: none; } }
  .cart-btn:hover {
    background: #ea580c;
    color: white; }
  .cart-btn:active {
    background: #c2410c; }

/* Add to Meal Box Button Styles */
.add-to-meal-box-btn {
  width: 100%;
  max-width: 300px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  transition: all 0.3s ease; }
  .add-to-meal-box-btn:disabled {
    opacity: 0.6;
    cursor: not-allowed; }
  .add-to-meal-box-btn.adding {
    opacity: 0.7; }

.tns-product--footer {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  padding-top: 20px; }

.tns-product--footer_actions {
  display: flex;
  gap: 15px;
  flex-wrap: wrap;
  justify-content: center; }

.tns-product--footer_add-to-cart {
  width: 100%;
  display: flex;
  justify-content: center;
  padding-top: 10px; }

/* Cart Drawer z-index fix - ensure it appears above product popup */
#CartDrawer,
.drawer--is-open {
  z-index: 150 !important; }

/* Recipes Product - expand accordion sections on desktop */
@media only screen and (min-width: 769px) {
  .recipes-product .tns-product--accordeon_single .tns-product--accordeon_header .readmore {
    display: none; }
  .recipes-product .tns-product--accordeon_single .tns-product--accordeon_content {
    display: block !important;
    max-height: none !important; } }
/* Cart Weight Tally */
.cart-weight-tally {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 18px;
  margin-bottom: 20px;
  color: #034956;
  margin-top: 1rem; }
  @media only screen and (max-width: 768px) {
    .cart-weight-tally {
      font-size: 16px;
      margin: 0; } }

.cart-weight-tally__icon {
  width: 24px;
  height: 24px;
  object-fit: contain;
  position: relative;
  top: -3px;
  right: 5px; }
  .cart-weight-tally__icon path {
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 15px; }
  @media only screen and (max-width: 768px) {
    .cart-weight-tally__icon {
      width: 20px;
      height: 20px; } }

.cart-weight-tally__current {
  font-weight: 700;
  font-size: 24px; }
  @media only screen and (max-width: 768px) {
    .cart-weight-tally__current {
      font-size: 20px; } }

.cart-weight-tally__separator {
  margin: 0 8px;
  color: #666; }

.cart-weight-tally__min {
  color: #666; }
  @media only screen and (max-width: 768px) {
    .cart-weight-tally__min {
      font-size: 14px; } }

.cart__min-weight-warning {
  padding: 12px;
  background: #fff3cd;
  border: 1px solid #ffc107;
  border-radius: 4px;
  color: #856404;
  font-size: 14px;
  text-align: center;
  max-width: 420px;
  margin: 10px 0 0 auto; }
  @media only screen and (max-width: 768px) {
    .cart__min-weight-warning {
      font-size: 13px;
      padding: 10px; } }
  .cart__min-weight-warning a {
    color: #856404;
    text-decoration: underline; }
    .cart__min-weight-warning a:hover {
      color: #533f03; }

.cart__checkout {
  text-align: right;
  margin-top: 1rem; }
  @media only screen and (max-width: 768px) {
    .cart__checkout {
      text-align: center;
      transform: scale(1.2); } }

.cart__checkout:disabled {
  cursor: not-allowed;
  background: #999 !important;
  color: #DDD !important;
  opacity: 1; }

.cart__continue-shopping {
  margin: 0;
  text-align: center;
  position: relative;
  top: 6rem; }
  @media only screen and (max-width: 768px) {
    .cart__continue-shopping {
      top: unset;
      margin: 1rem 0 3rem; } }
  .cart__continue-shopping a {
    color: #666;
    text-decoration: underline;
    font-size: 14px;
    transition: color 0.2s; }
    .cart__continue-shopping a:hover {
      color: var(--colorBtnPrimary); }

/* Cart Subscription Selector (Awtomic) */
/* TODO: Implement styling to match Awtomic design patterns */
.cart__subscription-selector {
  margin-bottom: 20px; }
  @media only screen and (max-width: 768px) {
    .cart__subscription-selector {
      margin-bottom: 15px; } }

.cart__plan-selector {
  border: none;
  padding: 0;
  margin: 0;
  display: inline-block;
  text-align: left;
  font-size: 1rem; }

.cart__plan-option label {
  display: flex;
  align-items: center;
  cursor: pointer;
  margin-bottom: 0; }
.cart__plan-option input[type="radio"] {
  margin-right: 8px; }

.cart__plan-save {
  display: flex;
  column-gap: 10px;
  justify-content: space-between;
  align-items: center; }

.cart__plan-price {
  margin-left: auto;
  font-weight: 600; }

.cart__plan-details {
  margin-top: 8px;
  padding-left: 22px;
  display: flex;
  align-items: center;
  gap: 0.5rem; }
  .cart__plan-details label {
    display: inline-block;
    margin-bottom: 0;
    font-weight: 600;
    font-size: 0.95rem; }

.cart__plan-frequency {
  width: 165px;
  margin-left: 7px;
  padding: 4px 12px;
  font-size: 1rem;
  border: 1px solid #ddd;
  border-radius: 4px;
  cursor: pointer;
  background-color: white; }
  .cart__plan-frequency:focus {
    outline: none;
    border-color: #333; }

/* Hide Awtomic subscription controls on product pages and collections only */
.template-product fieldset.bundleapp-wrapper,
.template-product .bundleapp-wrapper,
.template-product [class*="bundleapp"],
.template-product [id*="bundle-app"],
.template-product .appstle-subscription-widget,
.template-product [class*="awtomic"],
.template-product selling-plan-group,
.template-collection fieldset.bundleapp-wrapper,
.template-collection .bundleapp-wrapper,
.template-collection [class*="bundleapp"],
.template-collection [id*="bundle-app"],
.template-collection .appstle-subscription-widget,
.template-collection [class*="awtomic"],
.template-collection selling-plan-group {
  display: none !important; }

/* Hide meal box CTA button on cart page */
.template-cart [data-meal-box-cta] {
  display: none !important; }

/* Add to Meal Box button on collection grid */
.grid-product__add-to-cart {
  display: inline-block;
  padding: 15px;
  text-align: center; }
  @media only screen and (max-width: 768px) {
    .grid-product__add-to-cart {
      padding: 1rem 0 2rem; } }
  .grid-product__add-to-cart .product-grid__form {
    margin: 0; }
  .grid-product__add-to-cart .grid-product__btn {
    width: auto;
    min-width: 140px;
    display: inline-block; }

/* Cart item product type */
.cart__product-type {
  color: #777;
  font-size: 13px;
  font-weight: 400;
  margin-top: -1px; }
  @media only screen and (max-width: 768px) {
    .cart__product-type {
      font-size: 12px; } }

/* Cart subscription delivery */
.cart__subscription-delivery {
  font-size: 1rem;
  color: #26abc3;
  font-weight: 600; }

.cart__item-attributes a {
  font-size: 16px;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-decoration-color: #AAA; }

/* Break meal plan attribute on colon on mobile */
.cart__item-attribute-break {
  display: none; }
  @media only screen and (max-width: 768px) {
    .cart__item-attribute-break {
      display: block; } }

/* Cart subscription frequency (in price area) */
.cart__subscription-frequency {
  font-size: 0.875rem;
  color: #999;
  margin-top: 4px;
  font-weight: 400; }

/* Cart subscription savings display */
.cart__subscription-savings {
  font-size: 0.875rem;
  color: #26abc3;
  margin-top: 4px;
  font-weight: 600; }

/* Pet selector styling */
.pet-selector-wrapper {
  margin-bottom: 15px; }
  .pet-selector-wrapper label {
    display: none; }

.pet-selector {
  background: transparent;
  border: none;
  padding: 0;
  color: #26cad3;
  font-size: 18px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L6 6L11 1' stroke='%2326cad3' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right center;
  padding-right: 20px; }
  .pet-selector:focus {
    outline: none; }

/* Cart page - add Total column */
/* Header row keeps fixed widths for alignment */
.cart__item--headers .cart__item--details {
  grid-template-columns: 40% 100px 100px 100px 50px;
  gap: 16px; }
  @media only screen and (max-width: 768px) {
    .cart__item--headers .cart__item--details {
      grid-template-columns: 90px 1fr !important; } }

/* Line items use flexible columns */
.cart__item:not(.cart__item--headers) .cart__item--details {
  grid-template-columns: 40% 1fr !important; }
  @media only screen and (max-width: 768px) {
    .cart__item:not(.cart__item--headers) .cart__item--details {
      grid-template-columns: 90px 1fr !important;
      gap: 0 !important;
      padding-top: 7px; } }

/* Cart page quantity controls - match drawer treatment (mobile only) */
@media only screen and (max-width: 768px) {
  .template-cart .js-qty__wrapper {
    background-color: white;
    border: 1px solid currentColor;
    border-radius: 4px;
    max-width: 90px; }

  .template-cart .js-qty__num {
    color: var(--colorTextBody);
    border: 0;
    padding: 5px;
    font-size: 14px; }

  .template-cart .js-qty__adjust {
    border: 0;
    color: var(--colorTextBody);
    fill: var(--colorTextBody); }
    .template-cart .js-qty__adjust:hover {
      opacity: 0.5; } }
.cart__item--total {
  display: block;
  padding-right: 10px; }
  @media only screen and (max-width: 768px) {
    .cart__item--total {
      display: none; } }

.cart__item--remove-col {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  margin: 0 1rem 0 -1rem; }
  @media only screen and (max-width: 768px) {
    .cart__item--remove-col {
      display: none; } }

/* Hide Total column in cart drawer - only show on /cart page */
.drawer--cart {
  /* Show remove button in drawer (both desktop and mobile) - match mobile /cart treatment */
  /* Apply mobile-style flexbox layout to drawer on both desktop and mobile */ }
  .drawer--cart .cart__item--details {
    grid-template-columns: 90px 1fr !important;
    gap: 0 !important; }
    @media only screen and (min-width: 769px) {
      .drawer--cart .cart__item--details {
        grid-template-columns: 90px 1fr !important; } }
  .drawer--cart .cart__item--total {
    display: none !important; }
  .drawer--cart .cart__item--remove-col {
    display: flex !important; }
  .drawer--cart .cart__item--qty-price-row {
    display: flex;
    flex-wrap: wrap;
    gap: 12px; }
  .drawer--cart .cart__item--qty {
    order: 1;
    flex: 0 0 auto; }
  .drawer--cart .cart__item--remove-col {
    order: 2;
    flex: 0 0 auto;
    align-items: center;
    margin: 0; }
  .drawer--cart .cart__item--price {
    order: 3;
    flex: 1 1 auto; }

/* Cart item remove button */
.cart__item--price-wrapper {
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
  gap: 12px; }

.cart__item--price-content {
  flex: 1; }

.cart__item-remove {
  background: none;
  border: none;
  padding: 4px;
  cursor: pointer;
  color: #999;
  transition: color 0.2s ease;
  flex-shrink: 0;
  margin-left: 1rem; }
  @media (hover: hover) {
    .cart__item-remove:hover {
      color: #f26722; } }
  .cart__item-remove svg {
    display: block; }

/* Mobile: reposition delete button next to quantity selector */
@media only screen and (max-width: 768px) {
  .cart__item--qty-price-row {
    display: flex;
    flex-wrap: wrap;
    gap: 12px; }

  .cart__item--qty {
    order: 1;
    flex: 0 0 auto; }

  .cart__item--remove-col {
    display: flex !important;
    order: 2;
    flex: 0 0 auto;
    align-items: center; }

  .cart__item--price {
    order: 3;
    flex: 1 1 auto; }

  .cart__item--total {
    order: 4;
    flex: 1 1 auto; } }
/* Product breadcrumb */
.product-breadcrumb {
  display: flex;
  justify-content: space-between;
  padding: 1rem 0;
  visibility: hidden; }
  @media only screen and (max-width: 768px) {
    .product-breadcrumb {
      padding: 0; } }

.product-breadcrumb--ready {
  visibility: visible; }

.product-breadcrumb--bottom {
  margin-bottom: 0;
  margin-top: 3rem; }
  @media only screen and (max-width: 768px) {
    .product-breadcrumb--bottom {
      margin-top: 1rem; } }

.product-breadcrumb__link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #034956;
  text-decoration: none;
  font-size: 14px;
  font-weight: 500;
  transition: opacity 0.2s ease; }
  .product-breadcrumb__link:hover {
    opacity: 0.7; }
  .product-breadcrumb__link svg {
    flex-shrink: 0; }

.product-breadcrumb__position {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  text-decoration: none;
  color: #666; }
  .product-breadcrumb__position:hover {
    color: #034956; }

.product-breadcrumb__count {
  font-size: 14px;
  font-weight: 500; }

.product-breadcrumb__filters {
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #034956; }
  @media only screen and (max-width: 768px) {
    .product-breadcrumb__filters {
      display: none; } }

.product-breadcrumb--filtered {
  justify-content: space-between;
  align-items: center; }

div[data-product-blocks] {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  gap: 2rem; }

.trial-box div[data-product-blocks] > div:first-of-type {
  margin-bottom: 0 !important; }
@media only screen and (max-width: 768px) {
  .trial-box div[data-product-blocks] {
    gap: 0; } }

@media only screen and (max-width: 768px) {
  .trial-box .grid__item--title-price-cta .product-block--price,
  .trial-box .grid__item--title-price-cta .product-block--buy-buttons {
    display: none !important; } }

.trial-box .product-block p small {
  display: inline-block;
  line-height: 1.2; }
  @media only screen and (max-width: 768px) {
    .trial-box .product-block p small {
      max-width: 80%; } }

@media only screen and (max-width: 768px) {
  .trial-box .grid__item--content [data-product-blocks] > .product-block--price.desktop-only,
  .trial-box .grid__item--content [data-product-blocks] > .product-block--buy-buttons.desktop-only {
    display: block !important; }
  .trial-box .grid__item--content .product-block--description .product-block--buy-buttons {
    display: none !important; } }

/* Product Grid Hover Image Effect */
.grid-product__image-wrapper {
  position: relative;
  overflow: hidden;
  border-radius: 12px; }

.grid-product__image-primary {
  transform: scale(0.9); }

.grid-product__image-primary,
.grid-product__image-hover {
  transition: opacity 0.3s ease; }

.grid-product__image-hover {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0; }

.grid-product__link:hover .grid-product__image-hover {
  opacity: 1; }

.grid-product__link:hover .grid-product__image-primary {
  opacity: 0; }

ul.solutions {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 1rem; }
  ul.solutions li {
    flex: 0 0 calc(33.333% - 1rem);
    /* 3 columns per row minus gap */
    box-sizing: border-box;
    padding: 8px 12px;
    border: 3px solid #E2F1F2;
    background-color: #E2F1F2;
    line-height: 1.35;
    font-weight: 600;
    font-size: 12px;
    text-transform: uppercase;
    border-radius: 9px;
    align-content: center; }
    @media only screen and (max-width: 768px) {
      ul.solutions li {
        flex: 0 0 calc(50% - 0.5rem);
        /* 2 columns on mobile */
        padding: 6px 10px;
        align-content: flex-start; } }

.trial-box-limit {
  font-size: 14px;
  text-align: center;
  margin-top: 3rem; }

.template-collection .trial-box-limit {
  margin-top: 0; }

.trial-box-disclaimer {
  font-size: 11px;
  line-height: 1.4;
  margin-top: 2rem;
  color: #666; }

.tns-product-carousel__card--health-bullets ul {
  display: flex;
  gap: 0 2rem;
  line-height: 1.3;
  flex-wrap: wrap;
  flex-direction: column;
  margin-left: 0; }
  .tns-product-carousel__card--health-bullets ul li {
    text-align: center;
    font-size: 14px;
    list-style: none; }
    .tns-product-carousel__card--health-bullets ul li:before {
      content: "•";
      display: "inline-block";
      padding-right: 1rem; }

.tns-product-carousel__card--add-to-cart {
  display: flex;
  justify-content: center;
  background: var(--colorBtnPrimary);
  padding: 10px 0; }
  .tns-product-carousel__card--add-to-cart a {
    font-family: var(--typeHeaderPrimary);
    color: white; }

.cart__item--image a {
  background: transparent; }

.collection-hero__content header.section-header:not(.sample-boxes) {
  padding: 1rem;
  background: rgba(0, 0, 0, 0.6); }
  .collection-hero__content header.section-header:not(.sample-boxes) h1, .collection-hero__content header.section-header:not(.sample-boxes) h2, .collection-hero__content header.section-header:not(.sample-boxes) h3, .collection-hero__content header.section-header:not(.sample-boxes) h4, .collection-hero__content header.section-header:not(.sample-boxes) h5 {
    font-family: 'American Typewriter Regular'; }

/* Cart Drawer Enhanced Styles */
.cart-weight-tally--drawer {
  margin: 15px 0px;
  font-size: 14px; }

.cart-cta--drawer {
  flex-direction: row;
  gap: 10px; }

.cart-btn--empty {
  max-width: 160px; }

.cart__subscription-selector--drawer {
  margin: 0 0 0.5rem; }

/* Weight progress bar - 28 segments */
.cart__weight-progress {
  display: flex;
  gap: 2px;
  padding: 6px 0;
  margin-top: 6px; }

.cart__weight-segment {
  flex: 1;
  height: 6px;
  background: rgba(255, 255, 255, 0.25);
  border-radius: 1px;
  transition: background-color 0.2s ease; }

.cart__weight-segment--filled {
  background: rgba(245, 131, 32, 0.66); }

/* When full (all 28 filled), show teal */
.cart__weight-progress--full .cart__weight-segment--filled,
.cart__weight-progress-overlay--full .cart__weight-segment--filled {
  background: rgba(38, 202, 211, 0.33); }

/* Progress bar with overlaid text */
.cart__weight-progress-overlay {
  position: relative;
  margin: 0 0 0 4rem; }

.cart__weight-progress--overlay {
  padding: 0;
  margin-top: 0; }

.cart__weight-progress--overlay .cart__weight-segment {
  height: 18px;
  border-radius: 2px; }

.cart__weight-progress-text {
  position: absolute;
  top: 50%;
  left: 32%;
  transform: translate(-50%, -50%);
  display: flex;
  align-items: center;
  gap: 4px;
  white-space: nowrap;
  z-index: 1; }

.cart__weight-progress-text .cart-weight-tally__current {
  color: white;
  font-weight: 700;
  font-size: 18px;
  transition: color 0.2s ease; }

.cart__weight-progress-text .cart-weight-tally__separator {
  color: white;
  font-size: 16px; }

.cart__weight-progress-text .cart-weight-tally__min {
  color: rgba(255, 255, 255, 0.74) !important;
  font-size: 16px;
  font-weight: 700; }

/* Full state - teal text */
.cart__weight-progress-overlay--full .cart__weight-progress-text .cart-weight-tally__current {
  color: #26cad3; }

.cart__weight-progress-overlay--full .cart__weight-progress-text .cart-weight-tally__separator,
.cart__weight-progress-overlay--full .cart__weight-progress-text .cart-weight-tally__min {
  color: rgba(38, 202, 211, 0.7); }

/* Announcement bar cart progress (on /cart page) - matches drawer header exactly */
.announcement--cart-progress {
  margin-top: 0; }

/* Sticky cart progress when below threshold */
.announcement--sticky {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 100; }

/* Add padding to header when progress bar is fixed (to prevent overlap) */
body.cart-progress-sticky .header-wrapper .site-header {
  margin-top: 36px; }

.announcement__wrapper--cart-progress {
  min-height: auto;
  background: #034956 !important;
  padding: 0.25rem 0.5rem; }

.announcement__cart-progress-row {
  display: flex;
  align-items: center;
  gap: 0.75rem; }
  @media only screen and (max-width: 768px) {
    .announcement__cart-progress-row {
      gap: 0.5rem; } }

.announcement__cart-progress-row .cart__weight-progress-text {
  position: static;
  transform: none;
  flex-shrink: 0; }

.announcement__cart-progress-row .cart__weight-progress-overlay {
  flex: 1;
  margin: 0; }

.cart__weight-progress--announcement {
  padding: 4px 0; }

.cart__weight-progress--announcement .cart__weight-segment {
  height: 18px; }

/* Cart page weight progress card (legacy) */
.cart__weight-progress-card {
  background: #034956;
  border-radius: 12px;
  padding: 16px 20px;
  margin-bottom: 20px;
  max-width: 420px; }

.cart__weight-progress-card-header {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 12px; }
  .cart__weight-progress-card-header .cart-weight-tally__icon {
    width: 24px;
    height: 24px;
    fill: none;
    stroke: white;
    stroke-width: 15px; }
  .cart__weight-progress-card-header .cart-weight-tally__current {
    color: white;
    font-weight: 700;
    font-size: 20px; }
  .cart__weight-progress-card-header .cart-weight-tally__separator {
    color: rgba(255, 255, 255, 0.6);
    margin: 0 4px; }
  .cart__weight-progress-card-header .cart-weight-tally__min {
    color: rgba(255, 255, 255, 0.8);
    font-size: 14px; }

.cart__weight-progress-card--full .cart__weight-progress-card-header .cart-weight-tally__current {
  color: #26cad3; }

.cart__weight-progress--page {
  padding: 0;
  margin-top: 0; }
  @media only screen and (max-width: 768px) {
    .cart__weight-progress--page {
      margin: 0 10px 0 auto;
      max-width: 80%; } }

.cart__weight-progress--page .cart__weight-segment {
  height: 8px;
  border-radius: 2px; }

.cart__checkout--drawer {
  text-align: center; }
  @media only screen and (min-width: 769px) {
    .cart__checkout--drawer {
      margin: 0.25rem; } }

.cart__checkout--drawer:disabled {
  cursor: not-allowed;
  background: #999 !important;
  color: #DDD !important;
  opacity: 1; }

/* Collection Tag Filter */
.collection-tag-filter {
  background: transparent;
  padding: 20px 0 0; }

.collection-tag-filter__buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: center;
  align-items: center;
  max-width: 1000px;
  margin: 0 auto; }

.collection-tag-filter__btn {
  background: white;
  border: 2px solid #034956;
  color: #034956;
  padding: 10px 24px;
  border-radius: 50px;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.5px;
  cursor: pointer;
  transition: all 0.2s ease;
  text-transform: uppercase;
  font-family: var(--typeHeaderPrimary); }

.collection-tag-filter__btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(3, 73, 86, 0.2); }

.collection-tag-filter__btn:focus {
  outline: none; }

.collection-tag-filter__btn:not(.collection-tag-filter__btn--active):focus {
  background: white;
  color: #034956; }

.collection-tag-filter__btn--active {
  background: #0d8494;
  border-color: #0d8494;
  color: white; }

.collection-tag-filter__btn--active:hover {
  background: #0a6b7a;
  border-color: #0a6b7a; }

.collection-tag-filter__no-matches {
  grid-column: 1 / -1;
  text-align: center;
  padding: 60px 20px;
  color: #666;
  font-size: 18px; }

.collection-tag-filter__footer {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  margin: 4rem 0 1rem;
  background-color: var(--colorBody);
  padding: 0.75rem 0;
  position: relative;
  left: 50%;
  transform: translateX(-50%); }
  @media only screen and (max-width: 768px) {
    .collection-tag-filter__footer {
      margin: 2rem 0 0;
      padding: 0.5rem 0;
      width: 100vw; } }

.collection-tag-filter__footer--fixed {
  position: fixed;
  left: 0;
  right: 0;
  z-index: 15;
  margin: 0 40px;
  width: auto;
  transform: none; }
  @media only screen and (max-width: 768px) {
    .collection-tag-filter__footer--fixed {
      width: 100%;
      margin: 0; } }

.collection-tag-filter__footer-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1.5rem;
  width: 100%;
  margin: 0 auto;
  padding: 0 2rem;
  position: relative; }
  @media only screen and (max-width: 768px) {
    .collection-tag-filter__footer-row {
      padding: 0 1rem; } }

.collection-tag-filter__controls-left {
  display: flex;
  align-items: center;
  gap: 1rem; }
  @media only screen and (max-width: 768px) {
    .collection-tag-filter__controls-left {
      display: contents; } }

.collection-tag-filter__footer--grid {
  margin-top: 1.5rem;
  padding-bottom: 1.5rem;
  border-bottom: 1px solid #e5e5e5; }
  @media only screen and (max-width: 768px) {
    .collection-tag-filter__footer--grid {
      display: none; } }

.collection-tag-filter__match-count {
  text-align: right;
  font-size: 1.5rem;
  color: #666;
  margin: 0;
  flex-shrink: 0; }
  @media only screen and (max-width: 768px) {
    .collection-tag-filter__match-count {
      min-width: 6.5rem; } }
  .collection-tag-filter__match-count [data-match-number] {
    font-weight: 600;
    color: #034956; }

.collection-tag-filter__scroll-trigger {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  cursor: pointer;
  flex: 1; }

.collection-tag-filter__scroll-icon {
  display: block;
  color: #034956;
  opacity: 0;
  transition: opacity 0.3s ease; }

.collection-tag-filter__footer--fixed .collection-tag-filter__scroll-icon {
  opacity: 0.5; }

/* Multi-select Toggle */
.collection-tag-filter__toggle {
  display: flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  user-select: none;
  flex-shrink: 0;
  margin-bottom: 0; }

.collection-tag-filter__toggle-input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0; }

.collection-tag-filter__toggle-slider {
  position: relative;
  width: 40px;
  height: 22px;
  background: #ccc;
  border-radius: 22px;
  transition: background 0.2s ease; }

.collection-tag-filter__toggle-slider::before {
  content: '';
  position: absolute;
  top: 3px;
  left: 3px;
  width: 16px;
  height: 16px;
  background: white;
  border-radius: 50%;
  transition: transform 0.2s ease; }

.collection-tag-filter__toggle-input:checked + .collection-tag-filter__toggle-slider {
  background: #0d8494; }

.collection-tag-filter__toggle-input:checked + .collection-tag-filter__toggle-slider::before {
  transform: translateX(18px); }

.collection-tag-filter__toggle-label {
  font-size: 13px;
  font-weight: 500;
  color: #034956; }

.collection-tag-filter__selection-controls {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-shrink: 0; }
  @media only screen and (min-width: 769px) {
    .collection-tag-filter__selection-controls [data-add-selected] {
      position: absolute;
      right: 12rem; } }

.collection-tag-filter__select-btn,
.collection-tag-filter__add-all-btn {
  border: none;
  color: white;
  padding: 6px 14px;
  border-radius: 3px;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.3;
  cursor: pointer;
  transition: all 0.15s ease;
  font-family: inherit;
  box-sizing: border-box;
  outline: none;
  box-shadow: none;
  -webkit-appearance: none;
  appearance: none; }

.collection-tag-filter__select-btn {
  background: #0d8494; }

.collection-tag-filter__select-btn:hover:not(:disabled) {
  background: #0a6b7a; }

.collection-tag-filter__select-btn:disabled,
.collection-tag-filter__add-all-btn:disabled {
  background: #ccc;
  opacity: 1;
  cursor: not-allowed; }

.collection-tag-filter__select-btn[data-unselect-all] {
  background: transparent;
  padding: 6px 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #333; }
  .collection-tag-filter__select-btn[data-unselect-all] svg {
    display: block; }

.collection-tag-filter__select-btn[data-unselect-all]:disabled {
  background: transparent;
  color: #ccc; }

.collection-tag-filter__select-btn[data-unselect-all]:hover:not(:disabled) {
  background: transparent;
  color: #000; }

.collection-tag-filter__add-all-btn {
  background: #f97316; }

.collection-tag-filter__add-all-btn:hover:not(:disabled) {
  background: #e05a1a; }

@media only screen and (max-width: 768px) {
  .collection-tag-filter__buttons {
    gap: 8px; }

  .collection-tag-filter__btn {
    padding: 8px 16px;
    font-size: 12px; }

  .collection-tag-filter__footer {
    flex-direction: column;
    gap: 0.25rem; }

  .collection-tag-filter__footer-row {
    flex-wrap: wrap;
    gap: 0rem 1rem;
    justify-content: space-between; }

  .collection-tag-filter__selection-controls {
    flex-basis: 100%;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 0.5rem;
    order: 4;
    padding-bottom: 0.25rem; }
    .collection-tag-filter__selection-controls [data-select-all] {
      order: 1; }
    .collection-tag-filter__selection-controls [data-unselect-all] {
      order: 2; }
    .collection-tag-filter__selection-controls [data-add-selected] {
      order: 3;
      margin-left: auto; }

  .collection-tag-filter__toggle {
    order: 1; }

  .collection-tag-filter__scroll-trigger {
    order: 2; }

  .collection-tag-filter__match-count {
    order: 3; }

  .collection-tag-filter__select-btn,
  .collection-tag-filter__add-all-btn {
    font-size: 11px;
    padding: 6px 10px; }

  .collection-tag-filter__toggle-label {
    font-size: 12px; } }
/* Ensure product grid items can contain absolutely positioned badges */
[data-product-grid] {
  position: relative; }

.collection-filter-badge {
  position: absolute;
  top: 10px;
  left: 10px;
  background: #0d8494;
  color: white;
  font-size: 12px;
  font-weight: 600;
  padding: 4px 8px;
  border-radius: 4px;
  z-index: 1;
  display: flex;
  align-items: center;
  gap: 6px;
  cursor: pointer;
  transition: background-color 0.15s ease; }

.collection-filter-badge:hover {
  background: #0a6b7a; }

.collection-filter-badge__checkbox {
  /* Visually hide but keep accessible for label click */
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
  margin: 0 !important;
  pointer-events: none; }

/* Visual checkbox span */
.collection-filter-badge__check {
  display: inline-block;
  width: 16px;
  height: 16px;
  margin-left: 5px;
  background-color: white;
  border: 2px solid white;
  border-radius: 3px;
  position: relative;
  flex-shrink: 0;
  cursor: pointer; }

/* Checked state - sibling selector */
.collection-filter-badge__checkbox:checked + .collection-filter-badge__check {
  background-color: white; }

.collection-filter-badge__checkbox:checked + .collection-filter-badge__check::after {
  content: '';
  position: absolute;
  left: 3px;
  top: -1px;
  width: 6px;
  height: 10px;
  border: solid black;
  border-width: 0 2.5px 2.5px 0;
  transform: rotate(45deg); }

.collection-filter-badge__text {
  pointer-events: none; }

@media only screen and (max-width: 768px) {
  .collection-filter-badge {
    top: 25px;
    left: -5px;
    font-size: 11px;
    padding: 5px 10px;
    gap: 5px; }

  .collection-filter-badge__check {
    width: 14px;
    height: 14px; }

  .collection-filter-badge__checkbox:checked + .collection-filter-badge__check::after {
    left: 2px;
    top: -1px;
    width: 5px;
    height: 9px; } }
/* ===============================================
   Product Grid Learn More Button
   =============================================== */
.grid-product__learn-more {
  padding: 0 15px;
  text-align: center;
  opacity: 1 !important;
  transform: none !important;
  display: inline-block; }

.grid-product__learn-more-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  background: #034956 !important;
  color: white !important;
  border: none;
  text-decoration: none !important;
  min-width: 203px;
  min-height: 40px;
  width: 10%;
  margin: 0 auto; }
  .grid-product__learn-more-btn svg {
    margin-left: 10px;
    flex-shrink: 0; }
  .grid-product__learn-more-btn .filled-arrow__circle {
    fill: #26CAD3; }
  .grid-product__learn-more-btn .filled-arrow__arrow {
    fill: #fff; }
  .grid-product__learn-more-btn:hover {
    background: #26cad3 !important;
    color: white !important;
    text-decoration: none !important; }
    .grid-product__learn-more-btn:hover .filled-arrow__circle {
      fill: #fff; }
    .grid-product__learn-more-btn:hover .filled-arrow__arrow {
      fill: #26CAD3; }
  .grid-product__learn-more-btn:active, .grid-product__learn-more-btn:focus {
    background: #26cad3 !important;
    color: white !important;
    text-decoration: none !important; }

/* ===============================================
   Toast Notifications
   =============================================== */
.toast-container {
  position: fixed;
  top: 20px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2147483651 !important;
  display: flex;
  flex-direction: column;
  gap: 12px;
  max-width: 400px;
  pointer-events: none;
  align-items: center; }
  @media only screen and (max-width: 768px) {
    .toast-container {
      top: 10px;
      right: 10px;
      left: 10px;
      transform: none; } }

@media only screen and (min-width: 769px) {
  .toast-container--drawer-open {
    top: 20px !important;
    bottom: auto !important;
    right: 20px !important;
    left: auto !important;
    transform: none !important;
    align-items: flex-end; } }
@media only screen and (max-width: 768px) {
  .toast-container--drawer-open {
    left: 10px !important;
    right: 10px !important; } }

.toast {
  background: white;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  padding: 16px 20px;
  display: flex;
  align-items: center;
  gap: 12px;
  opacity: 0;
  transform: translateY(-100px);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  pointer-events: auto;
  border-left: 4px solid #26CAD3; }

@media only screen and (min-width: 769px) {
  .toast-container--drawer-open .toast {
    transform: translateX(400px) !important; } }

.toast__icon {
  font-size: 20px;
  line-height: 1;
  flex-shrink: 0; }

.toast__message {
  flex: 1;
  font-size: 14px;
  line-height: 1.5;
  color: #333; }

.toast__close {
  background: none;
  border: none;
  font-size: 24px;
  line-height: 1;
  color: #999;
  cursor: pointer;
  padding: 0;
  margin-left: auto;
  flex-shrink: 0;
  transition: color 0.2s; }

.toast__close:hover {
  color: #333; }

.toast__actions {
  display: flex;
  gap: 12px;
  justify-content: center; }

.toast__btn {
  flex: 1;
  padding: 10px 20px;
  border-radius: 6px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.3;
  cursor: pointer;
  transition: all 0.2s;
  border: 2px solid transparent; }

.toast__btn--cancel {
  background: #f3f4f6;
  color: #6b7280;
  border-color: #e5e7eb; }

.toast__btn--cancel:hover {
  background: #e5e7eb;
  color: #374151; }

.toast__btn--confirm {
  background: #26CAD3;
  color: white;
  border-color: #26CAD3; }

.toast__btn--confirm:hover {
  background: #1fb5bd;
  border-color: #1fb5bd; }

.toast__btn--confirm-danger {
  background: #dc2626;
  border-color: #dc2626; }
  .toast__btn--confirm-danger:hover {
    background: #b91c1c;
    border-color: #b91c1c; }

.toast__btn--confirm-warning {
  background: #f97316;
  border-color: #f97316; }
  .toast__btn--confirm-warning:hover {
    background: #ea580c;
    border-color: #ea580c; }

.toast--show {
  opacity: 1;
  transform: translateY(0); }

@media only screen and (min-width: 769px) {
  .toast-container--drawer-open .toast--show {
    transform: translateX(0) !important; } }
@media only screen and (max-width: 768px) {
  .toast-container--drawer-open .toast--show {
    transform: translateY(0) !important; } }

.toast--info {
  border-left-color: #26CAD3; }

.toast--info .toast__icon {
  color: #26CAD3; }

.toast--success {
  border-left-color: #10b981; }

.toast--success .toast__icon {
  color: #10b981; }

.toast--warning {
  border-left-color: #f59e0b; }

.toast--warning .toast__icon {
  color: #f59e0b; }

.toast--error {
  border-left-color: #ef4444; }

.toast--error .toast__icon {
  color: #ef4444; }

.toast--confirm {
  flex-direction: column;
  align-items: stretch; }

.toast-container--empty-cart {
  top: 20px !important;
  bottom: auto !important;
  right: 20px !important;
  left: auto !important;
  transform: none !important;
  align-items: flex-end; }
  @media only screen and (max-width: 768px) {
    .toast-container--empty-cart {
      top: 10px !important;
      right: 10px !important; } }

.toast-container--empty-cart .toast {
  transform: translateX(400px) !important; }
  @media only screen and (max-width: 768px) {
    .toast-container--empty-cart .toast {
      transform: translateX(350px) !important; } }

.toast-container--empty-cart .toast--show {
  transform: translateX(0) !important; }

.toast-container--empty-cart .toast__icon {
  display: none; }

.calc-link {
  display: inline-block;
  margin-top: 10px; }

.vmp-find-a-retailer {
  display: none; }

/* ===============================================
   Cart Add-ons Section
   =============================================== */
.cart__addons {
  margin: 40px 0;
  border-top: 1px solid #e8e8e8;
  overflow: visible;
  position: relative; }
  @media screen and (max-width: 749px) {
    .cart__addons {
      margin: 30px 0; } }

.cart__addons-title {
  font-size: 24px;
  font-weight: 600;
  margin: 2rem 0;
  text-align: center;
  color: #333; }
  @media screen and (max-width: 749px) {
    .cart__addons-title {
      font-size: 20px;
      margin-bottom: 20px; } }

.cart__addons-carousel {
  position: relative;
  max-width: 100%;
  padding: 0 50px; }
  @media screen and (max-width: 749px) {
    .cart__addons-carousel {
      padding: 0; } }

.cart__addons-scroller {
  overflow-x: hidden;
  overflow-y: visible;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch; }
  @media screen and (max-width: 749px) {
    .cart__addons-scroller {
      overflow-x: auto;
      overflow-y: visible;
      scroll-snap-type: x mandatory; } }

.cart__addons-wrapper {
  display: flex;
  gap: 16px; }
  @media screen and (max-width: 749px) {
    .cart__addons-wrapper {
      gap: 12px; } }

.cart__addon-item {
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid #e8e8e8;
  border-radius: 8px;
  padding: 12px;
  transition: box-shadow 0.2s ease, transform 0.2s ease;
  text-align: center; }
  .cart__addon-item:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    transform: translateY(-2px); }
  @media screen and (max-width: 749px) {
    .cart__addon-item {
      flex: 0 0 160px;
      padding: 10px;
      scroll-snap-align: start; } }

.cart__addon-image-link {
  display: block;
  margin-bottom: 12px;
  overflow: hidden;
  border-radius: 6px;
  background: #f9f9f9; }
  @media screen and (max-width: 749px) {
    .cart__addon-image-link {
      margin-bottom: 10px; } }

.cart__addon-image {
  width: 100%;
  height: auto;
  display: block;
  transition: transform 0.3s ease; }
  .cart__addon-item:hover .cart__addon-image {
    transform: scale(1.05); }

.cart__addon-details {
  display: flex;
  flex-direction: column;
  flex: 1; }

.cart__addon-title {
  font-size: 17px;
  line-height: 1.2;
  color: #333;
  text-decoration: none;
  margin-bottom: 8px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 38px;
  font-family: 'Cooper BT Light'; }
  .cart__addon-title:hover {
    color: #26CAD3; }
  @media only screen and (max-width: 768px) {
    .cart__addon-title {
      font-size: 13px;
      min-height: 36px; } }

.cart__addon-price {
  font-size: 16px;
  font-weight: 600;
  color: #333;
  margin-bottom: 12px; }
  @media only screen and (max-width: 768px) {
    .cart__addon-price {
      font-size: 14px;
      margin-bottom: 10px; } }

.cart__addon-buttons {
  display: flex;
  gap: 6px;
  margin-top: auto; }
  @media screen and (max-width: 749px) {
    .cart__addon-buttons {
      flex-direction: column;
      gap: 4px; } }

.cart__addon-add {
  flex: 1;
  background-color: var(--colorBtnPrimary);
  color: white;
  border: none;
  border-radius: 3px;
  padding: 6px 14px;
  font-size: 13px;
  font-weight: 600;
  font-family: inherit;
  line-height: 1.3;
  cursor: pointer;
  text-align: center;
  transition: all 0.2s ease; }
  .cart__addon-add:hover {
    opacity: 0.9; }
  .cart__addon-add:disabled {
    opacity: 0.6;
    cursor: not-allowed; }

.cart__addon-add--subscription {
  background-color: #26CAD3; }

.cart__addon-add--onetime {
  background-color: var(--colorBtnPrimary); }

.cart__addons-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 40px;
  height: 40px;
  background: white;
  border: 1px solid #e8e8e8;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s ease;
  z-index: 2;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); }
  .cart__addons-arrow:hover {
    background-color: #26CAD3;
    border-color: #26CAD3; }
    .cart__addons-arrow:hover svg {
      stroke: white; }
  .cart__addons-arrow:active {
    transform: translateY(-50%) scale(0.95); }
  .cart__addons-arrow svg {
    width: 20px;
    height: 20px;
    stroke: #333;
    stroke-width: 2;
    transition: stroke 0.2s ease; }
  @media screen and (max-width: 749px) {
    .cart__addons-arrow {
      display: none; } }

.cart__addons-arrow--prev {
  left: 0; }

.cart__addons-arrow--next {
  right: 0; }

/* ===============================================
   Cart Pet Group Headers (Multi-Pet Support)
   =============================================== */
.cart__pet-group-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px 16px;
  margin: 16px 0 8px;
  background: white;
  border-radius: 8px;
  border-left: 4px solid #26cad3; }
  .cart__pet-group-header:first-child {
    margin-top: 0; }

.cart__pet-group-name {
  font-family: var(--typeHeaderPrimary), var(--typeHeaderFallback);
  font-size: 16px;
  font-weight: 600;
  color: #333; }

.cart__pet-group-actions {
  display: flex;
  align-items: center;
  gap: 12px; }

.cart__pet-group-edit {
  font-size: 13px;
  color: #26cad3;
  text-decoration: none;
  transition: color 0.2s ease; }
  .cart__pet-group-edit:hover {
    color: #1ea1a8;
    text-decoration: underline; }

.cart__pet-group-delete {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  padding: 0;
  background: transparent;
  border: 1px solid #ddd;
  border-radius: 4px;
  color: #999;
  cursor: pointer;
  transition: all 0.2s ease; }
  .cart__pet-group-delete:hover {
    background: #fee;
    border-color: #c66;
    color: #c66; }
  .cart__pet-group-delete svg {
    width: 14px;
    height: 14px; }

.cart__pet-group {
  margin-bottom: 16px; }

/* Build Your Own Banner - for items not part of a meal plan */
.cart__build-your-own-banner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 16px;
  margin: 16px 0 8px;
  background: white;
  border-radius: 8px;
  border-left: 4px solid #f58320;
  /* Orange accent to match brand */ }

.cart__build-your-own-label {
  font-family: var(--typeHeaderPrimary), var(--typeHeaderFallback);
  font-size: 16px;
  font-weight: 600;
  color: #333;
  text-decoration: none; }
  .cart__build-your-own-label:hover {
    text-decoration: underline; }

/* BYO label line break - hide by default (cart page), show in drawer */
.drawer--cart .byo-label-break {
  display: block; }

.cart__build-your-own-actions {
  display: flex;
  align-items: center;
  gap: 0; }

.cart__byo-action {
  font-family: var(--typeBasePrimary), var(--typeBaseFallback);
  font-size: 13px;
  font-weight: 500;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
  text-decoration: none;
  transition: opacity 0.2s; }
  .cart__byo-action:hover {
    opacity: 0.7; }

.cart__byo-action--autofill {
  background: var(--colorBtnPrimary);
  color: white;
  padding: 4px 10px;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 600;
  text-transform: lowercase; }
  .cart__byo-action--autofill:hover {
    opacity: 0.85; }

.cart__byo-action--delete {
  color: #999;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  width: 40px; }
  .cart__byo-action--delete:hover {
    color: #e74c3c; }
  .cart__byo-action--delete svg {
    width: 16px;
    height: 18px; }

.cart__byo-subtotal {
  font-family: var(--typeBasePrimary), var(--typeBaseFallback);
  font-size: 14px;
  font-weight: 600;
  color: #333;
  width: 100px;
  text-align: right; }

/* Trash icon in table header */
.cart__header-trash {
  background: none;
  border: none;
  color: #999;
  cursor: pointer;
  padding: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: color 0.2s;
  transform: translateX(2.2rem); }
  .cart__header-trash:hover {
    color: #e74c3c; }
  .cart__header-trash svg {
    width: 18px;
    height: 18px; }

.cart__item--remove {
  width: 40px;
  flex-shrink: 0; }

/* Tighten spacing between header and table */
.cart-page .section-header {
  margin-bottom: 8px; }

.cart-page .cart__item--headers {
  margin-top: 4rem;
  border-bottom: none;
  padding-bottom: 0.25rem; }

/* Cart page adjustments - match drawer styling */
.cart-page .cart__build-your-own-banner {
  padding: 10px 16px;
  margin: 16px -1rem 8px;
  display: flex;
  align-items: center;
  gap: 12px; }

.cart-page .cart__build-your-own-label {
  font-size: 14px;
  flex: 1 1 auto;
  min-width: 0;
  line-height: 1.3; }

.cart-page .cart__build-your-own-actions {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 10px; }

.cart-page .cart__byo-action--autofill {
  width: auto;
  padding: 4px 12px;
  margin-right: 1rem;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: 11px; }

.cart-page .cart__byo-subtotal {
  font-size: 13px;
  width: auto;
  min-width: 45px;
  padding-right: 0;
  text-align: right; }

.cart-page .cart__byo-action--delete {
  width: auto;
  margin-left: 0; }

/* Drawer adjustments - BYO banner stacked layout */
.drawer--cart .cart__build-your-own-banner {
  margin-left: -16px;
  margin-right: -16px;
  margin-top: 0;
  border-radius: 0;
  padding: 10px 16px;
  display: flex;
  align-items: center;
  gap: 12px; }

.drawer--cart .cart__build-your-own-label {
  font-size: 14px;
  flex: 1 1 auto;
  min-width: 0;
  line-height: 1.3; }

.drawer--cart .cart__build-your-own-actions {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 10px; }

.drawer--cart .cart__byo-action {
  font-size: 12px; }

.drawer--cart .cart__byo-action--autofill {
  width: auto;
  padding: 4px 12px;
  margin-right: 1rem;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: 11px; }

.drawer--cart .cart__byo-subtotal {
  font-size: 13px;
  width: auto;
  min-width: 45px;
  padding-right: 0;
  text-align: right; }

.drawer--cart .cart__byo-action--delete {
  width: auto;
  margin-left: 0; }

.cart__regular-items {
  margin-bottom: 16px; }

/* Cart page adjustments for pet groups */
.cart-page .cart__pet-group-header {
  padding: 16px 20px;
  margin: 20px 0 12px; }

.cart-page .cart__pet-group-name {
  font-size: 18px; }

.cart-page .cart__pet-group-edit {
  font-size: 14px; }

.cart-page .cart__pet-group-delete {
  width: 32px;
  height: 32px; }
  .cart-page .cart__pet-group-delete svg {
    width: 16px;
    height: 16px; }

/* Drawer-specific adjustments */
.drawer--cart .cart__pet-group-header {
  margin-left: -16px;
  margin-right: -16px;
  border-radius: 0; }

.badge-save {
  display: inline-block;
  padding: 2px 6px;
  background: #26cad3;
  color: white;
  font-size: 12px;
  font-weight: bold;
  border-radius: 3px;
  margin: -1px 7px 0 0; }

@media only screen and (max-width: 768px) {
  .product-bottom-grid .product-reviews {
    margin-top: 4rem; } }
.product-bottom-grid .product-reviews h2.jdgm-rev-widg__title {
  font-size: 2rem;
  font-weight: 400; }

/* ===============================================
   FAQ Search Section
   =============================================== */
div [data-section-type="tns-faq-search"] {
  margin: 1rem 0 3rem; }

.tns-faq-search {
  max-width: 600px;
  margin: 0 auto; }

.tns-faq-search__heading {
  margin-bottom: 1.5rem; }

.tns-faq-search__form {
  position: relative;
  margin-bottom: 0.5rem; }

.tns-faq-search__input {
  width: 100%;
  padding: 1rem 3rem 1rem 1rem;
  font-size: 16px;
  border: 2px solid #ddd;
  border-radius: 8px;
  outline: none;
  transition: border-color 0.2s; }
  @media only screen and (max-width: 768px) {
    .tns-faq-search__input {
      padding: 6px 12px; } }

.tns-faq-search__input:focus {
  border-color: var(--colorBtnPrimary, #034956); }

.tns-faq-search__clear {
  position: absolute;
  right: 0.75rem;
  top: 0;
  transform: translateY(30%);
  background: none;
  border: none;
  cursor: pointer;
  padding: 0.5rem;
  opacity: 0.6;
  transition: opacity 0.2s; }
  @media only screen and (max-width: 768px) {
    .tns-faq-search__clear {
      right: 0.5rem;
      transform: translateY(10%); } }

.tns-faq-search__clear:hover {
  opacity: 1; }

.tns-faq-search__clear svg {
  stroke: currentColor;
  stroke-width: 3;
  width: 20px;
  height: 20px; }

.tns-faq-search__results {
  font-size: 14px;
  color: #666;
  text-align: center; }

/* Highlight styling for matched text */
.faq-search-highlight {
  background-color: #fff59d;
  padding: 0.1em 0.2em;
  border-radius: 2px;
  cursor: pointer;
  transition: background-color 0.2s; }

.faq-search-highlight:hover {
  background-color: #ffeb3b; }

/* ===============================================
   FAQ Accordion - Scroll to Top Button
   =============================================== */
.tns-faq-accordion__header {
  position: relative;
  margin-top: 3rem; }

.tns-faq-accordion__scroll-top {
  display: block;
  position: absolute;
  right: 2.5rem;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  opacity: 0.7;
  transition: color 0.2s, opacity 0.2s;
  /* Mobile: centered above heading */
  /* Hide on first FAQ section */ }
  .tns-faq-accordion__scroll-top:hover {
    opacity: 1; }
  .tns-faq-accordion__scroll-top svg {
    width: 25px;
    height: 25px;
    display: block; }
  @media only screen and (max-width: 768px) {
    .tns-faq-accordion__scroll-top {
      transform: translate(-8rem, -3.33rem);
      display: block;
      margin: 0 auto 1rem; } }
  .tns-faq-accordion__scroll-top.is-first {
    display: none !important; }

/* ===============================================
   Three Column Nav CTA Section
   =============================================== */
.tns-three-column-nav-cta {
  margin: 1rem 0 2rem; }
  .tns-three-column-nav-cta .tns-three-column__wrapper {
    padding: 20px 0 !important; }

.tns-three-column__button--nav-cta {
  text-align: center; }

@media only screen and (max-width: 768px) {
  .tns-three-column-nav-cta .tns-three-column__grid {
    gap: 2rem; } }

.tns-nav-cta-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: "Cooper BT Medium";
  font-size: 16px;
  background: var(--colorBtnPrimary);
  color: #fff;
  border: none;
  border-radius: 50px;
  text-decoration: none;
  padding: 6px 14px 6px 20px;
  transition: background 0.2s, opacity 0.2s; }
  .tns-nav-cta-btn svg {
    margin-left: 10px;
    flex-shrink: 0; }
  .tns-nav-cta-btn .filled-arrow__circle {
    fill: #fff; }
  .tns-nav-cta-btn .filled-arrow__arrow {
    fill: var(--colorBtnPrimary); }
  .tns-nav-cta-btn:hover {
    opacity: 0.9;
    color: #fff;
    text-decoration: none; }
  .tns-nav-cta-btn:active, .tns-nav-cta-btn:focus {
    opacity: 0.9;
    color: #fff;
    text-decoration: none; }

/* Secondary style - dark teal bg, white text */
.tns-nav-cta-btn--secondary {
  background: #034956;
  color: #fff; }
  .tns-nav-cta-btn--secondary .filled-arrow__circle {
    fill: #fff; }
  .tns-nav-cta-btn--secondary .filled-arrow__arrow {
    fill: #034956; }

/* Menu-link variant: orange button with down arrow */
.menu-link {
  margin-top: -1rem;
  margin-bottom: -4rem; }
  @media only screen and (min-width: 769px) {
    .menu-link {
      display: none; } }
  .menu-link .tns-nav-cta-btn {
    background: var(--colorBtnPrimary);
    color: var(--colorBtnPrimaryText); }
    .menu-link .tns-nav-cta-btn svg {
      transform: rotate(90deg); }
    .menu-link .tns-nav-cta-btn .filled-arrow__circle {
      fill: var(--colorBtnPrimaryText); }
    .menu-link .tns-nav-cta-btn .filled-arrow__arrow {
      fill: var(--colorBtnPrimary); }

.wordmark {
  font-family: "American Typewriter Regular";
  color: #000;
  letter-spacing: -2px; }
  .wordmark em {
    color: #26cad3;
    font-style: normal; }

@media only screen and (max-width: 768px) {
  .homepage-top-section .feature-row .feature-row__text {
    padding: 1rem 0.5rem 0;
    margin-bottom: 0 !important; }
    .homepage-top-section .feature-row .feature-row__text .h1 {
      font-size: 52px !important;
      line-height: 52px !important;
      margin-top: 1rem; } }

/* Cart bubble visibility - for dynamic JS updates */
.cart-link__bubble--visible {
  display: block;
  position: absolute;
  top: 15px;
  right: -3px;
  width: 18px;
  height: 18px;
  border-radius: 50%; }

[data-icon=cart] .cart-link__bubble--visible {
  top: 0;
  right: -4px; }

/* MPQ step transitions - prevent white flash between steps */
#volt-meal-plan-wrapper .vmp-step-wrapper,
#volt-meal-plan-wrapper .vmp-cart-wrapper {
  /* Separate transitions: transform/opacity animate, visibility changes instantly */
  transition: transform 500ms cubic-bezier(0.77, 0, 0.175, 1), opacity 500ms cubic-bezier(0.77, 0, 0.175, 1), visibility 0s; }

#volt-meal-plan-wrapper .vmp-step-wrapper:not(.is-showtime),
#volt-meal-plan-wrapper .vmp-cart-wrapper:not(.is-showtime) {
  /* Delay hiding until transition completes */
  transition: transform 500ms cubic-bezier(0.77, 0, 0.175, 1), opacity 500ms cubic-bezier(0.77, 0, 0.175, 1), visibility 0s 500ms; }

/* MPQ Pet Selector - large dropdown matching h2 size */
.vmp-pet-selector-wrapper {
  display: flex;
  align-items: center;
  gap: 0.75rem; }

.vmp-pet-selector {
  font-family: var(--typeHeaderPrimary), var(--typeHeaderFallback);
  font-size: 42px;
  line-height: 52px;
  font-weight: 400;
  letter-spacing: 0.03em;
  color: #F6FAF7;
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 0;
  padding-right: 1.5rem;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23F6FAF7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right center;
  background-size: 20px; }
  .vmp-pet-selector option {
    background: #1A5B5E;
    color: #F6FAF7;
    font-size: 18px; }
  @media (max-width: 600px) {
    .vmp-pet-selector {
      font-size: 2.75rem !important;
      line-height: 44px; } }

.vmp-memorial-profile-btn,
.vmp-delete-profile-btn {
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 0.25rem;
  color: rgba(255, 255, 255, 0.4);
  transition: color 0.2s;
  margin-left: 0.75rem; }
  .vmp-memorial-profile-btn:hover,
  .vmp-delete-profile-btn:hover {
    color: #fff; }
  .vmp-memorial-profile-btn svg,
  .vmp-delete-profile-btn svg {
    display: block; }

/* Memorial profile state - disable all edits */
#volt-meal-plan.is-memorial {
  /* Hide memorial rainbow button when already memorial */ }
  #volt-meal-plan.is-memorial .vmp-step-form-wrapper {
    pointer-events: none;
    opacity: 0.6; }
    #volt-meal-plan.is-memorial .vmp-step-form-wrapper input, #volt-meal-plan.is-memorial .vmp-step-form-wrapper select, #volt-meal-plan.is-memorial .vmp-step-form-wrapper textarea, #volt-meal-plan.is-memorial .vmp-step-form-wrapper button {
      cursor: not-allowed; }
  #volt-meal-plan.is-memorial .vmp-form-radio label,
  #volt-meal-plan.is-memorial .vmp-form-checkbox label {
    cursor: not-allowed; }
  #volt-meal-plan.is-memorial .vmp-memorial-profile-btn {
    display: none !important; }

/* Memorial indicator button (clickable for testing) */
.vmp-memorial-indicator {
  background: rgba(255, 255, 255, 0.1);
  border: none;
  margin-left: 0.75rem;
  font-size: 0.75rem;
  color: rgba(255, 255, 255, 0.7);
  padding: 0.25rem 0.5rem;
  border-radius: 4px;
  cursor: pointer;
  transition: all 0.2s; }
  .vmp-memorial-indicator:hover {
    background: rgba(255, 255, 255, 0.2);
    color: #fff; }
