/* Taxi4D: header, navigation, footer and natural-height banner. */
#teepublic .vc-header {
  background: linear-gradient(120deg, #03070e 0%, #0b1b31 65%, #07365b 100%);
  border-bottom: 1px solid rgba(77, 181, 255, 0.3);
  box-shadow: 0 8px 28px rgba(0, 15, 35, 0.24);
}
#teepublic .vc-header__container {
  min-height: 88px;
  gap: 20px;
}
#teepublic .vc-header-logo {
  padding-left: 0;
  min-width: 0;
}
#teepublic .header-mini__logo img {
  display: block !important;
  width: 180px !important;
  height: auto !important;
  margin: 0 !important;
  filter: drop-shadow(0 4px 12px rgba(0, 139, 255, 0.25));
}
#teepublic .vc-header-logo > .vc-header-logo__wrapper,
#teepublic .header-mini__logo > .vc-header-logo__wrapper:empty {
  display: none;
}
#teepublic .vc-header .btn,
#teepublic .vc-header .link,
#teepublic .vc-header .teepublicon {
  color: #e5edf7;
}
#teepublic .m-header__search-field-container {
  background: rgba(255, 255, 255, 0.055);
  border: 1px solid rgba(186, 211, 237, 0.2);
  border-radius: 12px;
  overflow: hidden;
}
#teepublic .m-header__search-field {
  background: transparent;
  color: #f3f7ff;
}
#teepublic .m-header__search-field::placeholder {
  color: #a8bdd4;
}
#teepublic .m-header__search-field-placeholder {
  color: #a8bdd4;
}
#teepublic .m-header__search-submit {
  background: #087cda;
  color: white;
  border-radius: 10px;
}
#teepublic .vc-header__cta-button {
  background: linear-gradient(135deg, #35bbff, #0879df 60%, #0751a3);
  border: 1px solid #6bc9ff;
  border-radius: 12px;
  color: white;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.25),
    0 5px 18px rgba(0, 120, 255, 0.22);
}
#teepublic .m-explore-nav {
  background: linear-gradient(180deg, #0c1a2b, #06111f);
  border-bottom: 1px solid rgba(65, 161, 238, 0.3);
}
#teepublic .m-explore-nav .link,
#teepublic .m-explore-nav .m-tab-nav__item a {
  color: #d4e1f0;
}
#teepublic .m-explore-nav__tab-content {
  gap: 8px;
  padding: 12px 0;
}
#teepublic .m-explore-nav__link,
#teepublic .m-explore-nav__cta {
  border: 1px solid rgba(157, 190, 224, 0.16);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.035);
  padding: 9px 14px;
  transition:
    background 0.2s,
    border-color 0.2s,
    color 0.2s;
}
#teepublic .m-explore-nav__link:hover,
#teepublic .m-explore-nav__cta:hover {
  background: rgba(22, 144, 244, 0.16);
  border-color: #399ee9;
  color: white;
}
#teepublic .m-explore-nav__link img {
  width: 24px;
  height: 24px;
  object-fit: contain;
}
#teepublic .m-explore-nav .m-tab-nav__item {
  border-color: #299fff;
}
#teepublic .m-footer-sitemap {
  background: radial-gradient(ellipse at 15% 0%, #103456 0%, transparent 55%), linear-gradient(135deg, #08121f, #030810);
  color: #b9c9dd;
  border-top: 1px solid #215886;
  box-shadow: inset 0 1px 0 rgba(190, 218, 245, 0.08);
}
#teepublic .m-footer-sitemap-container {
  padding-top: 48px;
  padding-bottom: 40px;
  gap: 32px;
}
#teepublic .m-footer-sitemap .link {
  color: #b9c9dd;
  transition: color 0.2s;
}
#teepublic .m-footer-sitemap .link:hover {
  color: #54baff;
}
#teepublic .m-footer-sitemap h4,
#teepublic .m-footer__guarantee-headline {
  color: #eef5ff;
  letter-spacing: 0.04em;
}
#teepublic .m-footer__trusted-section {
  padding: 24px;
  background: rgba(255, 255, 255, 0.035);
  border: 1px solid rgba(106, 163, 211, 0.24);
  border-radius: 18px;
}
#teepublic .m-footer__trusted-section figure img {
  border-radius: 12px;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.3);
}
#teepublic .m-footer__legal-bar {
  background: #03070d;
  color: #91a7c0;
  border-top: 1px solid rgba(106, 163, 211, 0.2);
}
#teepublic .m-footer__legal-bar .link {
  color: #a8bdd4;
}
#teepublic .m-footer__legal-bar .link:hover {
  color: #54baff;
}
#teepublic .vc-header a:focus-visible,
#teepublic .vc-header button:focus-visible,
#teepublic .m-explore-nav a:focus-visible,
#teepublic .m-footer-sitemap a:focus-visible {
  outline: 2px solid #78caff;
  outline-offset: 4px;
}
/* Remove square product-mockup sizing; retain the existing gallery controls. */
#teepublic .m-product-preview__glider {
  aspect-ratio: auto;
  height: auto;
  background: #07121f;
}
#teepublic .m-product-preview__glider-track {
  position: relative;
  height: auto;
}
#teepublic .m-product-preview__glider .glide__slides {
  height: auto;
  align-items: flex-start;
}
#teepublic .m-product-preview__glider-slide {
  padding-top: 0;
  height: auto;
  flex-shrink: 0;
}
#teepublic .m-product-preview__glider-img {
  position: relative;
  inset: auto;
  display: block;
}
#teepublic .m-product-preview__glider-img img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}
#teepublic .m-product-preview__thumbs {
  margin-top: 12px;
}
#teepublic .m-product-preview__main {
  margin-left: 0;
  margin-right: 0;
}
@media (max-width: 767px) {
  #teepublic .vc-header__container {
    min-height: 72px;
    gap: 10px;
    padding: 12px 16px;
  }
  #teepublic .header-mini__logo img {
    width: 142px !important;
    max-width: 100%;
  }
  #teepublic .vc-header__cta-button {
    padding: 10px 13px;
    font-size: 12px;
  }
  #teepublic .vc-header__actions-container {
    gap: 8px;
  }
  #teepublic .vc-header__search-container {
    min-width: 0;
  }
  #teepublic .m-explore-nav__tab-content {
    overflow-x: auto;
    flex-wrap: nowrap;
    justify-content: flex-start;
    padding: 12px 0;
    scrollbar-width: thin;
    scrollbar-color: #245784 transparent;
  }
  #teepublic .m-explore-nav__link,
  #teepublic .m-explore-nav__cta {
    flex-shrink: 0;
    white-space: nowrap;
    font-size: 12px;
  }
  #teepublic .m-product-preview__gallery {
    display: flex;
    flex-direction: column;
    gap: 12px;
  }
  #teepublic .m-product-preview__thumbs {
    margin: 0;
  }
  #teepublic .m-product-preview__glider {
    border-radius: 16px;
  }
  #teepublic .m-product-preview__glider-img img {
    border-radius: 16px;
  }
  #teepublic .m-footer-sitemap-container {
    padding-top: 32px;
    padding-bottom: 28px;
    gap: 24px;
  }
  #teepublic .m-footer__trusted-section {
    padding: 20px;
  }
}
@media (prefers-reduced-motion: reduce) {
  #teepublic .m-explore-nav__link,
  #teepublic .m-explore-nav__cta,
  #teepublic .m-footer-sitemap .link {
    transition: none;
  }
}

