/* Ecomoshop refresh 2026 - overrides for the legacy storefront. */
:root {
  --ec-ink: #172127;
  --ec-muted: #66737b;
  --ec-surface: #fff;
  --ec-canvas: #f5f7f8;
  --ec-border: #dfe5e8;
  --ec-brand: #f25c27;
  --ec-brand-dark: #cf4311;
  --ec-dark: #172127;
  --ec-radius: 5px;
  --ec-shadow: 0 12px 32px rgba(23, 33, 39, .08);
}

html { scroll-behavior: smooth; }

body.modern-ec-storefront {
  background: var(--ec-canvas);
  color: var(--ec-ink);
  font-family: Inter, "Segoe UI", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.6;
}

.modern-ec-storefront *,
.modern-ec-storefront *::before,
.modern-ec-storefront *::after { box-sizing: border-box; }
.modern-ec-storefront img { border-radius: var(--ec-radius); }
.modern-ec-storefront a {
  color: var(--ec-ink);
  transition: color .2s ease, background-color .2s ease, border-color .2s ease, transform .2s ease;
}
.modern-ec-storefront a:hover,
.modern-ec-storefront a:focus { color: var(--ec-brand-dark); }
.modern-ec-storefront .container { width: min(1180px, calc(100% - 32px)); }
.modern-ec-storefront .loader-container,
.modern-ec-storefront .overlay-bg,
.modern-ec-storefront .switcher { display: none !important; }
.modern-ec-storefront .ptb-100 { padding: 48px 0; }
.modern-ec-storefront .bg-4 { background: var(--ec-canvas); }

/* Header */
.modern-ec-storefront .home2-header-area {
  background: var(--ec-surface);
  border-bottom: 1px solid var(--ec-border);
  box-shadow: 0 4px 20px rgba(23, 33, 39, .05);
  position: relative;
  z-index: 50;
}
.modern-ec-storefront .home2-header-area .header-top {
  background: var(--ec-dark);
  min-height: 38px;
}
.modern-ec-storefront .home2-header-area .header-top .profile-wrap ul li,
.modern-ec-storefront .home2-header-area .header-top-right ul li {
  line-height: 22px;
  margin: 0 16px 0 0;
  padding: 8px 0;
}
.modern-ec-storefront .home2-header-area .header-top .profile-wrap ul li a,
.modern-ec-storefront .home2-header-area .header-top-right,
.modern-ec-storefront .home2-header-area .header-top-right ul li a {
  color: #fff;
  font-size: 13px;
  font-weight: 500;
  text-transform: none;
}
.modern-ec-storefront .header-muddil-area {
  background: #fff;
  padding: 10px 0;
}
.modern-ec-storefront .logo {
  align-items: center;
  display: flex;
  min-height: 56px;
  padding: 0;
}
.modern-ec-storefront .logo h1,
.modern-ec-storefront .logo .site-logo {
  font-family: inherit;
  font-size: 26px;
  letter-spacing: 0;
  margin: 0;
  width: 100%;
}
.modern-ec-storefront .logo img {
  display: block;
  max-height: 56px;
  max-width: 210px;
  object-fit: contain;
}
.modern-ec-storefront .select-form { padding: 5px 0; }
.modern-ec-storefront .select-form form {
  align-items: stretch;
  display: flex;
  gap: 10px;
}
.modern-ec-storefront .select-form input {
  background: #f8fafb;
  border: 1px solid var(--ec-border);
  border-radius: var(--ec-radius);
  color: var(--ec-ink);
  flex: 1;
  font-size: 15px;
  height: 48px;
  padding: 0 16px;
}
.modern-ec-storefront .select-form button,
.modern-ec-storefront .form-style button,
.modern-ec-storefront .order-button-payment button {
  background: var(--ec-brand);
  border: 1px solid var(--ec-brand);
  border-radius: var(--ec-radius);
  color: #fff;
  font-weight: 700;
  min-height: 44px;
  padding: 0 28px;
}
.modern-ec-storefront .select-form button:hover,
.modern-ec-storefront .form-style button:hover,
.modern-ec-storefront .order-button-payment button:hover {
  background: var(--ec-brand-dark);
  border-color: var(--ec-brand-dark);
  color: #fff;
}
.modern-ec-storefront .header-bottom-area {
  background: #fff;
  border-top: 1px solid var(--ec-border);
  min-height: 60px;
}
.modern-ec-storefront .header-bottom-area.sticky {
  border-bottom: 1px solid var(--ec-border);
  box-shadow: 0 8px 24px rgba(23, 33, 39, .08);
}
.modern-ec-storefront .catagory-wrap {
  background: var(--ec-dark);
  border-radius: var(--ec-radius);
  margin: 7px 0;
}
.modern-ec-storefront .catagory-wrap > a {
  color: #fff;
  display: block;
  font-size: 14px;
  font-weight: 700;
  padding: 12px 18px;
  text-transform: uppercase;
}
.modern-ec-storefront .catagory-wrap > a i { margin-right: 10px; }
.modern-ec-storefront .mainmenu ul li { padding: 19px 13px; }
.modern-ec-storefront .mainmenu ul li a {
  color: var(--ec-ink);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .02em;
}
.modern-ec-storefront .mainmenu ul li > ul {
  border: 1px solid var(--ec-border);
  border-radius: 0 0 var(--ec-radius) var(--ec-radius);
  box-shadow: var(--ec-shadow);
  padding: 12px;
}
.modern-ec-storefront .header-bottom-right ul li { padding: 15px 12px; }
.modern-ec-storefront .header-bottom-right ul li > a {
  align-items: center;
  background: var(--ec-canvas);
  border-radius: var(--ec-radius);
  display: inline-flex;
  height: 36px;
  justify-content: center;
  width: 42px;
}
.modern-ec-storefront .header-bottom-right ul li span {
  background: var(--ec-brand);
  border-radius: 10px;
  right: 4px;
  top: 8px;
}
.modern-ec-storefront .wishlist-image img {
  height: 72px;
  object-fit: cover;
  width: 72px;
}

