.floating-menu {
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  background-color: var(--tj-white);
  z-index: 400;
  transition: transform .3s cubic-bezier(.39, .575, .565, 1);
}
.floating-menu.off {
  transform: translateY(-100%);
}
body.locked .floating-menu {
  
}

.floating-menu .top {
  display: flex;
  align-items: center;
  padding: var(--gap18) var(--gap);
  font-size: 0.87rem;
  justify-content: center;
  position: relative;
}

.floating-menu .top .icon {
  display: block;
  width: 18px;
  height: 18px;
  text-indent: -999px;
  overflow: hidden;
  background: transparent url(../img/icon-contact.svg) center center/contain no-repeat;
}

.floating-menu .top .icon-mobile-toggle {
  display: inline-flex;
  align-items: center;
  gap: var(--gap12);
  background-image: none;
  text-indent: 0px;
  width: auto;
}

.floating-menu .top .icon-mobile-toggle span.toggle {
  display: block;
  width: 18px;
  height: 15px;
  position: relative;
}

.floating-menu .top .icon-mobile-toggle span.toggle:before {
  content: "";
  display: block;
  height: 1px;
  position: absolute;
  width: 100%;
  left: 50%;
  transform: translateX(-50%);
  background: var(--tj-new-black);
  transform-origin: 50% 50%;
  transition: transform .3s cubic-bezier(.39, .575, .565, 1);
  top: 2px;
}

.floating-menu .top .icon-mobile-toggle span.toggle:after {
  content: "";
  display: block;
  height: 1px;
  position: absolute;
  width: 100%;
  left: 50%;
  transform: translateX(-50%);
  background: var(--tj-new-black);
  transform-origin: 50% 50%;
  transition: transform .3s cubic-bezier(.39, .575, .565, 1);
  bottom: 2px;
}

body.open-mobile-menu .floating-menu .top .icon-mobile-toggle span.toggle:before {
  transform: translateX(-50%) scale(0);
}

body.open-mobile-menu .floating-menu .top .icon-mobile-toggle span.toggle:after {
  transform: translateX(-50%) scale(0);
}

.floating-menu .top .icon-mobile-toggle span.toggle>span {}

.floating-menu .top .icon-mobile-toggle span.toggle>span:before,
.floating-menu .top .icon-mobile-toggle span.toggle>span:after {
  content: "";
  display: block;
  height: 1px;
  position: absolute;
  width: 100%;
  left: 50%;
  transform: translateX(-50%);
  background: var(--tj-new-black);
  transform-origin: 50% 50%;
  transition: transform .3s cubic-bezier(.39, .575, .565, 1);
  top: calc((100% - 1px)/2);
}

body.open-mobile-menu .floating-menu .top .icon-mobile-toggle span.toggle>span:before {
  transform: translateX(-50%) rotate(-45deg);
  width: 98%;
}

body.open-mobile-menu .floating-menu .top .icon-mobile-toggle span.toggle>span:after {
  transform: translateX(-50%) rotate(45deg);
  width: 98%;
}

.floating-menu .top .icon-mobile-toggle span.label {
  display: block;
  overflow: hidden;
  max-height: 1em;
  line-height: 100%;
}

.floating-menu .top .icon-mobile-toggle span.label span {
  display: block;
  line-height: 1em;
  transition: transform .3s cubic-bezier(.39, .575, .565, 1);
}

body.open-mobile-menu .floating-menu .top .icon-mobile-toggle span.label span {
  transform: translateY(-100%);
}

.floating-menu .top .icon-contact {
  background-image: url(../img/icon-contact.svg);
}

.floating-menu .top .icon-location {
  background-image: url(../img/icon-location.svg);
}

.floating-menu .top ul {
  display: flex;
  align-items: center;
  gap: var(--gap);
}

.floating-menu .top ul li {
  display: block;
}

.floating-menu .top ul li.icon-mobile {
  display: flex;
}

.floating-menu .top .icon-logo {
  background-image: url(../img/tj-logo-new.svg);
  width: 140px;
  height: 82px;
  transition: all ease-in-out 300ms;
}

.scrolled .floating-menu .top .icon-logo {
  height: var(--gap);
}
.floating-menu.concierge-section .top .icon-logo {
  height: var(--gap);
  width: var(--gap72);
}
.floating-menu.view-order-section .top .icon-logo {
  height: var(--gap);
  width: var(--gap72);
}
.floating-menu.concierge-section .top {
  justify-content: space-between;
}

.scrolled .floating-menu .menu>ul {
  gap: var(--gap24);
}

.scrolled .floating-menu .menu>ul>li>a {
  padding: var(--gap9) 0;
  font-size: 0.9rem;
}

.floating-menu .top .icon-search {
  background-image: url(../img/icon-search.svg);
}

.floating-menu .top .icon-account {
  background-image: url(../img/icon-account.svg);
}

.floating-menu .top .icon-cart {
  background-image: url(../img/icon-cart.svg);
  position: relative;
  text-indent: 0px;
  overflow: visible;
}

.floating-menu .top .icon-cart span {
  display: inline-block;
  font-size: 0.56rem;
  border-radius: 50%;
  width: 1em;
  height: 1em;
  background-color: var(--tj-accent);
  line-height: 1em;
  position: absolute;
  right: -0.2em;
  top: 0;
  transform: translate(50%, -50%);
  text-indent: 0;
  width: 2em;
  height: 2em;
  color: var(--tj-white);
  text-align: center;
  line-height: 2em;
  font-weight: 500;
}

.floating-menu .top .icon-cart span:empty {
  display: none;
}

.currency-menu {
  letter-spacing: 0.195em;
}

.floating-menu .top .middle {}

.floating-menu .top .left {
  position: absolute;
  left: var(--gap);
}

.floating-menu .top .right {
  position: absolute;
  right: var(--gap);
}

.floating-menu .menu {
  display: flex;
  justify-content: center;
  border-top: 1px solid var(--tj-darker-sand);
  transition: all ease-in-out 300ms;
}

.floating-menu .menu>ul {
  display: flex;
  align-items: center;
  gap: var(--gap);
  transition: all ease-in-out 300ms;
}

.floating-menu .menu>ul>li>a {
  padding: var(--gap18) 0;
  transition: all ease-in-out 300ms;
}

.floating-menu .menu .submenu ul {}

.submenu a.menu-more .label {
  font-weight: 400;
  line-height: 1em;
}

.submenu a.menu-more:after {
  display: none;
}

/* Home Slider */
.home-slider {
  background-color: var(--tj-new-sand);
}

.home-slider .col.hero {
  min-height: 30vw;
}

.home-slider .slide>.row>.col {
  padding: var(--gap108) var(--gap72);
}

/* Featured */
.featured {
  padding-top: var(--gap);
  padding-bottom: var(--gap72);
}

.featured .carousel {
  --column-gap: var(--gap24);
}