/* White search field; disable the original yellow animated frame. */
#teepublic .m-header__search--animate form::before,
#teepublic .m-header__search--animate form::after {
  content: none !important;
  display: none !important;
  animation: none !important;
}
#teepublic .m-header__search form {
  background: #fff !important;
  border: 1px solid #d2dce7 !important;
  border-radius: 14px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
}
#teepublic .m-header__search-field-container,
#teepublic .m-header__search-field {
  background: #fff !important;
  color: #182333 !important;
}
#teepublic .m-header__search-field-container {
  border: 0;
}
#teepublic .m-header__search-field::placeholder,
#teepublic .m-header__search-field-placeholder {
  color: #66758a !important;
}
#teepublic .m-header__search-submit {
  border: 0;
  margin: 3px;
}

/* Keep every navigation label inside its own card. */
#teepublic .m-explore-nav__container,
#teepublic .m-explore-nav .m-tab-nav__content,
#teepublic .m-explore-nav .m-tab-nav__tab-content {
  min-width: 0;
  max-width: 100%;
}
#teepublic .m-explore-nav__tab-content {
  display: flex;
  overflow-x: auto;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-start;
  max-width: 100%;
  box-sizing: border-box;
}
#teepublic .m-explore-nav__cta,
#teepublic .m-explore-nav__link {
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: max-content;
  max-width: none;
  box-sizing: border-box;
  white-space: nowrap;
}
#teepublic .m-explore-nav__cta .link__content {
  white-space: nowrap;
}

