/* Ceria138 page theme */
:root {
  --ceria-ink: #173b24;
  --ceria-green: #35c957;
  --ceria-green-deep: #176b38;
  --ceria-yellow: #ffd63b;
  --ceria-orange: #ff9f1c;
  --ceria-pink: #e83caf;
  --ceria-purple: #9c3ed4;
  --ceria-ivory: #fffdf2;
  --ceria-cream: #f7f5df;
}

/* Header */
#teepublic .vc-header {
  position: relative;
  background:
    radial-gradient(circle at 12% 0%, rgba(255,214,59,.25), transparent 30%),
    linear-gradient(115deg, #fffdf2, #f2f8df 58%, #e7f6dc);
  border: 0;
  box-shadow: 0 8px 24px rgba(38,91,47,.16);
}
#teepublic .vc-header::after,
#teepublic .m-explore-nav::after,
#teepublic .m-design__additional-info-container::before,
#teepublic .m-footer-sitemap::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--ceria-purple), var(--ceria-pink) 24%, var(--ceria-orange) 44%, var(--ceria-yellow) 65%, var(--ceria-green));
}
#teepublic .vc-header::after { bottom: 0; }
#teepublic .vc-header__container { min-height: 84px; gap: 22px; }
#teepublic .vc-header-logo { padding-left: 0; min-width: 0; }
#teepublic .vc-header-logo > .vc-header-logo__wrapper,
#teepublic .header-mini__logo > .vc-header-logo__wrapper:empty { display: none; }
#teepublic .header-mini__logo img {
  display: block !important;
  width: 190px !important;
  height: auto !important;
  margin: 0 !important;
  filter: drop-shadow(0 4px 8px rgba(95,78,18,.18));
}
#teepublic .vc-header .btn,
#teepublic .vc-header .link,
#teepublic .vc-header .teepublicon { color: var(--ceria-ink); }
#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 #e1b52a !important;
  border-radius: 14px;
  box-shadow: 0 4px 14px rgba(61,104,47,.13);
}
#teepublic .m-header__search-field-container,
#teepublic .m-header__search-field {
  background: #fff !important;
  color: #26352a !important;
}
#teepublic .m-header__search-field-container { border: 0; }
#teepublic .m-header__search-field::placeholder,
#teepublic .m-header__search-field-placeholder { color: #68746a !important; }
#teepublic .m-header__search-submit {
  margin: 3px;
  border: 0;
  border-radius: 10px;
  color: #fff;
  background: linear-gradient(135deg, var(--ceria-pink), var(--ceria-purple));
}
#teepublic .vc-header__cta-button {
  color: #16361f;
  background: linear-gradient(135deg, var(--ceria-yellow), #aade42);
  border: 1px solid #f2c329;
  border-radius: 12px;
  box-shadow: 0 5px 15px rgba(224,178,21,.24), inset 0 1px #fff8b0;
}

/* Category navigation */
#teepublic .m-explore-nav {
  position: relative;
  background:
    radial-gradient(circle at 90% 0%, rgba(54,201,87,.1), transparent 32%),
    linear-gradient(180deg, #fffdf4, #f5f6e7);
  border: 0;
}
#teepublic .m-explore-nav::after { bottom: 0; height: 2px; }
#teepublic .m-explore-nav .link,
#teepublic .m-explore-nav .m-tab-nav__item a { color: var(--ceria-ink); }
#teepublic .m-explore-nav .m-tab-nav__item { border-color: var(--ceria-pink); }
#teepublic .m-explore-nav__tab-content {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  max-width: 100%;
  padding: 12px 0;
  overflow-x: auto;
  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;
  padding: 9px 14px;
  white-space: nowrap;
  color: var(--ceria-ink);
  background: rgba(255,255,255,.78);
  border: 1px solid rgba(46,139,66,.28);
  border-radius: 10px;
}
#teepublic .m-explore-nav__cta:hover,
#teepublic .m-explore-nav__link:hover {
  color: #16371f;
  background: #fff5be;
  border-color: #e1b326;
}
#teepublic .m-explore-nav__link img {
  width: 56px;
  height: 25px;
  object-fit: contain;
}

/* Product banner: bypass TeePublic's mockup positioning and paint the local image on the container. */
#teepublic .m-product-preview__main {
  margin-left: 0;
  margin-right: 0;
}
#teepublic .m-product-preview__gallery {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
#teepublic .m-product-preview__glider {
  position: relative !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: 1 / 1 !important;
  overflow: hidden !important;
  background: var(--ceria-cream) url("../img/banneriniceria138.webp") center / cover no-repeat !important;
  border: 1px solid rgba(36,112,52,.25);
  border-radius: 18px;
  box-shadow: 0 10px 30px rgba(43,91,48,.14);
}
#teepublic .m-product-preview__glider-track {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
}
#teepublic .m-product-preview__glider .glide__slides,
#teepublic .m-product-preview__glider-slide {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
#teepublic .m-product-preview__glider-img,
#teepublic .m-product-preview__glider-img img,
#teepublic .m-product-preview__glider img.mockup,
#teepublic .m-product-preview__glider img.preview {
  opacity: 0 !important;
  visibility: hidden !important;
}
#teepublic .m-product-preview__thumbs {
  margin: 0 !important;
}
#teepublic .m-product-preview__thumbs img {
  opacity: 1 !important;
  visibility: visible !important;
}