/* Slider, breadcrumbs and titles */
.modern-ec-storefront .single-slider {
  border-radius: var(--ec-radius);
  height: clamp(280px, 26vw, 360px);
  min-height: 0;
  overflow: hidden;
}
.modern-ec-storefront .single-slider > img {
  display: block;
  height: 100% !important;
  object-fit: cover;
  object-position: center;
  width: 100%;
}
.modern-ec-storefront .single-slider::before {
  background: linear-gradient(90deg, rgba(10, 18, 22, .64), rgba(10, 18, 22, .08));
}
.modern-ec-storefront .slider-content h2 {
  background: linear-gradient(90deg, rgba(13, 24, 30, .7), rgba(13, 24, 30, .18));
  border-left: 4px solid var(--ec-brand);
  border-radius: var(--ec-radius);
  color: #fff !important;
  display: inline-block;
  font-family: inherit;
  font-size: clamp(34px, 5vw, 62px);
  letter-spacing: -.03em;
  padding: 14px 24px;
  text-shadow: 0 3px 18px rgba(0, 0, 0, .65);
}
.modern-ec-storefront .slider-content h3,
.modern-ec-storefront .slider-content p {
  color: #fff !important;
  text-shadow: 0 2px 10px rgba(0, 0, 0, .55);
}
.modern-ec-storefront .bradcumb-area {
  background: #eef2f4;
  padding: 28px 0;
}
.modern-ec-storefront .bradcumb-wrap h1,
.modern-ec-storefront .bradcumb-wrap h2,
.modern-ec-storefront .pageTitle {
  color: var(--ec-ink);
  font-family: inherit;
  font-size: clamp(27px, 3vw, 38px);
  font-weight: 750;
  letter-spacing: -.02em;
  margin: 0 0 5px;
}
.modern-ec-storefront .bradcumb-wrap ul li,
.modern-ec-storefront .bradcumb-wrap ul li a {
  color: var(--ec-muted);
  font-size: 13px;
}