.featured .fluid-thumbnail {
  padding-bottom: 110%;
}

.featured .slide {
  display: block;
  position: relative;
}

.featured .title {
  font-weight: 500;
  text-align: center;
  padding-top: var(--gap9);
  font-size: 0.93rem;
  line-height: 1.2em;
}

.home-more .fluid-thumbnail {
  padding-bottom: 90%;
}

.home-more .caption {
  flex-basis: 100%;
}

.home-more .caption .caption-text {
  flex-basis: 100%;
}

/* Home Intro */
.home-intro .col.hero {
  min-height: 30vw;
}

/* Home Testimonial */
.home-testimonial {
  align-items: center;
  width: 100%;
}

.home-testimonial>.col {
  width: 100%;
}

.home-testimonial .what-say {}

.home-testimonial .slide .who {
  font-weight: 500;
}

.home-testimonial .press {
  display: flex;
  flex-wrap: wrap;
  gap: var(--gap48);
  row-gap: var(--gap);
  justify-content: center;
}

.home-testimonial .press a {
  display: block;
  flex-basis: auto;
  cursor: default;
}
.home-testimonial .press a[href] {
  cursor: pointer;
}

.home-testimonial .press a img {
  display: block;
  height: 36px;
}

.global-usp {
  background-color: var(--tj-new-sand);
}

.global-usp .icon {
  width: auto;
  height: 34px;
  --icon-height: 34px;
  flex-basis: auto;
}

.global-usp .icon img {
  display: block;
  height: 100%;
  width: auto;
}
.global-usp .icon span.num {
  display: block;
  height: var(--icon-height);
  width: var(--icon-height);
  line-height: var(--icon-height);
  text-align: center;
  border-radius: 50%;
  border: 1px solid var(--tj-new-black);
  font-size: 0.94rem;
  font-weight: 500;
}

.global-usp .flex.vertical {
  justify-content: space-between;
}
.global-usp .top {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--gap18);
}

.global-usp.services-usp {
  background-color: transparent;
}
.global-usp.ring-size-steps {
  background-color: transparent;
  flex-wrap: wrap;
  gap: var(--gap48);
}
.global-usp.ring-size-steps > .col {
    flex-basis: calc( (100% - var(--gap48)) / 2 );
}
.global-usp.how-it-works {
  background-color: transparent;
}
.global-usp.how-it-works .top {
  padding-left: var(--gap24);
  padding-right: var(--gap24);
}
.global-usp.ring-size-steps .top {
    padding-left: var(--gap18);
    padding-right: var(--gap18);
  }

.cta-group {
  display: flex;
  gap: var(--gap12);
  align-items: center;
  flex-basis: auto;
}

.cta-group.gap18 {
  gap: var(--gap18);
}

.chat-ctas {
  display: flex;
  gap: 4px;
  align-items: center;
  padding: 6px 14px;
  border: 1px solid var(--tj-new-black);
  border-radius: var(--gap);
  font-size: 0.93em;
  line-height: 1em;
}

.chat-ctas span {
  margin-right: 5px;
  font-weight: 500;
}

.cta-chat-wa {
  display: block;
  width: 15px;
  height: 15px;
  background: transparent url(../img/icon-chat-wa.svg) center center/15px 15px no-repeat;
  text-indent: -999px;
  overflow: hidden;
}

.cta-chat-fb {
  display: block;
  width: 15px;
  height: 15px;
  background: transparent url(../img/icon-chat-fb.svg) center center/15px 15px no-repeat;
  text-indent: -999px;
  overflow: hidden;
}

.footer-sitemap {}

.footer-sitemap>.row>.col {
  flex-basis: 18%;
}

.footer-sitemap>.row>.col:first-of-type {
  flex-basis: 46%;
}

.footer-section-title {
  font-size: 0.8rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  font-weight: 400;
}

.sitemap-list {
  font-size: 0.93rem;
  display: flex;
  gap: var(--gap24);
}

.sitemap-list ul {
  flex-basis: 100%;
}

.sitemap-list ul li:not(:last-child) {
  margin-bottom: 0.4em;
}

.footer-follow {
  margin-top: var(--gap18);
}

.footer-follow .footer-section-title {
  margin-bottom: var(--gap18);
}

.footer-follow ul {
  display: flex;
  gap: var(--gap18);
}

.footer-follow ul .icon {
  display: block;
  width: 16px;
  height: 16px;
  text-indent: -999px;
  overflow: hidden;
  background: transparent url(../img/icon-contact.svg) center center/contain no-repeat;
}

.footer-follow ul .icon.icon-facebook {
  background-image: url(../img/icon-footer-fb.svg);
}

.footer-follow ul .icon.icon-instagram {
  background-image: url(../img/icon-footer-insta.svg);
}

.footer-follow ul .icon.icon-whatsapp {
  background-image: url(../img/icon-footer-wa.svg);
}

.footer-follow ul .icon.icon-email {
  background-image: url(../img/icon-footer-mail.svg);
}

.footer-note {
  background-color: var(--tj-new-sand);
  font-size: 0.8rem;
  line-height: 1em;
  color: var(--tj-new-gray);
}

.footer-note .icons img {
  height: 16px;
  display: block;
  margin: 0 auto;
}

.floating-contact {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: var(--gap12) var(--gap24);
  border-radius: var(--gap);
  border-radius: 36px;
  background-color: var(--tj-accent);
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
  color: var(--tj-white);
  font-weight: 500;
  position: fixed;
  right: var(--gap24);
  bottom: var(--gap24);
  z-index: 50;
  gap: var(--gap9);
}

.floating-contact .wa {
  display: block;
  width: 20px;
  height: 20px;
  text-indent: -999px;
  overflow: hidden;
  background: transparent url(../img/icon-contact-wa-white.svg) center center/contain no-repeat;
}

.floating-contact .fb {
  display: block;
  width: 20px;
  height: 20px;
  text-indent: -999px;
  overflow: hidden;
  background: transparent url(../img/icon-contact-fb-white.svg) center center/contain no-repeat;
}

.floating-contact .call {
  display: block;
  width: 20px;
  height: 20px;
  text-indent: -999px;
  overflow: hidden;
  background: transparent url(../img/icon-contact-call-white.svg) center center/contain no-repeat;
}

body.tablet .footer-sitemap>.row,
body.mobile .footer-sitemap>.row {
  flex-direction: column;
  gap: 0;
}

body.tablet .footer-sitemap>.row>.col,
body.mobile .footer-sitemap>.row>.col {
  border-top: 1px solid var(--tj-darker-sand);
  padding-top: var(--gap18);
}

body.tablet .footer-sitemap .sitemap-list,
body.mobile .footer-sitemap .sitemap-list {
  flex-direction: column;
  gap: 0.4em;
  transition: all ease-in-out 300ms;
  overflow: hidden;
  height: auto;
  max-height: 100vw;
}