/* Login and register strip */
#teepublic .login,
#teepublic .login-button,
#teepublic .rFerister,
#teepublic .rFerister-button {
  color: #173a22;
  border-color: #edbd24;
  background: linear-gradient(110deg, #42d76a, #bee33e 58%, #ffd037);
  box-shadow: inset 0 1px #efffc8;
}

/* Related tags and share area */
#teepublic .m-design__additional-info-container {
  position: relative;
  background:
    radial-gradient(circle at 8% 10%, rgba(232,60,175,.07), transparent 27%),
    radial-gradient(circle at 92% 88%, rgba(53,201,87,.11), transparent 30%),
    linear-gradient(135deg, #fffdf3, #f3f5df);
  color: #415445;
  border: 0;
}
#teepublic .m-design__additional-info-container::before { top: 0; }
#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: #18502b !important;
  text-shadow: none !important;
}
#teepublic .m-design__additional-info-container p { color: #617064; }
#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 .vc-pill {
  color: #21472c;
  background: #fff;
  border-color: #b8d28d;
}
#teepublic .m-design__additional-info-container .vc-pill:hover {
  color: #173b22;
  background: #fff4b5;
  border-color: #dfad20;
}
#teepublic .m-design__additional-info-container .m-product-options__social {
  border-color: #cfd8c6;
}
#teepublic .m-design__additional-info-container .m-product-options__social .link {
  color: #193d24;
  background: #fff !important;
  border-color: #c4d2b9;
}
#teepublic .m-product-options__social .m-social-share img { filter: none; }

/* Page footer */
#teepublic .m-footer-sitemap {
  position: relative;
  color: #27442f;
  background:
    radial-gradient(ellipse at 12% 0%, rgba(255,205,43,.22), transparent 45%),
    linear-gradient(135deg, #fff9d8, #e9f7df);
  border: 0;
}
#teepublic .m-footer-sitemap::before { top: 0; }
#teepublic .m-footer-sitemap .link { color: #285037; }
#teepublic .m-footer-sitemap .link:hover { color: #a6217e; }
#teepublic .m-footer-sitemap h4,
#teepublic .m-footer__guarantee-headline { color: #17472a; }
#teepublic .m-footer__trusted-section {
  background: rgba(255,255,255,.62);
  border: 1px solid rgba(225,179,36,.35);
  border-radius: 18px;
}
#teepublic .m-footer__legal-bar {
  color: #dbe9de;
  background: #19462a;
  border-top: 1px solid rgba(255,211,51,.35);
}
#teepublic .m-footer__legal-bar .link { color: #e5f0e7; }

@media (min-width: 1024px) {
  #teepublic .vc-header__container {
    grid-template-columns: max-content 190px minmax(0,1fr) max-content;
    column-gap: 32px;
  }
  #teepublic .vc-header-logo {
    width: 190px;
    max-width: 190px;
  }
  #teepublic .vc-header__search-container { min-width: 0; }
}

@media (max-width: 767px) {
  #teepublic .vc-header__container {
    min-height: 72px;
    gap: 10px;
    padding: 12px 16px;
  }
  #teepublic .header-mini__logo img {
    width: 160px !important;
    max-width: 100%;
  }
  #teepublic .vc-header__actions-container { gap: 8px; }
  #teepublic .vc-header__search-container { min-width: 0; }
  #teepublic .m-explore-nav__tab-content {
    scrollbar-width: thin;
    scrollbar-color: #d5a927 transparent;
  }
  #teepublic .m-explore-nav__cta,
  #teepublic .m-explore-nav__link { font-size: 12px; }
}


/* Desktop layout corrections */
.article-box {
  width: calc(100% - 32px) !important;
  max-width: 1200px !important;
  margin: 50px auto !important;
  box-sizing: border-box;
  transform: none !important;
}
@media (min-width: 769px) {
  #teepublic .m-product-preview__gallery {
    display: flex;
    flex-direction: row-reverse;
    align-items: flex-start;
    gap: 12px;
  }
  #teepublic .m-product-preview__glider {
    flex: 1 1 auto;
    min-width: 0;
  }
  #teepublic .m-product-preview__thumbs {
    display: flex;
    flex: 0 0 64px;
    flex-direction: column;
    justify-content: flex-start;
    gap: 8px;
    width: 64px;
    margin: 0 !important;
  }
  #teepublic .m-product-preview__thumb {
    width: 64px;
    margin: 0;
  }
}
@media (max-width: 768px) {
  .article-box {
    width: calc(100% - 30px) !important;
    margin: 25px auto !important;
  }
}


