/* ==========================================================
   EMPIRE SKATEBOARD MFG — MODERN STOREFRONT LAYER v1.0
   Loaded after Zeexo's original styles so the legacy theme can
   continue to power OpenCart while the presentation is modern.
   ========================================================== */

:root {
  --empire-black: #080808;
  --empire-ink: #111111;
  --empire-muted: #6d6d6d;
  --empire-line: #e7e7e7;
  --empire-soft: #f5f5f3;
  --empire-white: #ffffff;
  --empire-max: 1440px;
}

html, body { background: var(--empire-white) !important; }
body {
  color: var(--empire-ink) !important;
  font-family: "IBM Plex Sans", Arial, Helvetica, sans-serif !important;
  font-size: 14px;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
}
body * { box-sizing: border-box; }
a { color: var(--empire-ink); }
a:hover, a:focus { color: var(--empire-ink); text-decoration: none; }
.container { max-width: var(--empire-max); width: 100%; }
#wrap-main, .standard-body, #main { background: #fff !important; }
.background-content, .background-breadcrumb, .background-footer, .background-copyright,
.background-header, .background-top, .background-top-bar { background: transparent !important; }
.shadow, .pattern { box-shadow: none !important; background: transparent !important; }
.facebook_left, .facebook_right, .twitter_left, .twitter_right { display: none !important; }