body.tablet .footer-sitemap .sitemap-list>ul:last-of-type,
body.mobile .footer-sitemap .sitemap-list>ul:last-of-type {
  padding-bottom: var(--gap18);
}

body.tablet .footer-sitemap .sitemap-list:not(.show),
body.mobile .footer-sitemap .sitemap-list:not(.show) {
  max-height: 0;
}

body.tablet .footer-sitemap .footer-section-title,
body.mobile .footer-sitemap .footer-section-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

body.tablet .footer-sitemap .footer-section-title .toggle,
body.mobile .footer-sitemap .footer-section-title .toggle {
  display: block;
  width: 10px;
  height: 10px;
  background: transparent url(../img/icon-arrow-down.svg) center center/contain no-repeat;
  flex-shrink: 0;
  flex-grow: 0;
}

/* Page */
.page-heading {
  background-color: var(--tj-new-sand);
}
.page-heading.min-height > .row {
  min-height: 480px;
}
.page-heading.min-height > .row > .col.vertical {
  justify-content: center;
}
.page-heading.min-height2 > .row {
  min-height: 360px;
}
.page-heading.min-height2 > .row > .col.vertical {
  justify-content: center;
}
.page-heading .hero {
  min-width: 50%;
}
.page-heading .hero.img-inside {
  padding: var(--gap48);
  padding-right: 0;
}
.page-heading .hero.img-inside img {
  display: block;
  width: 100%;
}
.page-heading .excerpt {
  max-width: 800px;
}
.page-heading .excerpt > p:not(:last-of-type) {
  margin-bottom: 0.6em;
}

.social-media-box {}

.social-media-box ul {
  display: flex;
  flex-direction: column;
  gap: var(--gap12);
  font-size: 1.2rem;
  font-weight: 500;
}

.social-media-box ul li {
  display: block;
}

.social-media-box ul li .icon {
  display: flex;
  gap: var(--gap12);
  align-items: center;
}

.social-media-box ul li .icon:before {
  content: ' ';
  display: block;
  width: 20px;
  height: 20px;
  background: transparent url(../img/icon-arrow-down.svg) center center/contain no-repeat;
}

.social-media-box ul li .icon-whatsapp:before {
  background-image: url(../img/icon-content-wa.svg);
}

.social-media-box ul li .icon-fbchat:before {
  background-image: url(../img/icon-content-fbchat.svg);
}

.social-media-box ul li .icon-email:before {
  background-image: url(../img/icon-content-email.svg);
}

.social-media-box ul li .icon-phone:before {
  background-image: url(../img/icon-content-phone.svg);
}

.social-media-box ul li .icon-waze:before {
  background-image: url(../img/icon-content-waze.svg);
}

.social-media-box ul li .icon-gmap:before {
  background-image: url(../img/icon-content-gmap.svg);
}

.social-media-box ul li .icon-apple:before {
  background-image: url(../img/icon-content-apple.svg);
}

.social-media-box ul li .icon-address:before {
  background-image: url(../img/icon-content-address.svg);
}

.social-media-box ul li .icon-opening:before {
  background-image: url(../img/icon-content-opening.svg);
}

.social-media-box ul li .icon-address,
.social-media-box ul li .icon-opening {
  align-items: start;
}

.social-media-box ul li .icon-opening {
  margin-bottom: var(--gap12);
}

.social-media-box ul li .icon-address:before,
.social-media-box ul li .icon-opening:before {
  margin-top: 3px;
}

.social-media-box ul li .meta {
  font-size: 1rem;
  font-weight: 400;
}

.social-media-box ul li .meta .text:not(:last-child) {
  margin-bottom: 5px;
}

.embed-map {
  position: relative;
}

.embed-map iframe,
.custom-map {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--tj-white);
  z-index: 2;
}

.leaflet-tile,
.leaflet-control-attribution {
  filter: grayscale(1.0) !important;
  opacity: 0.45 !important;
}

/* career */
.career-layout {}

.career-layout .col:first-child {
  flex-basis: 30%;
}

.career-layout .col:last-child {
  flex-basis: 70%;
}

.featured.product-category {
  padding-top: var(--gap48);
  padding-bottom: var(--gap48);
}

.featured.product-category .fluid-thumbnail {
  padding-bottom: 100%;
}

.product-listing {
  background-color: var(--tj-new-sand);
  padding: var(--gap48);
  padding-top: var(--gap72);
  padding-bottom: var(--gap72);
}
.product-listing.text-list {
  background-color: var(--tj-new-sand);
  padding: var(--gap72);
}
.product-listing.blog-list {
  background-color: var(--tj-white);
  padding: var(--gap72);
}

.product-listing.subcategory {
  padding-top: 0;
}

.product-listing .listing-wrap {
  display: flex;
  flex-direction: column;
  gap: var(--gap);
  align-items: center;
  width: 100%;
}

.product-listing .listing-wrap > * {
  width: 100%;
}

.listing-items {
  display: flex;
  flex-wrap: wrap;
  gap: var(--gap24);
  --listing-col: 4;
  --listing-gap: var(--gap24);
  width: 100%;
}
.listing-items.columns-2 {
  --listing-col: 2;
}
.listing-items.columns-3 {
  --listing-col: 3;
}
.listing-items.columns-4 {
  --listing-col: 4;
}
.blog-list .listing-items {
  gap: var(--gap48);
  --listing-col: 4;
  --listing-gap: var(--gap48);
}
.listing-items.loading {
  opacity: 0.5;
}

.listing-items .item {
  flex-basis: calc((100% - (var(--listing-col) - 1)*var(--listing-gap)) / var(--listing-col));
  background-color: var(--tj-white);
  display: flex;
  flex-direction: column;
}

.featured-main .listing-items {
  --listing-col: 1;
}
.featured-secondary .listing-items {
  --listing-col: 2;
}

.text-list .listing-items .item {
  flex-basis: 100%;
}