/* Contrast pass: readable light header and a distinct green footer. */
#teepublic .vc-header__account-button-text,
#teepublic .vc-header__cart-text,
#teepublic .vc-header__shop-button .button__content {
  color: #173b24 !important;
  text-shadow: none !important;
}
#teepublic .vc-header__account-button,
#teepublic .vc-header__cart-button,
#teepublic .vc-header__shop-button {
  color: #173b24 !important;
}
#teepublic .vc-header__account-button:hover .vc-header__account-button-text,
#teepublic .vc-header__cart-button:hover .vc-header__cart-text {
  color: #9b2678 !important;
}
#teepublic .vc-header__account .teepublicon,
#teepublic .vc-header__cart .teepublicon {
  color: #247743 !important;
}
#teepublic .m-footer-sitemap {
  color: #f2f7e9;
  background:
    radial-gradient(ellipse at 8% 0%, rgba(255,211,49,.16), transparent 38%),
    radial-gradient(ellipse at 92% 100%, rgba(51,199,83,.16), transparent 38%),
    linear-gradient(135deg, #17472a, #0c321c 62%, #082715);
  border-top: 1px solid #e2b72a;
  box-shadow: inset 0 1px rgba(255,255,255,.08);
}
#teepublic .m-footer-sitemap::before {
  height: 3px;
  top: 0;
}
#teepublic .m-footer-sitemap h4,
#teepublic .m-footer-sitemap .m-footer__guarantee-headline,
#teepublic .m-footer-sitemap .m-footer__social-links-header {
  color: #fff8d5 !important;
}
#teepublic .m-footer-sitemap p,
#teepublic .m-footer-sitemap .m-footer__guarantee-subtext {
  color: #cbdcc9;
}
#teepublic .m-footer-sitemap .link {
  color: #e2efdf;
}
#teepublic .m-footer-sitemap .link:hover {
  color: #ffd43a;
}
#teepublic .m-footer__trusted-section,
#teepublic .m-footer__trusted-badges {
  background: rgba(255,255,255,.055);
  border-color: rgba(255,211,49,.28);
}
#teepublic .m-footer-sitemap .teepublicon {
  color: #fff;
}
#teepublic .m-footer-sitemap svg {
  fill: currentColor;
}


/* Match the footer to the light Ceria138 header. */
#teepublic .m-footer-sitemap {
  color: #27442f;
  background:
    radial-gradient(circle at 12% 0%, rgba(255,214,59,.25), transparent 30%),
    linear-gradient(115deg, #fffdf2, #f2f8df 58%, #e7f6dc);
  border-top: 0;
  box-shadow: 0 -6px 22px rgba(38,91,47,.12);
}
#teepublic .m-footer-sitemap h4,
#teepublic .m-footer-sitemap .m-footer__guarantee-headline,
#teepublic .m-footer-sitemap .m-footer__social-links-header {
  color: #17472a !important;
}
#teepublic .m-footer-sitemap p,
#teepublic .m-footer-sitemap .m-footer__guarantee-subtext {
  color: #536b58;
}
#teepublic .m-footer-sitemap .link {
  color: #285037;
}
#teepublic .m-footer-sitemap .link:hover {
  color: #a6217e;
}
#teepublic .m-footer__trusted-section,
#teepublic .m-footer__trusted-badges {
  background: rgba(255,255,255,.58);
  border-color: rgba(225,179,36,.34);
}
#teepublic .m-footer-sitemap .teepublicon {
  color: #17472a;
}


/* Unify the related area, footer, and legal bar into one continuous surface. */
#teepublic .m-design__additional-info-container,
#teepublic .m-footer-sitemap,
#teepublic .m-footer__legal-bar {
  color: #27442f;
  background: linear-gradient(115deg, #fffdf2, #f2f8df 58%, #e7f6dc);
}
#teepublic .m-design__additional-info-container {
  border: 0;
}
#teepublic .m-footer-sitemap {
  border: 0;
  box-shadow: none;
}
#teepublic .m-footer-sitemap::before {
  display: none;
}
#teepublic .m-footer__legal-bar {
  border-top: 1px solid rgba(42,106,57,.18);
}
#teepublic .m-footer__legal-bar,
#teepublic .m-footer__legal-bar .link,
#teepublic .m-footer__legal-bar-header,
#teepublic .m-footer__legal-bar-header-copyright {
  color: #31543a;
}
#teepublic .m-footer__legal-bar .link:hover {
  color: #9f287c;
}

/* Match header action SVGs to the Ceria138 green. */
#teepublic .vc-header__account-button .teepublicon,
#teepublic .vc-header__cart-button .teepublicon,
#teepublic .vc-header__account-button svg,
#teepublic .vc-header__cart-button svg {
  color: #237b42 !important;
  fill: #237b42 !important;
}
#teepublic .vc-header__account-button svg path,
#teepublic .vc-header__cart-button svg path {
  fill: #237b42 !important;
}
#teepublic .vc-header__account-button:hover svg path,
#teepublic .vc-header__cart-button:hover svg path {
  fill: #b52b8b !important;
}