/* The related tags and sharing section shown above the footer. */
#teepublic .m-design__additional-info-container {
  background: radial-gradient(ellipse at top left, #11375b, transparent 65%), linear-gradient(135deg, #091727, #040a12);
  color: #b9cbe0;
  border-top: 1px solid #28628f;
  border-bottom: 1px solid #1c3b57;
}
#teepublic .m-design__additional-info-container .h--bright,
#teepublic .m-design__additional-info-container h2,
#teepublic .m-design__additional-info-container h4,
#teepublic .m-design__additional-info-container .m-product-options__social-title {
  color: #eff6ff !important;
}
#teepublic .m-design__additional-info-container p {
  color: #a9bdd5;
}
#teepublic .m-design__additional-info-container .vc-pill {
  color: #d9ebff;
  background: #10283f;
  border: 1px solid #3574a5;
}
#teepublic .m-design__additional-info-container .vc-pill:hover {
  color: white;
  background: #0c4e80;
  border-color: #5abaff;
}
#teepublic .m-design__additional-info-container .container__scrollable {
  flex-wrap: wrap !important;
  overflow: visible;
  gap: 10px;
  max-width: 100%;
}
#teepublic .m-design__additional-info-container .m-product-options__social,
#teepublic .m-design__additional-info-container hr {
  border-color: #27445f;
}
#teepublic .m-design__additional-info-container .m-product-options__social .link {
  color: #d8e9ff;
  border-color: #3b617f;
  background: #102339;
}
#teepublic .m-design__additional-info-container svg {
  fill: currentColor;
}
#teepublic .m-footer-sitemap,
#teepublic .m-footer__legal-bar {
  color: #b9cbe0;
}
#teepublic .m-footer-sitemap p,
#teepublic .m-footer-sitemap .m-footer__guarantee-subtext {
  color: #a9bdd5;
}

/* Invert only the share icon artwork on the dark background. */
#teepublic .m-product-options__social .m-social-share img {
  filter: brightness(0) invert(1);
}

/* Let share links blend into the existing dark background. */
#teepublic .m-design__additional-info-container .m-product-options__social .m-social-share .link,
#teepublic .m-product-options__social .m-social-share .link__content,
#teepublic .m-product-options__social .m-social-share .teepublicon {
  background: transparent !important;
}

/* Reserve the full logo width before the desktop search column. */
@media (min-width: 1024px) {
  #teepublic .vc-header__container {
    grid-template-columns: max-content 180px minmax(0, 1fr) max-content;
    column-gap: 32px;
  }
  #teepublic .vc-header-logo {
    width: 180px;
    max-width: 180px;
  }
  #teepublic .vc-header__search-container {
    min-width: 0;
  }
}