.listing-items .item .name {
  font-size: 1.2rem;
  line-height: 1.4em;
  margin-bottom: var(--gap9);
  font-weight: 500;
}
.featured-main .listing-items .item .name {
  font-size: 1.6rem;
  line-height: 1.4em;
  font-weight: 500;
  margin-bottom: 0px;
}
.featured-main .listing-items .item .fluid-thumbnail {
  padding-bottom: 120%;
}
.listing-items .item .info {
  padding: var(--gap);
  flex-basis: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.blog-list .listing-items .item .info {
  padding: var(--gap24) 0 0;
  justify-content: start;
  gap: var(--gap10);
}

.listing-items .item .tag {
  font-size: 0.9rem;
  line-height: 1.4em;
}
.blog-list .listing-items .item .tag {
  font-size: 0.73rem;
	text-transform: uppercase;
	line-height: 1.2em;
	letter-spacing: 0.16em;
}
.listing-items .item .tag span {
  display: inline-block;
}
.listing-items .item .tag span:not(:last-of-type):after {
  content: '/';
  display: inline-block;
  margin: 0 0.5em;
  color: var(--tj-border-gray);
}

.listing-more {
  display: flex;
  flex-direction: column;
  gap: var(--gap18);
  align-items: center;
}

.listing-meta {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.listing-meta .listing-total {
  text-transform: uppercase;
  letter-spacing: 0.21em;
  font-size: 0.9rem;
}

.listing-meta .listing-filter {}

.featured.explore {
  display: flex;
  background-color: var(--tj-new-sand);
  padding: var(--gap48);
  padding-top: 0;
  padding-bottom: var(--gap72);
  flex-basis: fit-content;
  gap: var(--gap);
  align-items: center;
}

.featured.explore .col.subtitle {
  flex-shrink: 0;
}

.featured.explore .col.subtitle * {
  text-transform: uppercase;
  letter-spacing: 0.27em;
  font-weight: 400;
}

.featured.explore .col.main {
  flex-basis: 100%;
}

.featured.explore .carousel .slide {
  background-color: var(--tj-white);
  display: flex;
  align-items: stretch;
  padding: 0;
  margin: 0 calc(var(--column-gap)/2);
}

.featured.explore .carousel .slide .fluid-thumbnail {
  flex-basis: 30%;
  padding-bottom: 33%;
  flex-shrink: 0;
  flex-grow: 0;
}

.featured.explore .carousel .slide .title {
  padding: var(--gap18);
  text-align: left;
  display: flex;
  align-items: center;
}

.tj-popup {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 3001;
}

.tj-popup .tj-popup-overlay {
  background-color: rgba(0, 0, 0, 0.3);
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--gap);
}

.tj-popup .tj-popup-box {
  background-color: var(--tj-white);
  padding: var(--gap);
  max-width: 50%;
  max-height: 100%;
}
.tj-popup .tj-popup-box.frameless {
  padding: 0;
  max-width: 680px;
  background-color: transparent;
}
.tj-popup .tj-popup-box.fluid {
  max-width: 100%;
}

.tj-popup .tj-popup-box .close-section {
  text-align: right;
  position: relative;
}
.tj-popup .tj-popup-box .close-section .btn-close {
  display: inline-flex;
  font-weight: 400;
  gap: var(--gap9);
  align-items: center;
  line-height: 1em;
  position: absolute;
  right: 0;
  top: 0;
  transform: translateX( calc(var(--gap)/2) ) translateY( calc(var(--gap)/2*-1) );
}
.tj-popup .tj-popup-box .close-section .btn-close:before {
  content: ' ';
  display: block;
  width: 10px;
  height: 10px;
  background: transparent url(../img/icon-close-menu.svg) center center/contain no-repeat;
}

.tj-popup .tj-popup-box.frameless .close-section .btn-close {
  z-index: 10;
}
.tj-popup .tj-popup-box.frameless .close-section .btn-close:before {
  background-color: #ffffff;
  border-radius: 50%;
  width: var(--gap);
  height: var(--gap);
  background-size: 40% 40%;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
}

.tj-popup-close {
  display: inline-flex;
  font-weight: 400;
  gap: var(--gap9);
  align-items: center;
  line-height: 1em;
  position: absolute;
  right: var(--gap18);
  top: var(--gap18);
  color: #ffffff;
}
.tj-popup-close:before {
  content: ' ';
  display: block;
  width: 10px;
  height: 10px;
  background: transparent url(../img/icon-close-menu-white.svg) center center/contain no-repeat;
  background-color: var(--tj-error);
}
.tj-popup .tj-popup-box .tj-popup-title {
  padding-bottom: var(--gap18);
  font-size: 1.2rem;
  text-align: center;
  font-weight: 500;
}

.tj-popup .tj-popup-box .tj-popup-content {
  overflow-y: auto;
  max-height: calc(100vh - (var(--gap)*2));
}

.tj-popup .tj-popup-box.frameless .slick-dots li button:before {
  color: var(--tj-white);
}

/* Calendar */
.datepicker.hasDatepicker {
  cursor: pointer;
}

.ui-widget.ui-datepicker {
  font-size: 1em;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
}

.ui-corner-all,
.ui-corner-bottom,
.ui-corner-right,
.ui-corner-br {
  /* border-radius: 0 !important; */
  padding: 0;
}

.ui-datepicker {
  max-width: 245px;
  width: 100%;
  background-color: var(--tj-white);
  background-image: none;
}

.ui-datepicker .ui-widget-header {
  background: none;
  background-color: var(--tj-new-sand);
  padding: 0;
  border: 0;
}

.ui-datepicker-title select {
  padding-top: 0;
  padding-bottom: 0;
  padding-left: 0;
}

.ui-datepicker .ui-datepicker-prev {
  background: transparent url(../img/icon-arrow-left-large.svg) center center/80% auto no-repeat;
  text-indent: -9999px;
  overflow: hidden;
  padding: 0;
  border: 0;
  width: 14px;
  height: 14px;
  top: 50%;
  transform: translateY(-50%);
  left: 10px;
}

.ui-datepicker .ui-datepicker-next {
  background: transparent url(../img/icon-arrow-right-large.svg) center center/80% auto no-repeat;
  text-indent: -9999px;
  overflow: hidden;
  padding: 0;
  border: 0;
  width: 14px;
  height: 14px;
  top: 50%;
  transform: translateY(-50%);
  right: 10px;
}

.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
  display: none;
}

.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default {
  background: none;
  border: 0;
  color: var(--tj-new-black);
  font-weight: 500;
}

.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active {
  border: 1px solid var(--tj-accent);
}

.ui-datepicker td span,
.ui-datepicker td a {
  padding: 0.2em 0.5em;
}

.ui-datepicker .ui-datepicker-title {
  font-weight: 500;
  display: flex;
  justify-content: center;
  color: var(--tj-new-black);
}

.ui-datepicker th {
  font-weight: 500;
}

.tj-form .iti {
  display: block;
}

.tj-form .el {
  position: relative;
}

.please-wait-submit {
  font-weight: 400;
  margin-top: 1em;
  color: var(--tj-brown);
}

.el.el-file {}

.el.el-file .file-upload-wrap {
  border: 1px solid var(--tj-border-gray);
  padding: var(--gap10) var(--gap24);
  width: 100%;
}

.el.el-file label {
  font-weight: 500;
}

.el.el-file input[type=file] {
  visibility: hidden;
  height: 0px;
  overflow: hidden;
  margin: 0 !important;
  padding: 0 !important;
}

.el.el-file .cta {
  position: absolute;
  right: var(--gap24);
  top: var(--gap12);
}

.selected-file {
  font-size: 0.8em;
  line-height: 1.4em;
  padding-top: 0.5em;
}

.selected-file span {
  display: block;
}

.selected-file span.name {
  word-break: break-all;
  display: inline-block;
}