/* ---------- desktop header ---------- */
.empire-header { background: #fff; position: relative; z-index: 100; }
.empire-announcement {
  background: var(--empire-black) !important;
  color: #fff !important;
  text-align: center;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: .08em;
  padding: 8px 15px;
}
.empire-announcement span { margin: 0 9px; opacity: .8; }
.empire-main-header {
  background: #fff !important;
  border-bottom: 1px solid #dedede;
  min-height: 78px;
}
.empire-main-header .container { max-width: 1500px; }
.empire-header-row { min-height: 78px; gap: 26px; }
.empire-wordmark {
  min-width: 205px;
  color: #080808 !important;
  display: inline-flex;
  flex-direction: column;
  line-height: 1;
  text-transform: uppercase;
  white-space: nowrap;
}
.empire-wordmark-main {
  font-size: 31px;
  font-weight: 800;
  letter-spacing: .12em;
}
.empire-wordmark-sub {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .24em;
  margin-top: 5px;
  padding-left: 2px;
}
.empire-nav { flex: 1 1 auto; min-width: 0; }
.empire-nav .wrap-menu { margin: 0 !important; }
.empire-nav-links {
  display: flex !important;
  align-items: center;
  justify-content: center;
  gap: clamp(17px, 1.7vw, 32px);
  width: 100%;
}
.empire-nav-links > a {
  color: #0a0a0a !important;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .025em;
  white-space: nowrap;
  padding: 30px 0 28px;
  position: relative;
}
.empire-nav-links > a:after {
  content: "";
  height: 2px;
  position: absolute;
  bottom: 22px;
  left: 0;
  right: 100%;
  background: #0a0a0a;
  transition: right .18s ease;
}
.empire-nav-links > a:hover:after { right: 0; }
.empire-header-actions { margin-left: auto; gap: 18px; }
.empire-header-actions > a,
.empire-header-actions .open-search > a {
  min-width: 38px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  color: #080808 !important;
  font-size: 8px;
  font-weight: 700;
  letter-spacing: .04em;
}
.empire-header-actions svg { width: 21px !important; height: 21px !important; max-width: 21px; }
.empire-header-actions svg path,
.empire-header-actions svg line,
.empire-header-actions svg circle { stroke: #080808; }
.empire-search { position: relative; }
.empire-search .search_form {
  position: absolute !important;
  top: calc(100% + 18px) !important;
  right: -110px !important;
  left: auto !important;
  width: min(460px, 80vw) !important;
  padding: 14px !important;
  background: #fff !important;
  border: 1px solid #ddd !important;
  box-shadow: 0 12px 30px rgba(0,0,0,.10) !important;
  z-index: 300;
}
.empire-search .search_form input {
  width: 100% !important;
  height: 45px !important;
  border: 1px solid #bdbdbd !important;
  background: #fff !important;
  color: #111 !important;
  font-size: 13px !important;
  padding: 0 45px 0 14px !important;
}
.empire-cart #cart_block { margin: 0 !important; }
.empire-cart .cart-heading { padding: 0 !important; min-width: 34px; }
.empire-cart .cart-heading .open-cart { display: block; }
.empire-cart .cart-heading svg { width: 23px !important; height: 23px !important; }
.empire-cart .cart-count {
  top: -7px !important; right: -8px !important;
  min-width: 17px !important; height: 17px !important;
  border-radius: 50% !important;
  background: #080808 !important; color: #fff !important;
  font-size: 9px !important; font-style: normal !important;
  line-height: 17px !important; text-align: center !important;
}
.empire-cart .dropdown-menu {
  border: 1px solid #ddd !important;
  border-radius: 0 !important;
  box-shadow: 0 14px 35px rgba(0,0,0,.12) !important;
}
.empire-cart:after {
  content: "CART"; display: block; text-align: center; margin-top: 2px;
  color: #080808; font-size: 8px; font-weight: 700; letter-spacing: .04em; line-height: 1;
}

/* ---------- mobile header ---------- */
.empire-mobile-header { display: none; background: #fff; border-bottom: 1px solid #ddd; }
.empire-mobile-header .empire-announcement { font-size: 9px; line-height: 1.25; padding: 6px 10px; }
.empire-mobile-header .empire-announcement span { margin: 0; }
.empire-mobile-row { min-height: 67px; justify-content: space-between; }
.empire-mobile-header .empire-wordmark { min-width: 0; align-items: center; position: absolute; left: 50%; transform: translateX(-50%); }
.empire-mobile-header .empire-wordmark-main { font-size: 23px; letter-spacing: .13em; }
.empire-mobile-header .empire-wordmark-sub { font-size: 7px; margin-top: 4px; }
.empire-mobile-menu-button a { display: flex; width: 30px; height: 30px; align-items: center; }
.empire-mobile-menu-button svg { width: 23px !important; height: 23px !important; }
.empire-mobile-actions { gap: 13px; margin-left: auto; }
.empire-mobile-actions > a { color: #080808; }
.empire-mobile-actions svg { width: 20px !important; height: 20px !important; }
.empire-mobile-actions .open-cart a { font-size: 18px; color: #080808 !important; }
.empire-mobile-drawer { padding: 66px 26px 35px !important; background: #fff !important; }
.empire-mobile-nav { display: flex; flex-direction: column; }
.empire-mobile-nav a {
  display: block;
  border-bottom: 1px solid #e8e8e8;
  color: #080808 !important;
  font-size: 16px;
  font-weight: 800;
  letter-spacing: .02em;
  padding: 16px 0;
}
.empire-mobile-drawer .close-menu2 { top: 22px !important; right: 22px !important; }

/* ---------- home hero ---------- */
.empire-home { background: #fff; overflow: hidden; }
.empire-hero {
  min-height: 525px;
  position: relative;
  display: flex;
  align-items: center;
  color: #fff;
  background-color: #161616;
  background-image: url('../image/empire/hero-factory.jpg');
  background-size: cover;
  background-position: center right;
}
.empire-hero-overlay {
  position: absolute; inset: 0;
  background: linear-gradient(90deg, rgba(0,0,0,.84) 0%, rgba(0,0,0,.62) 36%, rgba(0,0,0,.18) 72%, rgba(0,0,0,.05) 100%);
}
.empire-hero-inner { position: relative; z-index: 2; }
.empire-hero-copy { max-width: 690px; padding: 80px 0 84px; }
.empire-hero h1 {
  color: #fff !important;
  font-size: clamp(43px, 4.1vw, 68px) !important;
  line-height: .98 !important;
  font-weight: 800 !important;
  letter-spacing: -.035em !important;
  margin: 0 0 25px !important;
  text-transform: uppercase;
}
.empire-hero p { max-width: 600px; color: #fff; font-size: 17px; line-height: 1.55; margin: 0 0 28px; }
.empire-hero-actions { display: flex; gap: 13px; flex-wrap: wrap; }
.empire-btn {
  min-width: 156px;
  min-height: 48px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 12px 22px;
  border: 1px solid #111;
  border-radius: 2px;
  font-size: 12px;
  line-height: 1;
  font-weight: 800;
  letter-spacing: .02em;
  transition: .18s ease;
}
.empire-btn-dark { background: #090909; color: #fff !important; border-color: #fff; }
.empire-btn-dark:hover { background: #fff; color: #111 !important; }
.empire-btn-light { background: #fff; color: #111 !important; border-color: #fff; }
.empire-btn-light:hover { background: #111; color: #fff !important; }
.empire-btn-outline { background: transparent; color: #fff !important; border-color: #fff; }
.empire-btn-outline:hover { background: #fff; color: #111 !important; }

/* ---------- home category cards ---------- */
.empire-shop-categories { padding: 34px 0 28px; }
.empire-section-heading { text-align: center; margin: 0 0 20px; }
.empire-section-heading h2 {
  margin: 0 !important;
  color: #111 !important;
  font-size: 19px !important;
  line-height: 1.15 !important;
  font-weight: 800 !important;
  letter-spacing: -.015em;
  text-transform: uppercase;
}
.empire-heading-with-link { position: relative; }
.empire-heading-with-link > a {
  position: absolute; right: 0; top: 50%; transform: translateY(-50%);
  color: #111; border: 1px solid #cfcfcf; padding: 7px 13px;
  font-size: 9px; font-weight: 800; letter-spacing: .03em;
}
.empire-category-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; }
.empire-category-card {
  min-height: 205px;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: flex-end;
  padding: 21px;
  background-size: cover;
  background-position: center;
  color: #fff !important;
  isolation: isolate;
}
.empire-category-card:before {
  content: ""; position: absolute; inset: 0; z-index: -1;
  background: linear-gradient(0deg, rgba(0,0,0,.70) 0%, rgba(0,0,0,.10) 68%, rgba(0,0,0,.05) 100%);
  transition: background .2s ease;
}
.empire-category-card:hover:before { background: linear-gradient(0deg, rgba(0,0,0,.78) 0%, rgba(0,0,0,.22) 100%); }
.empire-category-card span { font-size: 20px; line-height: 1.02; font-weight: 800; letter-spacing: -.02em; text-transform: uppercase; }
.empire-category-card i { font-style: normal; font-size: 25px; font-weight: 300; margin-left: auto; line-height: 1; }
.empire-category-veneer { background-image: url('../image/empire/veneer.jpg'); }
.empire-category-decks { background-image: url('../image/empire/decks.jpg'); }
.empire-category-molds { background-image: url('../image/empire/molds.jpg'); }
.empire-category-adhesives { background-image: url('../image/empire/adhesives.jpg'); }

/* ---------- home products/modules ---------- */
.empire-home-products { padding: 14px 0 36px; }
.empire-module-zone > .box,
.empire-module-zone .box-with-products { margin: 0 0 20px !important; }
.empire-module-zone > .box > .box-heading,
.empire-module-zone .box-with-products > .box-heading { display: none !important; }
.empire-module-zone .box-content { border: 0 !important; padding: 0 !important; background: transparent !important; }
.empire-module-zone .product-grid .row,
.empire-module-zone .box-product .row { margin-left: -5px !important; margin-right: -5px !important; }
.empire-module-zone .product-grid .row > div,
.empire-module-zone .box-product .row > div { padding-left: 5px !important; padding-right: 5px !important; }

/* ---------- product cards everywhere ---------- */
.product-grid .product {
  height: 100%;
  background: #fff !important;
  border: 1px solid #e6e6e6 !important;
  border-radius: 0 !important;
  padding: 0 0 18px !important;
  margin: 0 0 18px !important;
  box-shadow: none !important;
  overflow: hidden;
  transition: box-shadow .18s ease, transform .18s ease;
}
.product-grid .product:hover { box-shadow: 0 9px 28px rgba(0,0,0,.08) !important; transform: translateY(-2px); }
.product-grid .product .left { float: none !important; width: 100% !important; }
.product-grid .product .right { float: none !important; width: auto !important; padding: 14px 14px 0 !important; text-align: left !important; }
.product-grid .product .image {
  width: 100% !important;
  min-height: 0 !important;
  aspect-ratio: 1 / 1;
  margin: 0 !important;
  padding: 12px !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
  background: #fff !important;
  border: 0 !important;
}
.product-grid .product .image > a { display: flex; width: 100%; height: 100%; align-items: center; justify-content: center; }
.product-grid .product .image img { max-width: 100% !important; max-height: 100% !important; width: auto !important; height: auto !important; object-fit: contain; }
.product-grid .product .name { margin: 0 0 7px !important; min-height: 0 !important; }
.product-grid .product .name a {
  color: #111 !important;
  font-size: 13px !important;
  line-height: 1.25 !important;
  font-weight: 800 !important;
  text-transform: uppercase;
  letter-spacing: -.01em;
}
.product-grid .product .price {
  color: #111 !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  margin: 0 !important;
}
.product-grid .product .price-old { color: #8a8a8a !important; font-size: 12px !important; }
.product-grid .product .only-hover { display: none !important; }
.product-grid .product .add-to-cart { opacity: 0; position: absolute !important; bottom: 16px; left: 12px; right: 12px; z-index: 5; transition: opacity .18s ease; }
.product-grid .product:hover .add-to-cart { opacity: 1; }
.product-grid .product .btn-add-to-cart,
.product-grid .product .add-to-cart .button {
  display: block !important; width: 100% !important; text-align: center !important;
  background: #090909 !important; color: #fff !important; border: 0 !important;
  border-radius: 0 !important; padding: 12px 10px !important; font-size: 11px !important; font-weight: 800 !important;
}
.rating .fa-star { color: #ddd !important; }
.rating .fa-star.active { color: #111 !important; }

/* ---------- factory story ---------- */
.empire-factory-story {
  min-height: 300px;
  background: #111 url('../image/empire/factory-banner.jpg') center right / cover no-repeat;
  position: relative;
  display: flex;
  align-items: center;
  color: #fff;
}
.empire-factory-overlay { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(0,0,0,.93) 0%, rgba(0,0,0,.75) 38%, rgba(0,0,0,.14) 78%); }
.empire-factory-inner { position: relative; z-index: 2; }
.empire-factory-copy { max-width: 560px; padding: 55px 0; }
.empire-factory-copy h2 { color: #fff !important; font-size: 32px !important; line-height: 1.02 !important; font-weight: 800 !important; margin: 0 0 15px !important; }
.empire-factory-copy p { color: #fff; max-width: 510px; margin: 0 0 20px; }
.empire-factory-copy .empire-btn { min-height: 39px; min-width: 118px; font-size: 10px; }

/* ---------- trust strip ---------- */
.empire-benefits { border-bottom: 1px solid #e4e4e4; background: #fff; }
.empire-benefit-grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.empire-benefit-grid > div {
  min-height: 84px; display: grid; grid-template-columns: 38px 1fr; grid-template-rows: auto auto;
  align-content: center; column-gap: 10px; padding: 14px 28px; border-right: 1px solid #eee;
}
.empire-benefit-grid > div:last-child { border-right: 0; }
.empire-benefit-grid i { grid-row: 1 / span 2; align-self: center; font-size: 21px; }
.empire-benefit-grid strong { font-size: 11px; line-height: 1.2; font-weight: 800; }
.empire-benefit-grid span { color: #555; font-size: 10px; line-height: 1.2; }

/* ---------- breadcrumb / generic inner pages ---------- */
.breadcrumb { margin: 0 !important; padding: 0 !important; border: 0 !important; background: #fff !important; }
.breadcrumb .container { padding-top: 17px; padding-bottom: 17px; border-bottom: 1px solid #ececec; }
.breadcrumb ul { margin: 0 !important; padding: 0 !important; display: flex; flex-wrap: wrap; gap: 8px; }
.breadcrumb ul li { font-size: 10px !important; color: #777 !important; }
.breadcrumb ul li:after { content: ">" !important; margin-left: 8px !important; color: #aaa !important; }
.breadcrumb ul li:last-child:after { display: none !important; }
.breadcrumb ul li a { color: #666 !important; }
.main-content.inner-page { background: #fff !important; }
.main-content.inner-page > .background > .pattern > .container { padding-top: 35px; padding-bottom: 55px; }

/* ---------- category pages ---------- */
/* Modern category intro */
[class*="product-category"] .empire-category-hero {
  min-height: 245px; display: flex; align-items: center; gap: 48px;
  border-bottom: 1px solid #e7e7e7; padding: 12px 0 30px; margin: 0 0 26px;
}
[class*="product-category"] .empire-category-hero-copy { flex: 1 1 62%; max-width: 760px; }
[class*="product-category"] .empire-category-hero h1 {
  color: #111 !important; font-size: clamp(32px, 3vw, 48px) !important; line-height: 1.02 !important;
  font-weight: 800 !important; letter-spacing: -.035em !important; text-transform: uppercase; margin: 0 0 18px !important;
}
[class*="product-category"] .empire-category-description { color: #333; font-size: 14px; line-height: 1.65; max-width: 660px; }
[class*="product-category"] .empire-category-description p:last-child { margin-bottom: 0; }
[class*="product-category"] .empire-category-hero-image { flex: 0 0 34%; text-align: right; }
[class*="product-category"] .empire-category-hero-image img { max-width: 100%; max-height: 230px; width: auto !important; height: auto !important; object-fit: contain; }
[class*="product-category"] .empire-category-hero.no-image { min-height: 150px; }

[class*="product-category"] .main-content.inner-page > .background > .pattern > .container { max-width: 1440px; }
[class*="product-category"] #mfilter-content-container { width: 100%; }
[class*="product-category"] .category-info {
  min-height: 180px;
  border-bottom: 1px solid #e7e7e7;
  margin: -5px 0 26px !important;
  padding: 10px 0 28px !important;
  display: flex;
  align-items: center;
  gap: 42px;
}
[class*="product-category"] .category-info .image { order: 2; margin-left: auto !important; flex: 0 0 34%; text-align: right; }
[class*="product-category"] .category-info .image img { max-height: 190px; max-width: 100%; width: auto !important; border: 0 !important; }
[class*="product-category"] .category-info > :not(.image) { max-width: 650px; }
[class*="product-category"] .category-info p { color: #333; font-size: 14px; line-height: 1.65; }
[class*="product-category"] h2.refine_search { font-size: 14px !important; font-weight: 800 !important; text-transform: uppercase; }
[class*="product-category"] .category-list { border-bottom: 1px solid #eee; padding-bottom: 24px; margin-bottom: 25px; }
[class*="product-category"] .category-list img { border-radius: 0 !important; }
[class*="product-category"] .category-list a { color: #111 !important; font-size: 12px !important; font-weight: 700 !important; }
[class*="product-category"] .product-filter {
  min-height: 70px;
  display: flex !important;
  flex-wrap: wrap;
  gap: 12px;
  padding: 0 0 20px !important;
  margin: 0 0 20px !important;
  border-bottom: 1px solid #e5e5e5 !important;
}
[class*="product-category"] .product-filter h1 {
  margin: 0 auto 0 0 !important;
  color: #111 !important;
  font-size: 30px !important;
  line-height: 1.1 !important;
  font-weight: 800 !important;
  letter-spacing: -.025em;
  text-transform: uppercase;
}
[class*="product-category"] .product-filter .options { margin-right: 0 !important; }
[class*="product-category"] .product-filter .sort { margin-left: auto !important; }
[class*="product-category"] .product-filter .sort,
[class*="product-category"] .product-filter .limit {
  font-size: 10px !important;
  font-weight: 800 !important;
  text-transform: uppercase;
  gap: 8px;
}
[class*="product-category"] .product-filter select {
  min-width: 150px;
  height: 38px !important;
  padding: 0 30px 0 10px !important;
  border: 1px solid #cfcfcf !important;
  background-color: #fff !important;
  border-radius: 0 !important;
  color: #111 !important;
  font-size: 10px !important;
  font-weight: 700;
}
[class*="product-category"] .product-filter .limit { display: none !important; }
[class*="product-category"] .product-filter .display button {
  width: 38px; height: 38px; border: 1px solid #cfcfcf !important; border-radius: 0 !important; background: #fff !important; color: #111 !important;
}
[class*="product-category"] .product-filter .display #list { display: none !important; }
[class*="product-category"] .product-list { display: none !important; }
[class*="product-category"] .product-grid { display: block !important; }
[class*="product-category"] .product-grid > .row { margin-left: -6px !important; margin-right: -6px !important; }
[class*="product-category"] .product-grid > .row > div { padding-left: 6px !important; padding-right: 6px !important; }
[class*="product-category"] .pagination-results { border-top: 1px solid #e8e8e8; margin-top: 20px; padding-top: 20px; }
[class*="product-category"] .pagination > li > a,
[class*="product-category"] .pagination > li > span { border-radius: 0 !important; color: #111 !important; border-color: #ddd !important; }
[class*="product-category"] #column-left .box { border: 0 !important; }
[class*="product-category"] #column-left .box-heading { background: transparent !important; color: #111 !important; border: 0 !important; border-bottom: 1px solid #111 !important; font-size: 12px !important; font-weight: 800 !important; text-transform: uppercase; padding: 10px 0 !important; }

/* ---------- product detail ---------- */
[class*="product-product"] .product-info { margin-top: 6px; }
[class*="product-product"] .product-info > .row { align-items: flex-start; }
[class*="product-product"] .product-image { background: #fafafa; padding: 20px; }
[class*="product-product"] .product-image-right { width: 100%; }
[class*="product-product"] .product-image-right img { max-width: 100% !important; height: auto !important; object-fit: contain; }
[class*="product-product"] .product-image-left { margin-right: 12px; }
[class*="product-product"] .thumbnails ul { padding: 0; }
[class*="product-product"] .thumbnails li { margin-bottom: 9px !important; }
[class*="product-product"] .thumbnails li p { border: 1px solid #ddd !important; border-radius: 0 !important; background: #fff !important; padding: 4px !important; }
[class*="product-product"] .product-center { padding-left: 38px !important; }
[class*="product-product"] .product-center h1 {
  color: #111 !important; font-size: clamp(28px, 3vw, 44px) !important; line-height: 1.02 !important;
  font-weight: 800 !important; letter-spacing: -.035em !important; text-transform: uppercase; margin: 5px 0 10px !important;
}
[class*="product-product"] .product-center .brand { font-size: 10px !important; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
[class*="product-product"] .product-center .review { margin: 7px 0 18px !important; }
[class*="product-product"] .product-center .description {
  border: 0 !important; border-top: 1px solid #ececec !important; border-bottom: 1px solid #ececec !important;
  padding: 12px 0 !important; margin: 0 0 18px !important; color: #666 !important; font-size: 11px !important;
}
[class*="product-product"] .product-center .price {
  color: #111 !important; font-size: 26px !important; line-height: 1.15 !important; font-weight: 800 !important; margin: 0 0 24px !important;
}
[class*="product-product"] .product-center .price-tax { color: #777 !important; font-size: 10px !important; font-weight: 400 !important; }
[class*="product-product"] .product-center .options h2 { font-size: 13px !important; font-weight: 800 !important; text-transform: uppercase; }
[class*="product-product"] .product-center .control-label { color: #111 !important; font-size: 11px !important; font-weight: 800 !important; text-transform: uppercase; }
[class*="product-product"] .product-center .form-control { border-radius: 0 !important; border-color: #cfcfcf !important; min-height: 44px; }
[class*="product-product"] .product-center .quantity { border: 1px solid #cfcfcf !important; height: 48px !important; background: #fff !important; }
[class*="product-product"] .product-center .quantity input { height: 46px !important; background: #fff !important; color: #111 !important; }
[class*="product-product"] #button-cart,
[class*="product-product"] #button-cart2 {
  height: 48px !important; min-width: 205px !important; padding: 0 24px !important;
  border: 1px solid #090909 !important; border-radius: 0 !important; background: #090909 !important; color: #fff !important;
  font-size: 12px !important; font-weight: 800 !important; letter-spacing: .02em !important; text-transform: uppercase;
}
[class*="product-product"] #button-cart:hover,
[class*="product-product"] #button-cart2:hover { background: #fff !important; color: #111 !important; }
[class*="product-product"] .product-center .links { margin-top: 14px !important; }
[class*="product-product"] .product-center .links a { color: #555 !important; font-size: 10px !important; font-weight: 700 !important; text-transform: uppercase; }
[class*="product-product"] .product-center .links a:last-child { display: none !important; }
[class*="product-product"] #tabs.htabs {
  display: flex !important; flex-direction: column !important; border-top: 1px solid #ddd !important; margin-top: 35px !important;
}
[class*="product-product"] #tabs.htabs a {
  display: block !important; width: 100% !important; padding: 18px 5px !important; border: 0 !important; border-bottom: 1px solid #ddd !important;
  background: #fff !important; color: #111 !important; font-size: 12px !important; font-weight: 800 !important; text-transform: uppercase; text-align: left !important;
}
[class*="product-product"] .tab-content { padding: 24px 5px !important; border: 0 !important; color: #333 !important; line-height: 1.75 !important; }

/* ---------- buttons/forms ---------- */
.button, .btn, .btn-primary, button, input[type="button"], input[type="submit"] { border-radius: 0 !important; }
.button, .btn-primary { background: #0a0a0a !important; color: #fff !important; border-color: #0a0a0a !important; font-weight: 700 !important; }
.form-control, input, textarea, select { border-radius: 0 !important; }

/* ---------- footer ---------- */
.empire-custom-footer {
  background: #090909;
  color: #fff;
  padding: 42px 0 26px;
}
.empire-footer-grid { display: grid; grid-template-columns: 1.6fr repeat(4, 1fr); gap: 35px; }
.empire-footer-brand .empire-wordmark { color: #fff !important; margin-bottom: 13px; }
.empire-footer-brand p { color: #bbb; font-size: 11px; max-width: 270px; line-height: 1.6; }
.empire-footer-column h4 { color: #fff !important; font-size: 10px !important; font-weight: 800 !important; letter-spacing: .06em; margin: 0 0 13px !important; text-transform: uppercase; }
.empire-footer-column a { display: block; color: #c4c4c4 !important; font-size: 10px; padding: 3px 0; }
.empire-footer-column a:hover { color: #fff !important; }
.empire-footer-bottom { border-top: 1px solid #282828; margin-top: 35px; padding-top: 20px; color: #777; font-size: 9px; display: flex; justify-content: space-between; gap: 20px; }
.footer, .copyright { display: none !important; }

/* ---------- modal cleanup ---------- */
#modalAddToCartProduct .modal-content { border-radius: 0 !important; border: 0 !important; }
#modalAddToCartProduct .btn { border-radius: 0 !important; }
#modalAddToCartProduct .tt-title a { color: #111 !important; }

/* ---------- responsive ---------- */
@media (max-width: 1279px) {
  .empire-nav-links { gap: 15px; }
  .empire-nav-links > a { font-size: 10px; }
  .empire-wordmark { min-width: 180px; }
  .empire-wordmark-main { font-size: 27px; }
  .empire-header-actions { gap: 12px; }
}

@media (max-width: 991px) {
  .empire-nav-links > a:nth-child(5), .empire-nav-links > a:nth-child(6) { display: none !important; }
  .empire-header-actions span { display: none !important; }
  .empire-header-row { gap: 15px; }
  .empire-wordmark { min-width: 165px; }
  .empire-hero { min-height: 500px; background-position: 62% center; }
  .empire-hero-copy { max-width: 560px; padding: 70px 0; }
  .empire-hero h1 { font-size: 48px !important; }
  .empire-category-grid { grid-template-columns: repeat(2, 1fr); }
  .empire-category-card { min-height: 190px; }
  .empire-benefit-grid { grid-template-columns: repeat(2, 1fr); }
  .empire-benefit-grid > div:nth-child(2) { border-right: 0; }
  .empire-benefit-grid > div:nth-child(-n+2) { border-bottom: 1px solid #eee; }
  [class*="product-product"] .product-center { padding-left: 20px !important; }
  .empire-footer-grid { grid-template-columns: 2fr repeat(2, 1fr); }
  .empire-footer-brand { grid-row: span 2; }
}

@media (max-width: 767px) {
  .empire-header { display: none !important; }
  .empire-mobile-header { display: block !important; }
  .is-sticky #top { display: none !important; }
  .empire-mobile-header .mobile-search { width: 100%; }
  .empire-mobile-header .mobile-search .search_form { display: none !important; position: relative !important; top: auto !important; left: auto !important; right: auto !important; width: 100% !important; margin: 0 0 12px !important; padding: 0 !important; background: #fff !important; border: 0 !important; box-shadow: none !important; }
  .empire-mobile-header .mobile-search .search_form.active { display: block !important; }
  .empire-mobile-header .mobile-search .search_form input { height: 42px !important; border: 1px solid #ccc !important; background: #fff !important; color: #111 !important; padding: 0 42px 0 12px !important; }
  .empire-mobile-header .mobile-search .button-search { right: 13px !important; }
  .container { padding-left: 16px !important; padding-right: 16px !important; }
  .empire-hero { min-height: 470px; background-position: 63% center; }
  .empire-hero-overlay { background: linear-gradient(90deg, rgba(0,0,0,.86), rgba(0,0,0,.42)); }
  .empire-hero-copy { padding: 62px 0 58px; max-width: 440px; }
  .empire-hero h1 { font-size: 39px !important; line-height: 1.02 !important; }
  .empire-hero p { font-size: 14px; max-width: 400px; }
  .empire-btn { min-width: 135px; min-height: 44px; padding: 10px 16px; font-size: 10px; }
  .empire-shop-categories { padding-top: 27px; }
  .empire-category-grid { grid-template-columns: 1fr; gap: 5px; }
  .empire-category-card { min-height: 108px; background-position: center; }
  .empire-category-card span { font-size: 17px; }
  .empire-heading-with-link > a { font-size: 8px; padding: 6px 9px; }
  .product-grid .product .right { padding: 10px 9px 0 !important; }
  .product-grid .product .name a { font-size: 11px !important; }
  .product-grid .product .price { font-size: 12px !important; }
  .product-grid .product .add-to-cart { display: none !important; }
  .empire-factory-story { min-height: 285px; background-position: 70% center; }
  .empire-factory-overlay { background: rgba(0,0,0,.72); }
  .empire-factory-copy { padding: 45px 0; max-width: 440px; }
  .empire-factory-copy h2 { font-size: 27px !important; }
  .empire-benefit-grid { grid-template-columns: 1fr 1fr; }
  .empire-benefit-grid > div { min-height: 77px; padding: 12px; grid-template-columns: 30px 1fr; }
  .empire-benefit-grid i { font-size: 17px; }
  .empire-benefit-grid strong { font-size: 9px; }
  .empire-benefit-grid span { font-size: 8px; }
  .main-content.inner-page > .background > .pattern > .container { padding-top: 22px; padding-bottom: 35px; }
  [class*="product-category"] .empire-category-hero { display: block; min-height: 0; padding-bottom: 22px; }
  [class*="product-category"] .empire-category-hero h1 { font-size: 30px !important; }
  [class*="product-category"] .empire-category-hero-image { margin-top: 18px; text-align: center; }
  [class*="product-category"] .empire-category-hero-image img { max-height: 170px; }
  [class*="product-category"] .category-info { display: block; min-height: 0; }
  [class*="product-category"] .category-info .image { margin: 0 0 18px !important; text-align: center; }
  [class*="product-category"] .category-info .image img { max-height: 150px; }
  [class*="product-category"] .product-filter h1 { width: 100%; font-size: 25px !important; }
  [class*="product-category"] .product-filter .options { margin-left: 0 !important; }
  [class*="product-category"] .product-filter .sort { margin-left: auto !important; }
  [class*="product-category"] .product-filter .sort > :first-child { display: none; }
  [class*="product-category"] .product-filter select { min-width: 132px; }
  [class*="product-product"] .product-center { padding-left: 15px !important; padding-right: 15px !important; padding-top: 24px !important; }
  [class*="product-product"] .product-center h1 { font-size: 30px !important; }
  [class*="product-product"] #button-cart { min-width: 180px !important; }
  .empire-footer-grid { grid-template-columns: 1fr 1fr; gap: 25px 18px; }
  .empire-footer-brand { grid-column: 1 / -1; grid-row: auto; }
  .empire-footer-bottom { flex-direction: column; }
}

@media (max-width: 420px) {
  .empire-mobile-actions { gap: 9px; }
  .empire-mobile-header .empire-wordmark-main { font-size: 20px; }
  .empire-mobile-header .empire-wordmark-sub { font-size: 6px; }
  .empire-hero h1 { font-size: 35px !important; }
  .empire-hero-actions { gap: 8px; }
  .empire-btn { min-width: 128px; }
}