/* Product grids */
.modern-ec-storefront .product-area { background: var(--ec-canvas); }
.modern-ec-storefront .section-title { margin-bottom: 28px; }
.modern-ec-storefront .section-title h1,
.modern-ec-storefront .section-title h2,
.modern-ec-storefront .section-title h3 {
  color: var(--ec-ink);
  font-family: inherit;
  font-size: clamp(27px, 3vw, 38px);
  font-weight: 750;
  letter-spacing: -.025em;
  margin: 0;
  padding: 0 0 12px;
  text-transform: none;
}
.modern-ec-storefront .section-title h1::before,
.modern-ec-storefront .section-title h2::before,
.modern-ec-storefront .section-title h3::before {
  background: var(--ec-brand);
  bottom: 0;
  height: 3px;
  width: 72px;
}
.modern-ec-storefront .section-title h1::after,
.modern-ec-storefront .section-title h2::after,
.modern-ec-storefront .section-title h3::after { display: none; }
.modern-ec-storefront .product-wrap {
  background: #fff;
  border: 1px solid var(--ec-border);
  border-radius: var(--ec-radius);
  box-shadow: none;
  display: flex;
  flex-direction: column;
  height: calc(100% - 30px);
  min-height: 430px;
  overflow: hidden;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.modern-ec-storefront .product-wrap:hover {
  border-color: #c8d1d6;
  box-shadow: var(--ec-shadow);
  transform: translateY(-3px);
}
.modern-ec-storefront .product-img {
  background: #fff;
  height: 265px;
  padding: 14px;
}
.modern-ec-storefront .product-img > a { height: 100%; }
.modern-ec-storefront .product-wrap .product-img a img {
  height: 100%;
  object-fit: contain;
  width: 100%;
}
.modern-ec-storefront .product-wrap .product-img a img.secondary { display: none; }
.modern-ec-storefront .product-wrap:hover .product-img a img.primary { transform: scale(1.025); }
.modern-ec-storefront .product-content {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-height: 165px;
  padding: 16px 18px 18px;
}
.modern-ec-storefront .product-content > a:first-child {
  color: var(--ec-ink);
  display: -webkit-box;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.4;
  margin: 0 0 10px;
  min-height: 45px;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.modern-ec-storefront .product-content > span {
  color: var(--ec-ink);
  font-size: 19px;
  font-weight: 750;
  margin: auto 0 0;
}
.modern-ec-storefront .product-content .cart-btn { margin-top: 14px; }
.modern-ec-storefront .product-content .cart-btn ul li {
  display: block;
  margin: 0;
}
.modern-ec-storefront .product-content .cart-btn ul li a {
  background: var(--ec-brand);
  border-radius: var(--ec-radius);
  color: #fff;
  font-size: 13px;
  padding: 10px 14px;
}
.modern-ec-storefront .product-icon ul li a {
  background: var(--ec-dark);
  border-radius: 0 var(--ec-radius) var(--ec-radius) 0;
}
.modern-ec-storefront .new,
.modern-ec-storefront .sale { border-radius: var(--ec-radius); }

/* Product page */
.modern-ec-storefront .product-details-area { padding-top: 38px; }
.modern-ec-storefront .product-details-wrap,
.modern-ec-storefront .product-details-conttent,
.modern-ec-storefront .product-details-area .tab-content,
.modern-ec-storefront .related-product {
  background: #fff;
  border: 1px solid var(--ec-border);
  border-radius: var(--ec-radius);
  box-shadow: none;
}
.modern-ec-storefront .product-details-wrap { padding: 18px; }
.modern-ec-storefront .product-details-active { margin-bottom: 16px; }
.modern-ec-storefront .product-details-img img { max-width: 100%; }
.modern-ec-storefront .thamb-active { padding: 0 42px; }
.modern-ec-storefront .product-details-thambnil { padding: 0 6px; }
.modern-ec-storefront .product-details-thambnil img {
  border: 1px solid var(--ec-border);
  height: 112px;
  margin: 0 auto;
  object-fit: contain;
  padding: 5px;
  width: 100% !important;
}
.modern-ec-storefront .thamb-active .owl-nav div {
  background: var(--ec-dark);
  border-radius: var(--ec-radius);
  line-height: 112px;
}
.modern-ec-storefront .product-details-conttent {
  min-height: 100%;
  padding: 32px;
}
.modern-ec-storefront .product-details-conttent h2 {
  color: var(--ec-ink);
  font-family: inherit;
  font-size: 32px;
  font-weight: 750;
  letter-spacing: -.02em;
  margin-bottom: 20px;
}
.modern-ec-storefront .product-details-conttent .stock {
  background: #f7f9fa;
  border-left: 3px solid var(--ec-brand);
  border-radius: 0 var(--ec-radius) var(--ec-radius) 0;
  margin-bottom: 18px;
  padding: 10px 12px;
}
.modern-ec-storefront .product-details-conttent .stock span { font-size: 16px; }
.modern-ec-storefront .product-details-conttent > ul {
  background: #f8fafb;
  border-radius: var(--ec-radius);
  margin-bottom: 18px;
  padding: 14px 18px;
}
.modern-ec-storefront .product-details-conttent > ul li {
  border-bottom: 1px solid var(--ec-border);
  font-size: 14px;
  list-style: none !important;
  margin: 0 !important;
  padding: 5px 0 !important;
}
.modern-ec-storefront .product-details-conttent > ul li:last-child { border-bottom: 0; }
.modern-ec-storefront .product-price span {
  color: var(--ec-ink);
  font-size: 28px;
}
.modern-ec-storefront .quality-wrap a,
.modern-ec-storefront a.readmore {
  background: var(--ec-brand);
  border-radius: var(--ec-radius);
  color: #fff;
  font-weight: 700;
  padding: 12px 24px;
}
.modern-ec-storefront .quality-wrap a:hover,
.modern-ec-storefront a.readmore:hover {
  background: var(--ec-brand-dark);
  color: #fff;
}
.modern-ec-storefront .product-details-menu { margin-top: 18px; }
.modern-ec-storefront .product-details-menu ul {
  display: flex;
  gap: 4px;
}
.modern-ec-storefront .product-details-menu ul li a {
  background: #e8edef;
  border: 0;
  border-radius: var(--ec-radius) var(--ec-radius) 0 0;
  color: var(--ec-ink);
}
.modern-ec-storefront .product-details-menu ul li.active a {
  background: var(--ec-dark);
  color: #fff;
}
.modern-ec-storefront .product-details-area .tab-content {
  border-top-left-radius: 0;
  color: var(--ec-ink);
  padding: 28px;
}

/* Cart and tables */
.modern-ec-storefront .cart-title {
  color: var(--ec-ink);
  font-family: inherit;
  font-size: 32px;
  font-weight: 750;
}
.modern-ec-storefront .table-responsive {
  background: #fff;
  border: 1px solid var(--ec-border);
  border-radius: var(--ec-radius);
  padding: 18px;
}
.modern-ec-storefront .table-responsive table { width: 100%; }
.modern-ec-storefront .table-responsive tr th {
  background: #eef2f4 !important;
  border-color: var(--ec-border);
  color: var(--ec-ink) !important;
  font-size: 13px;
  height: 46px;
}
.modern-ec-storefront .table-responsive tr td {
  border-color: var(--ec-border);
  color: var(--ec-ink);
}
.modern-ec-storefront .table-responsive tr td img {
  height: 82px;
  object-fit: cover;
  width: 82px;
}
.modern-ec-storefront .table-responsive tr td span { color: var(--ec-ink); }
.modern-ec-storefront .table-responsive tr td:nth-child(5) {
  min-width: 125px;
  white-space: nowrap;
}
.modern-ec-storefront .table-responsive tr td:nth-child(5) input {
  height: 38px;
  padding: 5px;
  width: 48px;
}
.modern-ec-storefront .table-responsive tr td:nth-child(5) a {
  display: inline-block;
  line-height: 38px;
  vertical-align: middle;
}
.modern-ec-storefront .table-responsive tr td:nth-child(5) a i {
  font-size: 18px;
  margin-left: 4px !important;
  margin-right: 4px !important;
}
.modern-ec-storefront .cart-btn > ul {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: flex-end;
}
.modern-ec-storefront .cart-btn ul li { margin: 0; }
.modern-ec-storefront .table-responsive button,
.modern-ec-storefront .cart-btn ul li a {
  background: var(--ec-brand);
  border: 1px solid var(--ec-brand);
  border-radius: var(--ec-radius);
  color: #fff;
  font-size: 13px;
  min-height: 42px;
  padding: 10px 20px;
  width: auto;
}

/* Forms */
.modern-ec-storefront .login-wrap,
.modern-ec-storefront .checkbox-form {
  background: #fff;
  border: 1px solid var(--ec-border);
  border-radius: var(--ec-radius);
  box-shadow: var(--ec-shadow);
  padding: 28px;
}
.modern-ec-storefront .form-style h3 {
  color: var(--ec-ink);
  font-size: 25px;
  font-weight: 750;
}
.modern-ec-storefront .form-style input[type="text"],
.modern-ec-storefront .form-style input[type="email"],
.modern-ec-storefront .form-style input[type="password"],
.modern-ec-storefront .form-style textarea,
.modern-ec-storefront .checkout-form-list input,
.modern-ec-storefront .country-select select {
  background: #fff;
  border: 1px solid #cfd8dc;
  border-radius: var(--ec-radius);
  color: var(--ec-ink);
  min-height: 46px;
  padding: 10px 13px;
  width: 100%;
}
.modern-ec-storefront input:focus,
.modern-ec-storefront textarea:focus,
.modern-ec-storefront select:focus {
  border-color: var(--ec-brand);
  box-shadow: 0 0 0 3px rgba(242, 92, 39, .13);
  outline: 0;
}

/* Footer and newsletter */
.modern-ec-storefront .black-opacity {
  background: var(--ec-dark);
  padding: 48px 0;
}
.modern-ec-storefront .newslatter-wrap h2 {
  color: #fff;
  font-family: inherit;
  font-weight: 750;
}
.modern-ec-storefront .newslatter-wrap form {
  display: flex;
  gap: 10px;
}
.modern-ec-storefront .newslatter-wrap input[type="email"] {
  background: #fff;
  border: 1px solid #fff;
  border-radius: var(--ec-radius);
  color: var(--ec-ink);
  flex: 1;
  height: 48px;
  padding: 0 16px;
}
.modern-ec-storefront .newslatter-wrap button {
  background: var(--ec-brand);
  border: 1px solid var(--ec-brand);
  border-radius: var(--ec-radius);
  color: #fff;
  font-weight: 700;
  padding: 0 28px;
}
.modern-ec-storefront .footer-top {
  background: #202c32;
  color: #dce3e6;
  padding: 52px 0;
}
.modern-ec-storefront .footer-widget h2 {
  color: #fff;
  font-size: 15px;
  letter-spacing: .04em;
}
.modern-ec-storefront .footer-menu ul li a,
.modern-ec-storefront .footer-widget a { color: #dce3e6; }
.modern-ec-storefront .footer-bottom {
  background: #131c21;
  padding: 18px 0;
}
.modern-ec-storefront .copyright p {
  color: #aebbc1;
  font-size: 14px;
}

@media (max-width: 991px) {
  .modern-ec-storefront .container { width: min(100% - 24px, 760px); }
  .modern-ec-storefront .header-top-right { text-align: left; }
  .modern-ec-storefront .header-muddil-area .logo { justify-content: center; }
  .modern-ec-storefront .product-details-conttent { padding: 24px; }
}

@media (max-width: 767px) {
  .modern-ec-storefront { font-size: 15px; }
  .modern-ec-storefront .ptb-100 { padding: 32px 0; }
  .modern-ec-storefront .home2-header-area .header-top .row {
    display: flex;
    flex-direction: column;
  }
  .modern-ec-storefront .profile-wrap,
  .modern-ec-storefront .header-top-right { text-align: center; }
  .modern-ec-storefront .home2-header-area .header-top-right ul li { margin: 0 5px; }
  .modern-ec-storefront .select-form form,
  .modern-ec-storefront .newslatter-wrap form { flex-direction: column; }
  .modern-ec-storefront .select-form button,
  .modern-ec-storefront .newslatter-wrap button { height: 46px; }
  .modern-ec-storefront .single-slider { height: clamp(190px, 58vw, 240px); }
  .modern-ec-storefront .slider-content h2 {
    font-size: clamp(22px, 7vw, 30px);
    padding: 8px 14px;
  }
  .modern-ec-storefront .product-img { height: 250px; }
  .modern-ec-storefront .product-details-img img { height: 330px !important; }
  .modern-ec-storefront .product-details-conttent { min-height: 0; }
  .modern-ec-storefront .product-details-menu ul li a { font-size: 13px; }
  .modern-ec-storefront .table-responsive { padding: 8px; }
  .modern-ec-storefront .table-responsive table { min-width: 760px; }
  .modern-ec-storefront .cart-btn > ul {
    align-items: stretch;
    flex-direction: column;
  }
  .modern-ec-storefront .cart-btn ul li a,
  .modern-ec-storefront .cart-btn ul li button {
    display: block;
    width: 100% !important;
  }
}