.selected-file span.size {
  display: inline-block;
  margin-left: 1em;
}

.selected-file span.action {
  
}

.selected-file .progress {
  margin-top: 5px;
  line-height: 1em;
}

.selected-file:not(.uploading):not(.uploaded) .progress {
  display: none;
}

.selected-file .progress .progress-line {
  height: 3px;
  background-color: var(--tj-new-gray);
}

.selected-file.uploading .progress .progress-line,
.selected-file.uploaded .progress .progress-line {
  background-color: var(--tj-green);
}

.selected-file.error {
  color: #ff0000 !important;
}

.selected-file.error .progress .progress-line {
  background-color: #ff0000;
}

.selected-file .progress span.progress-bar {
  display: flex;
  justify-content: space-between;
  padding-top: 5px;
}

.selected-file.error .progress {
  color: #ff0000 !important;
}

.apply-form-box {
  margin-top: var(--gap);
}

.product-catalogue-filter {
  font-size: 0.93rem;
  line-height: 1.2em;
}
.product-catalogue-filter .filter-row {
  margin-bottom: var(--gap24);
}
.product-catalogue-filter label {
  display: block;
  padding-bottom: var(--gap9);
  font-weight: 500;
}
.product-catalogue-filter .filter-row ul li:not(:last-of-type) {
  margin-bottom: 0.6em;
}
.product-catalogue-filter input, 
.product-catalogue-filter select,
.product-catalogue-filter textarea {
  font-size: 0.93rem;
}
.product-catalogue-filter .price-range-display {
  display: flex;
  gap: 1em;
  align-items: center;
}
.product-catalogue-filter .filter-row.action {
  display: flex;
  gap: 1em;
  align-items: center;
}
.product-catalogue-filter .filter-row.action > * {
  flex-basis: 100%;
  text-align: center;
}
.pricing-table-group {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: var(--gap);
}
.pricing-table-group .pricing-table-category {
}
.pricing-table-group .pricing-table-category h3 {
	margin-bottom: 0.5em;
	margin-top: 0;
}
.pricing-table-group .pricing-table-category .pricing-table-intro {
	line-height: 1.5em;
  text-align: left;
}
.pricing-table-group .pricing-table-category .pricing-table-intro:not(:empty) {
	margin: 1em 0;
}
.pricing-table-group .pricing-table-category .pricing-table-footnote {
  text-align: left;
  line-height: 1.4em;
}
.pricing-table-group .pricing-table-category .pricing-table-footnote:not(:empty) {
	margin-top: 1em;
}
.pricing-table-group .pricing-table-category .pricing-table-footnote p:first-of-type {
	margin-top: 0;
}
.pricing-table-group .pricing-table-category .pricing-table-footnote ul,
.pricing-table-group .pricing-table-category .pricing-table-footnote ol {
	margin-top: 0.5em;
}
.pricing-table-group .pricing-table-category .pricing-table-footnote ul {
  list-style: disc;
  margin-left: 1.6em;
}
.pricing-table-group .pricing-table-category .pricing-table-footnote * {
	font-size: 0.9rem;
}
.pricing-table-group .pricing-table-category td p:first-of-type {
	margin-top: 0;
}
.pricing-table-group .pricing-table-category .col-price {
	text-align: right;
}
.pricing-table-group .pricing-table-category .pricing-table-mobile-note {
	color: #bc0525;
	font-style: italic;
	margin: 1em 0;
	font-size: 0.8rem;
}
#close-pricelist {
	transform-origin: center;
}
.hide {
  display: none !important;
}
.added-overlay:not(.hide) {
  position: fixed !important;
}

.fancy-scroll {
  overflow-y: auto !important;
}


input.pretty-checkbox {
	margin: 0 !important;
	position: relative;
	vertical-align: middle;
	float: none;
	-webkit-appearance: none;
	height: 18px;
	width: 32px;
	border: 2px solid #aaa;
	outline: none;
	cursor: pointer;
	left: 0;
	border-radius: 20px;
}
input.pretty-checkbox:before {
	height: 12px;
	width: 12px;
	background-color: #aaaaaa;
	border-radius: 50%;
	left: 2px;
	content: "";
	position: absolute;
	margin: auto;
	top: 0;
	bottom: 0;
	transition: 0.3s;
}
input.pretty-checkbox:after {
	content: "";
	position: absolute;
	margin: auto;
	top: 0;
	bottom: 0;
	transition: 0.3s;
}
input.pretty-checkbox:checked:before {
	left: 12px;
	content: "";
}

.panel-radio-options,
.panel-note {
	max-width: 480px;
	margin: 36px auto;
}
.panel-note {
	font-size: 12px;
    line-height: 22px;
    color: #444;
}

.panel-note .desc a {
	border-bottom: 1px solid #222222;
}
.panel-radio-options .radio-option {
	display: flex;
	align-items: start;
	padding: 24px 0;
}
.panel-radio-options .radio-option.disabled {
	opacity: 0.5;
}
.panel-radio-options .radio-option.disabled input,
.panel-radio-options .radio-option.disabled select {
	pointer-events: none;
}
.panel-radio-options .radio-option:not(:last-of-type){
	border-bottom: 1px solid var(--tj-border-gray);
}
.tj-standard-customiser .panel-radio-options .radio-option:not(:last-of-type){
	border-bottom: 1px solid var(--tj-border-gray);
}
.panel-radio-options .radio-option .input {
	margin-right: 24px;
}
.panel-radio-options .radio-option .input-label {
	margin-right: 24px;
}
.panel-radio-options .radio-option .input-label .heading {
	font-style: normal;
	font-weight: 500;
	font-size: 16px;
	line-height: 24px;
	color: var(--tj-new-black);
}
.panel-radio-options .radio-option .input-label .subheading {
	font-style: normal;
	font-weight: 500;
	font-size: 13px;
	line-height: 16px;
	margin-top: 10px;
	transition: opacity .4s Cubic-bezier(1, 0, .43, 1) .2s,transform .4s Cubic-bezier(.3, 0, .3, 1) .2s;
	transition: all linear 200ms;
}
.panel-radio-options .radio-option .input-label .desc {
	margin-top: 5px;
	font-style: normal;
	font-weight: normal;
	font-size: 12px;
	line-height: 20px;
	color: #444444;
	transition: all linear 200ms;
}
.pretty-radios-inline {
    display: flex;
    align-items: center;
    gap: 1em;
}
.pretty-radio-inline {
    display: inline-flex;
    align-items: center;
    gap: 0.5em;
}
.pretty-radio-inline .pretty-label {
    font-weight: 500;
}

