.elementor-kit-4980{--e-global-color-primary:#286090;--e-global-color-secondary:#343333;--e-global-color-text:#343333;--e-global-color-accent:#FFBB48;--e-global-color-dtjsdarkblue:#302D9F;--e-global-color-dtjslinkblue:#0088CC;--e-global-color-dtjsgrey:#949494;--e-global-color-dtjslightgrey:#E8E8E8;--e-global-color-dtjswhite:#FFFFFF;--e-global-color-dtjsheading:#424242;--e-global-color-dtjsfootertext:#C5C5C5;--e-global-color-dtjstopbar:#707070;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:400;--e-global-typography-secondary-font-family:"Roboto";--e-global-typography-secondary-font-weight:300;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:300;--e-global-typography-text-line-height:1.6em;--e-global-typography-accent-font-family:"Abril Fatface";--e-global-typography-accent-font-weight:400;--e-global-typography-dtjsnav-font-family:"Roboto";--e-global-typography-dtjsnav-font-size:17px;--e-global-typography-dtjsnav-font-weight:400;--e-global-typography-dtjsnav-line-height:18px;--e-global-typography-dtjsnav-letter-spacing:1px;--e-global-typography-dtjshero-font-family:"Abril Fatface";--e-global-typography-dtjshero-font-size:50px;--e-global-typography-dtjshero-font-weight:400;--e-global-typography-dtjshero-line-height:52px;--e-global-typography-dtjssubheading-font-family:"Abril Fatface";--e-global-typography-dtjssubheading-font-size:32px;--e-global-typography-dtjssubheading-font-weight:400;--e-global-typography-dtjssubheading-line-height:1.2em;background-color:#FFFFFF;color:#343333;font-family:"Roboto", Sans-serif;font-size:16px;font-weight:300;}.elementor-kit-4980 e-page-transition{background-color:#FFBC7D;}.elementor-kit-4980 a{color:#0088CC;}.elementor-kit-4980 h1{color:#343333;font-family:"Roboto", Sans-serif;font-size:50px;font-weight:100;line-height:50px;}.elementor-kit-4980 h2{color:#343333;font-family:"Roboto", Sans-serif;font-size:50px;font-weight:100;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1170px;}.e-con{--container-max-width:1170px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//**
 * DTJS Site Custom CSS
 * Only styles that cannot be set via Elementor widget controls:
 * theme overrides, custom HTML widgets, and WooCommerce/shortcode output markup.
 * Typography, colours, spacing, and borders are configured on widgets in template JSON.
 */

:root {
  --dtjs-grey: #949494;
  --dtjs-white: #FFFFFF;
  --dtjs-text: #343333;
  --dtjs-border: #E8E8E8;
  --dtjs-accent: #FFBB48;
  --dtjs-nav-hover: #EAEAE9;
}

/* Hello Elementor – hide default page title when template provides its own heading */
body.elementor-page .page-header {
  display: none !important;
}

/* Nav – first item has no left border */
.elementor-location-header .dtjs-main-nav .elementor-nav-menu--main > li:first-child > .elementor-item {
  border-left: none;
}

/* My Account dropdown (HTML widget) */
.elementor-location-header .dtjs-wc-account {
  position: relative;
  font-family: Roboto, sans-serif;
  font-size: 16px;
  line-height: 20px;
}

.elementor-location-header .dtjs-wc-account-title {
  color: var(--dtjs-text);
  text-decoration: none;
  cursor: pointer;
}

.elementor-location-header .dtjs-wc-account-title::after {
  content: "\f107";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-left: 4px;
}

.elementor-location-header .dtjs-wc-account-content {
  display: none;
  position: absolute;
  right: 0;
  top: 100%;
  margin-top: 35px;
  width: 170px;
  background: var(--dtjs-white);
  box-shadow: 0 0 18px rgba(0, 0, 0, 0.15);
  border-radius: 0;
  z-index: 100;
  padding-top: 13px;
}

.elementor-location-header .dtjs-wc-account-content::before {
  content: "";
  position: absolute;
  top: -6px;
  left: 33px;
  border-width: 0 6px 6px 6px;
  border-style: solid;
  border-color: transparent transparent var(--dtjs-white) transparent;
}

.elementor-location-header .dtjs-wc-account:hover .dtjs-wc-account-content,
.elementor-location-header .dtjs-wc-account:focus-within .dtjs-wc-account-content {
  display: block;
}

.elementor-location-header .dtjs-wc-account-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.elementor-location-header .dtjs-wc-account-list a {
  display: block;
  font-weight: 300;
  font-size: 16px;
  color: #424343;
  padding: 9px 25px;
  text-decoration: none;
}

.elementor-location-header .dtjs-wc-account-list a:hover {
  background: var(--dtjs-nav-hover);
}

.elementor-location-header .dtjs-wc-account-auth a {
  display: block;
  color: var(--dtjs-text);
  font-weight: 300;
  font-size: 14px;
  background: var(--dtjs-nav-hover);
  padding: 16px 25px;
  text-decoration: none;
}

.elementor-location-header .dtjs-wc-account-auth a:hover {
  color: var(--dtjs-white);
  background: var(--dtjs-accent);
}

/* Hero slider – carousel image crop */
.dtjs-hero-slider .swiper-slide-image {
  width: 100%;
  height: auto;
  object-fit: cover;
  object-position: top center;
}

/* WooCommerce category grid – grey title bars (wc-categories output) */
.dtjs-product-categories ul.products {
  display: flex;
  flex-wrap: wrap;
  margin: 25px 0 0 -30px !important;
  padding: 0;
  list-style: none;
}

.dtjs-product-categories ul.products li.product-category {
  width: calc(25% - 30px);
  margin: 0 0 30px 30px !important;
  float: none;
  text-align: center;
}

.dtjs-product-categories ul.products li.product-category img {
  width: 100%;
  height: auto;
  margin: 0;
}

.dtjs-product-categories .woocommerce-loop-category__title {
  cursor: pointer;
  line-height: 3rem !important;
  background: var(--dtjs-grey) !important;
  height: 3rem;
  color: var(--dtjs-white) !important;
  margin-left: -1.6rem !important;
  margin-top: 2rem !important;
  margin-bottom: -3rem !important;
  width: 15.7rem !important;
  max-width: calc(100% + 1.6rem);
  font-family: Roboto, sans-serif;
  font-size: 16px;
  font-weight: 400;
  padding: 0 10px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dtjs-product-categories .woocommerce-loop-category__title mark.count {
  display: none !important;
}

.dtjs-product-categories ul.products li.product-category > a {
  text-decoration: none;
}

/* WooCommerce featured products – card wrapper layout */
.dtjs-featured-products ul.products {
  display: flex;
  flex-wrap: wrap;
  margin: 0 0 0 20px !important;
  padding: 0;
  list-style: none;
}

.dtjs-featured-products ul.products li.product {
  float: left;
  width: 250px !important;
  max-width: calc(33.333% - 20px);
  padding: 25px;
  margin: 0 0 30px 20px !important;
  text-align: center;
  background: var(--dtjs-white);
  border-radius: 5px;
  box-shadow: 0 0 18px rgba(0, 0, 0, 0.1);
  box-sizing: border-box;
}

.dtjs-featured-products ul.products li.product img {
  width: 100%;
  height: auto;
}

/* Products sidebar – shortcode category list chevrons */
.dtjs-products-sidebar-categories .product-categories {
  list-style: none;
  margin: 0;
  padding: 0;
  width: 100%;
}

.dtjs-products-sidebar-categories .product-categories li {
  font-size: 18px;
  margin: 0 0 10px;
  font-weight: 300;
  position: relative;
}

.dtjs-products-sidebar-categories .product-categories li a {
  color: #5c5c5c;
  text-decoration: none;
  font-family: Roboto, sans-serif;
  font-weight: 300;
}

.dtjs-products-sidebar-categories .product-categories li a:hover {
  color: var(--dtjs-accent);
}

.dtjs-products-sidebar-categories .product-categories li::before {
  color: #e89642;
  font-size: 20px;
  content: "\f105";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-right: 14px;
  display: inline-block;
}

@media (max-width: 1024px) {
  .dtjs-product-categories ul.products li.product-category {
    width: calc(33.333% - 30px);
  }

  .dtjs-featured-products ul.products li.product {
    max-width: calc(50% - 20px);
  }
}

@media (max-width: 768px) {
  .dtjs-product-categories ul.products li.product-category {
    width: calc(50% - 20px);
    margin-left: 20px !important;
  }

  .dtjs-product-categories ul.products {
    margin-left: -20px !important;
  }

  .dtjs-featured-products ul.products {
    margin-left: 0 !important;
    justify-content: center;
  }

  .dtjs-featured-products ul.products li.product {
    max-width: 100%;
    width: 100% !important;
    margin-left: 0 !important;
  }

  .elementor-location-header .dtjs-wc-account-content {
    left: 50%;
    right: auto;
    margin-left: -85px;
  }
}

@media (max-width: 480px) {
  .dtjs-product-categories ul.products li.product-category {
    width: calc(100% - 20px);
  }

  .dtjs-product-categories .woocommerce-loop-category__title {
    font-size: 1em !important;
    width: calc(100% + 1.6rem) !important;
  }
}

@media (max-width: 375px) {
  .elementor-location-header .dtjs-shop-nav .elementor-icon-list-items {
    flex-direction: column;
    align-items: center;
    gap: 8px;
  }
}/* End custom CSS */