.pretty-radio {
	position: relative;
	display: block;
	width: 20px;
	height: 20px;
	border: 2px solid #BA8273;
	border-radius: 50%;
	cursor: pointer;
}
.pretty-radio input {
	position: absolute;
	width: 20px;
	height: 20px;
	top: 0;
	left: 0;
	opacity: 0;
	z-index: 11;
	border: 0px;
	cursor: pointer;
}
.pretty-radio input ~ span {
	transition: all .2s ease-in-out !important;
	position: absolute;
	z-index: 10;
	left: -2px;
	top: -2px;
	background-color: #BA8273;
	width: 20px;
	height: 20px;
	border: 2px solid #BA8273;
	border-radius: 50%;
	background-image: url(../img/icon-pretty-checked.svg);
	background-position: center center;
	background-repeat: no-repeat;
	opacity: 0;
}
.pretty-radio input:checked ~ span {
	opacity: 1;
}
.ring-size.active .pretty-radio input:checked ~ span {
  border-color: var(--tj-new-sand);
}
.panel-radio-options .radio-option:not(.selected) .input-label > .subheading,
.panel-radio-options .radio-option:not(.selected) .input-label > .desc{
	opacity: 0;
	height: 0;
	margin-top: 0px;
}
.panel-radio-options .radio-option:not(.selected) .input-label .heading {

}
.panel-metal-options {
	max-width: 500px;
	margin: 0px auto;
}
.panel-metal-options .metal-type {
	display: flex;
	padding: var(--gap18) 0px;
}
.panel-metal-options > .metal-type:first-of-type {
  padding-top: 0;
}
.panel-metal-options > .metal-type:last-of-type {
  padding-bottom: 0;
}
.panel-metal-options .metal-type:not(:last-of-type) {
	border-bottom: 1px solid var(--tj-border-gray);
}
.panel-metal-options .metal-type .subheading {
	flex-basis: calc(35% - 0px);
	font-weight: 500;
	font-size: 20px;
	line-height: 56px;
	color: var(--tj-new-black);
}
.panel-metal-options .metal-type .subheading .small-note {
	font-size: 12px;
	font-weight: 400;
	line-height: 1.5em;
	color: #666666;
	letter-spacing: 0px;
}
.panel-metal-options .metal-type .options {
	flex-basis: calc(65% - 0px);
	display: flex;
}
.panel-metal-options .metal-type .options .option {
	text-align: center;
	flex-basis: 100%;
}
.panel-metal-options .metal-type .options .option:not(:last-of-type) {
	margin-right: 36px;
}
.panel-metal-options .metal-type .options .option .thumbnail {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	margin: 0 auto;
	background-color: #ffffff;
	border: 1px solid var(--tj-border-gray);
}
.panel-metal-options .metal-type .options .option .option-label {
	font-weight: 500;
	font-size: 10px;
	line-height: 1.1em;
	text-align: center;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--tj-new-black);
	margin: 10px auto 10px;
}
.panel-metal-options .metal-type .options .option .input {
	margin: 0px auto;
}
.panel-metal-options .metal-type .options .option .input .pretty-radio {
	margin: 0px auto;
}
.panel-metal-options .metal-type .options .option .thumbnail.white {
	background: linear-gradient(127.95deg, #EEEEEE 13.84%, #DDDDDD 94.52%);
}
.panel-metal-options .metal-type .options .option .thumbnail.yellow {
	background: linear-gradient(129.67deg, #EEE591 17.69%, #EBD666 85.24%);
}
.panel-metal-options .metal-type .options .option .thumbnail.rose {
	background: linear-gradient(135deg, #FFC5A4 0%, #E0BFB8 100%);
}
.panel-metal-options .metal-type .options .option .thumbnail.rose-pink {
	background: linear-gradient(135deg, #FFC5A4 0%, #E0BFB8 100%);
}
.symbol-palette {
	display: flex;
	margin-top: 10px;
}
.symbol-palette .symbol {
	margin-right: 8px;
	padding: 10px;
	width: 36px;
	height: 36px;
	border-radius: 6px;
	text-align: center;
	display: inline-block;
	background: #FFFFFF;
	border: 1px solid var(--tj-border-gray);
	box-sizing: border-box;
	font-size: 16px;
	line-height: 16px;
	font-family: Times;
	cursor: pointer;
}
.engraving-box {
	margin-top: 18px;
}
.engraving-box .engraving-text {
	font-family: Arial, Sans-Serif;
	font-style: normal;
	font-weight: normal;
	font-size: 16px;
	line-height: 22px;
	color: #444444;
	background: #FFFFFF;
	border: 1px solid var(--tj-border-gray);
	box-sizing: border-box;
	border-radius: 6px;
	width: 100%;
	display: block;
}
.engraving-box .engraving-text.italic {
	font-style: italic;
}
.engraving-box .top-label {
	display: flex;
	justify-content: space-between;
}
.engraving-box .top-label {
	font-style: normal;
	font-weight: 500;
	font-size: 13px;
	line-height: 16px;
    margin-bottom: 5px;
}
.engraving-box .engraving-note {
	font-style: normal;
	font-weight: 400;
	font-size: 13px;
	line-height: 16px;
    margin-top: 10px;
}
.engraving-box .engraving-note em {
    color: var(--tj-error);
}
.engraving-box .row.italic-option {
	padding: 10px 0px;
}
.pretty-toggle-label {
	display: flex;
}
.pretty-toggle-label .label {
	font-style: normal;
	font-weight: 500;
	font-size: 13px;
	line-height: 16px;
	color: var(--tj-new-black);
}
.pretty-toggle {
	position: relative;
	display: inline-block;
}
.pretty-toggle-label .pretty-toggle {
	margin-right: 10px;
}
.pretty-toggle input[type="checkbox"] {
	-webkit-appearance: none;
	height: 18px;
	width: 32px;
	border: 1px solid var(--tj-border-darker-gray);
	outline: none;
	cursor: pointer;
	left: 0;
	border-radius: 20px;
	margin: 0 !important;
	position: relative;
	vertical-align: middle;
	float: none;
}
.pretty-toggle input[type="checkbox"]:before {
	content: "";
	position: absolute;
	height: 12px;
	width: 12px;
	background-color: var(--tj-border-darker-gray);
	border-radius: 50%;
	margin: auto;
	top: 0;
	bottom: 0;
	left: 3px;
	transition: 0.3s;
}
.pretty-toggle input[type="checkbox"]:checked {
	border-color: #ba8273;
}
.pretty-toggle input[type="checkbox"]:checked:before {
	left: 12px;
	background-color: #ba8273;
}
.pretty-toggle input[type="checkbox"]:after {
	content: "";
	position: absolute;
	margin: auto;
	top: 0;
	bottom: 0;
	transition: 0.3s;
}
.option-footnote {
	font-style: normal;
	font-weight: normal;
	font-size: 12px;
	line-height: 16px;
	margin-top: 5px;
}
.swal2-icon {
	width: 3em;
	height: 3em;
}
.swal2-title {
	font-weight: 500 !important;
}
div:where(.swal2-icon).swal2-error [class^=swal2-x-mark-line] {
	width: 1.9375em !important;
	top: 1.35em !important;
}
div:where(.swal2-container) {
	z-index: 5000 !important;
}
div:where(.swal2-container) .swal2-html-container {
	font-size: 14px !important;
}
div:where(.swal2-icon).swal2-error [class^=swal2-x-mark-line][class$=left] {
	left: 0.53125em !important;
}
div:where(.swal2-icon).swal2-error [class^=swal2-x-mark-line][class$=right] {
	right: 0.53125em !important;
}
div:where(.swal2-icon) .swal2-icon-content {
	font-size: 2em !important;
}

.range-slider {
	border: 0px;
	background-color: #dddddd;
	background-image: none;
}
.ui-slider-range.ui-widget-header {
	background-color: #BA8273;
	background-image: none;
}
.ui-slider-horizontal {
	height: 4px;
	margin-left: 7px;
	margin-right: 7px;
}
.ui-slider .ui-slider-handle {
	border-radius: 50%;
	width: 18px;
	height: 18px;
	background-image: none;
	border: 0px;
	top: -7px;
	margin-left: -9px !important;
	cursor: pointer;
	-webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.4) !important;
	-moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.4) !important;
	box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.4) !important;
}
.range-label {
	font-size: 11px;	
	font-weight: 500;
	color: #B27463;
	position: relative;
}
.range-label .min {
	float: left;
	margin-top: 15px;
	transform: translateX(-7px);
}
.range-label .max {
	float: right;
	margin-top: 15px;
	transform: translateX(7px);
} 
.standard-carousel {
  transition: all 600ms linear;
}
.standard-carousel:not(.slick-initialized) {
  opacity: 0;
}
.standard-carousel:not(.slick-initialized) .slick-slide {
  position: absolute;
}

.review-listing {
  background-color: var(--tj-new-sand);
  padding: var(--gap72);
  padding-top: 0;
  border-bottom: 1px solid var(--tj-white);
}

.review-listing .listing-wrap {
  display: flex;
  flex-direction: column;
  gap: var(--gap);
  align-items: center;
}
.review-listing .listing-wrap .listing-items {
  display: block;
  /* gap: var(--gap);
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: masonry; */
}
.listing-items .review-item {
  background-color: var(--tj-white);
  display: flex;
  gap: var(--gap24);
  padding: var(--gap);
  box-sizing: border-box;
  margin-bottom: var(--gap);
}
.listing-items .review-item {
  width: calc(50% - var(--gap18));
}
.listing-items .grid-sizer {
  width: calc(50% - var(--gap18));
}
.listing-items .gutter-sizer {
  width: calc(var(--gap));
}

.listing-items .review-item .thumbnail {
  flex-basis: 80px;
  width: 80px;
  height: 80px;
  border-radius: 50%;
  flex-shrink: 0;
  flex-grow: 0;
  overflow: hidden;
}
.listing-items .review-item .thumbnail img {
  display: block;
  width: 100%;
  height: 100%;
}
.listing-items .review-item .top {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.listing-items .review-item .middle {
  display: flex;
  flex-direction: column;
  gap: var(--gap9);
}
.listing-items .review-item .info .reviewer-name {
  font-size: 1.35rem;
  line-height: 1em;
  font-weight: 500;
}
.listing-items .review-item .info .review-date {
  font-size: 0.74rem;
  line-height: 1em;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}
.listing-items .review-item .info .review-text {
  font-weight: 400;
}
.listing-items .review-item .info {
  flex-basis: 100%;
  display: flex;
  flex-direction: column;
  gap: var(--gap18);
}
.listing-items .review-item .info .review-action .cta.sicon:before {
	background-image: url(../img/icon-review-source.svg);
}
.review-item .stars {
  --star-gap: var(--gap6);
  width: calc(16px* 5 + var(--star-gap)* 4);
}
.review-item .stars .star {
  flex-basis: 16px;
  height: 16px;
  width: 16px;
  background-image: url(../img/icon-diamond-rating.svg);
}

.toggle-content {
  display: none;
}
.pricing-table-wrapper {
  overflow: auto;
}
.pricing-table-wrapper > table, table.tj-table {
  margin-top: 0px;
  width: 100%;
}
.pricing-table-wrapper th,
.pricing-table-wrapper td,
table.tj-table th,
table.tj-table td {
  padding: 0.5em 1em;
  border: 1px solid var(--tj-darker-sand);
  vertical-align: middle;
  font-size: 0.94rem;
  line-height: 1.4em;
}
.pricing-table-wrapper td.col-service {
  text-align: left;
}
.pricing-table-wrapper th,
table.tj-table th {
  background-color: var(--tj-new-sand);
  font-weight: 400;
}
.service-price-list-row {
  width: 100%;
  border: 1px solid var(--tj-darker-sand);
  max-width: 900px;
  margin: 0 var(--gap);
  padding: var(--gap);
}
.service-price-list-row h4,
.service-price-list-row h5 {
  margin: 1em 0;
}
.repair-usp {
  background-color: var(--tj-new-sand);
}
.floating-content-menu {
  position: absolute;
  width: 100%;
  background-color: var(--tj-new-black);
  z-index: 200;
  transition: transform .3s cubic-bezier(.39, .575, .565, 1);
}
.floating-content-menu .menu {
  display: flex;
  justify-content: center;
  transition: all ease-in-out 300ms;
}
.floating-content-menu .menu ul {
  display: flex;
    align-items: center;
    gap: var(--gap);
    transition: all ease-in-out 300ms;
}
.floating-content-menu .menu ul li {
  position: initial;
}
.floating-content-menu .menu ul li a {
  display: block;
  padding: var(--gap18) 0;
  transition: all ease-in-out 300ms;
  color: var(--tj-white);
}
.floating-content-menu.float-now {
  position: fixed;
  top: 0;
  left: 0;
}
.floating-content-menu.foldable .menu ul {
  flex-direction: column;
  gap: 0;
}
.floating-content-menu.foldable .toggle {
  position: absolute;
  top: 50%;
  right: var(--gap18);
  display: block;
  width: var(--gap18);
  height: var(--gap18);
  transform: translateY(-50%);
}
.floating-content-menu.foldable .toggle:before {
  content: ' ';
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  transform: rotate(90deg);
  background: transparent url(../img/icon-arrow-right-gold.svg) center center/contain no-repeat;
  transform-origin: center;
}
.floating-content-menu.foldable.open .toggle:before {
  transform: rotate(-90deg);
}
.floating-content-menu.foldable .menu {
  overflow: hidden;
}
.floating-content-menu.foldable:not(.open) .menu {
  max-height: 0;
}
.floating-content-menu.foldable .toggle-current {
  display: block;
  padding: var(--gap18);
  transition: all ease-in-out 300ms;
  color: var(--tj-white);
  text-align: center;
  position: relative;
}
.award-list {
  display: flex;
  flex-direction: row;
  gap: var(--gap72);
  --col-count: 4;
  --col-gap: var(--gap72);
  text-align: center;
}
.award-list .award-item {
  flex-basis: 100%;
  font-size: 0.93rem;
  line-height: 1.3em;
  font-weight: 500;
  display: flex;
  flex-direction: column;
  gap: var(--gap18);
}
.award-list .award-item .icon {
  
}
.award-list .award-item .icon img {
  display: block;
  width: 100%;
  height: auto;
}
.award-list .award-item .award-title {

}
.recognition-list {
  display: flex;
  flex-direction: column;
  gap: var(--gap48);
}
.recognition-list .recognition-row {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}
.recognition-list .recognition-row .recognition-item {
  
}
.recognition-list .recognition-row .recognition-item .icon {
  
}
.recognition-list .recognition-row .recognition-item .icon img {
  display: block;
}
.row.bg {
  background-color: var(--tj-new-sand);
}
.tab-area {

}
.tab-area .tab-nav {
  font-size: 0.93rem;
	letter-spacing: 0.21em;
	line-height: 1em;
	text-transform: uppercase;
	font-weight: 450;
  border-bottom: 1px solid var(--tj-border-darker-gray);
}
.tab-area .tab-nav ul {
  display: flex;
  gap: var(--gap);
}
.tab-area .tab-nav ul li {
  margin-bottom: -1px;
}
.tab-area .tab-nav ul li.current {
  border-bottom: 2px solid  var(--tj-new-black);
}
.tab-area .tab-nav ul li a {
  display: block;
  padding: 0 0 var(--gap18);
}
.tab-area .tab-content {
  padding-top: var(--gap24);
  position: relative;
  transition: all .3s cubic-bezier(.39, .575, .565, 1);
}
.tab-area .tab-content .tab-panel {
  position: relative;
  transition: all .3s cubic-bezier(.39, .575, .565, 1);
}
.tab-area .tab-content .tab-panel.current {
  
}
.tab-area .tab-content .tab-panel:not(.current) {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.custom-embed-video {
  position: relative;
  max-width: 960px;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
}
.custom-embed-video img.placeholder {
  display: block;
  width: 100%;
  height: auto;
}
.custom-embed-video iframe {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.hidden-popup-content {
  display: none;
}
.embed-4cs {
  width: calc(100vw - var(--gap)*2);
  max-width: 100%;
}
.woocommerce-form__label-for-checkbox {
  display: inline-flex;
  align-items: center;
  gap: var(--gap10);
}
.page-numbers {
  display: flex;
  align-items: center;
  gap: var(--gap18);
}
.page-numbers li > * {
  display: inline-block;
  padding: var(--gap9) var(--gap18);
  background-color: var(--tj-brown);
  color: #ffffff;
}
.nav-links {
  display: flex;
  justify-content: center;
  flex-direction: row-reverse;
  gap: var(--gap24);
}
.lost-password {
  margin-right: var(--gap18);
}
.select2-container--default .select2-selection--single {
  border: 1px solid var(--tj-border-gray);
  padding: var(--gap9) var(--gap24);
  border-radius: 0;
  height: auto;
  margin: 0;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
  font-size: 1rem;
  padding: 0;
}
.block-loading {
    position: relative;
}
.block-loading:before {
    content: ' ';
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255,255,255,0.7);
    z-index: 10;
}
.block-loading:after {
    content: 'Loading...';
    display: block;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 11;
}
article .entry-footer {
    margin-top: var(--gap);
}
.text-block table.product-table-row td {
  border: 0;
  vertical-align: middle;
}
.product-embed {
  min-width: 240px;
}
.product-embed .listing-items .item {
  flex-basis: 100%;
  text-decoration: none;
}
.product-embed .listing-items .item .info {
  padding: var(--gap18) 0 0;
}
.product-embed .listing-items .item .info .name {
  margin-top: 0;
}

.hitpay-own-payment-button {
  color: #ffffff !important;
  background: none !important;
  background-color: #020202 !important;
  border-color: #020202 !important;
}
.payment_method_hitpay .payment_method_hitpay_custom_box {
  background-color: transparent !important;
  padding: 8px 0 0 0 !important;
}
.payment_method_hitpay .payment_method_hitpay_custom_box p {
  margin: 0 !important;
}

.wc-stripe-card-icons-container {
  display: flex;
  gap: var(--gap10);
  margin: var(--gap10) 0;
}
.wc-stripe-card-icons-container img {
  max-width: 48px;
}

.tj-popup-banners {

}
.tj-popup-banners .popup-banner {
  display: block;
  max-width: 680px;
  margin: 0 auto;
}
.tj-popup-banners .popup-banner img {
  display: block;
  margin: 0 auto;
}

.shimmer {
	color: grey;
	display: inline-block;
	mask: linear-gradient(-60deg, #000 30%, #0005, #000 70%) right/350% 100%;
	animation: shimmer 2s infinite;
}
@keyframes shimmer {
	100% {
		mask-position: left
	}
}

.promo-page-banner {
    display: block;
}
.promo-highlight-items .caption {
    flex-basis: 100%;
}

.relative {
    position: relative;
}

.btn-play-video {
    background: transparent url(../img/icon/icon-play-white.svg) center center/contain;
    width: calc(var(--gap)*2);
    height: calc(var(--gap)*2);
    display: inline-block;
    cursor: pointer;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    box-shadow: 0 10px 30px rgba(0,0,0,0.4);
    border-radius: 100%;
}

.video-modal-open { overflow: hidden; }

.video-modal-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.7);
  display: none;
  z-index: 100000; /* above WP bars/headers */
  padding: 4vw;
  /* Center modal */
  align-items: center;
  justify-content: center;
}

.video-modal-overlay.is-open {
  display: flex;
}

.video-modal {
  position: relative;
  margin: 0 auto;
  width: 100%;
  max-width: 90vw; /* responsive to viewport width */
}

.video-modal__body {
  position: relative;
  width: 100%;
  background: #000;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(0,0,0,0.4);
  aspect-ratio: 16 / 9; /* default landscape */
}

/* Portrait mode sizing: switch to 9:16 and limit width to fit height */
.video-modal-overlay.is-portrait .video-modal__body {
  aspect-ratio: 9 / 16;
}
.video-modal-overlay.is-portrait .video-modal {
  max-width: 56.25vh; /* 90vh * 9/16 = 56.25vh approximated to fit viewport height */
}

.video-modal__video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  background: #000;
}

.video-modal__close {
  position: absolute;
  z-index: 10;
  top: 8px;
  right: 8px;
  width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  border: none;
  background: red;
  color: #fff;
  font-size: 24px;
  line-height: 36px;
  cursor: pointer;
  padding: 0;
}
.video-modal__close:hover { background: rgba(0,0,0,0.95); }
