/* ==========================================================================
   eeezyshop Modern E-Commerce Typography System (2026 Edition)
   Primary Font:   Poppins (Headings, Product Names, Prices, Buttons, Navigation, Badges)
   Secondary Font: Inter   (Body text, Descriptions, Forms, Filters, Supporting Text)
   ========================================================================== */

/* --------------------------------------------------------------------------
   01. CSS Custom Properties / Design Tokens
   -------------------------------------------------------------------------- */
:root {
  --font-primary: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
  --font-secondary: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
  --font-heading: var(--font-primary);
  --font-body: var(--font-secondary);
}

/* --------------------------------------------------------------------------
   02. Global Base & Body Typography (Inter 400, Line Height 1.6)
   -------------------------------------------------------------------------- */
html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

body {
  font-family: var(--font-body) !important;
  font-weight: 400 !important;
  line-height: 1.6 !important;
  letter-spacing: normal !important;
  font-size: 14px;
}

p,
.desc_footer p,
.about-hero-subtitle,
.product-description,
.es-ecom-item-desc,
.search-results-meta,
.breadcrumb-item,
.modal-body {
  font-family: var(--font-body);
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: normal;
}

/* --------------------------------------------------------------------------
   03. Headings Hierarchy (Poppins 600–700 / Hero 700–800)
   -------------------------------------------------------------------------- */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6,
.section-title h2,
.footer-title h3,
.modal-title,
.es-heading {
  font-family: var(--font-heading) !important;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -0.02em;
}

/* Hero / Main Banner Headings (Poppins 700–800, Tighter Letter Spacing) */
.hero-copy h1,
.about-hero-title,
.es-store-hero-details h1,
.es-ecom-page-title,
.hero-title,
.main-heading {
  font-family: var(--font-heading) !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
  letter-spacing: -0.03em !important;
}

h1, .h1 {
  font-size: 2.25rem; /* ~36px */
  font-weight: 700;
  letter-spacing: -0.025em;
  line-height: 1.2;
}

h2, .h2 {
  font-size: 1.75rem; /* ~28px */
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.25;
}

h3, .h3 {
  font-size: 1.35rem; /* ~21.6px */
  font-weight: 600;
  letter-spacing: -0.015em;
  line-height: 1.3;
}

h4, .h4 {
  font-size: 1.15rem; /* ~18.4px */
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 1.35;
}

h5, .h5 {
  font-size: 1rem; /* 16px */
  font-weight: 600;
  letter-spacing: -0.005em;
  line-height: 1.4;
}

h6, .h6 {
  font-size: 0.875rem; /* 14px */
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1.4;
}

/* --------------------------------------------------------------------------
   04. Product Names / Titles (Poppins 500–600)
   -------------------------------------------------------------------------- */
.product-title,
.product-name,
.home-product-body h3,
.home-product-body h3 a,
.es-product-card-title,
.es-product-card-title a,
.es-horiz-title,
.es-horiz-title a,
.es-product-title,
.es-ecom-item-title,
.single-category-area .category-contend h3,
.single-category-area .category-contend h3 a,
.popular-card-title,
.cart-product-name a,
.table-content table td.plantmore-product-name a {
  font-family: var(--font-heading) !important;
  font-weight: 600 !important;
  letter-spacing: -0.01em !important;
  line-height: 1.35 !important;
}

/* --------------------------------------------------------------------------
   05. Prices (Poppins 600–700)
   -------------------------------------------------------------------------- */
.price,
.price-box,
.new-price,
.new-price1,
.current-price,
.product-price,
.es-product-card-price,
.home-product-meta strong,
.amount,
.total-amount,
.order-total-price,
.plantmore-product-price .amount,
.plantmore-product-subtotal .amount,
.es-ecom-item-price {
  font-family: var(--font-heading) !important;
  font-weight: 700 !important;
  letter-spacing: -0.015em !important;
}

.old-price {
  font-family: var(--font-heading);
  font-weight: 500;
}

/* --------------------------------------------------------------------------
   06. Navigation & Menus (Poppins 500–600)
   -------------------------------------------------------------------------- */
.main-navigation > ul > li > a,
.mean-bar .mean-nav > ul li a,
.mobile-menu a,
.dropdown-menu a,
.es-department-toggle,
.es-account-btn,
.es-account-name,
.es-cart-toggle,
.es-cart-title,
.browse-tabs a,
.es-tab-nav-wrapper .nav-link,
.nav-tabs .nav-link {
  font-family: var(--font-heading) !important;
  font-weight: 600 !important;
  letter-spacing: 0.005em !important;
}

.main-navigation > ul > li > a {
  font-weight: 500 !important;
}
.main-navigation > ul > li.active > a,
.main-navigation > ul > li > a:hover {
  font-weight: 600 !important;
}

/* --------------------------------------------------------------------------
   07. Buttons & Action Links (Poppins 500–600)
   -------------------------------------------------------------------------- */
button,
.btn,
.btn-primary,
.btn-secondary,
.btn-success,
.home-product-link,
.es-btn-view-details,
.es-btn-view-sellers,
.btn-shop-visit,
.es-btn-visit-store,
.clear-filter,
.header-search-btn,
.es-switch-btn,
.add-to-cart,
.es-btn-track {
  font-family: var(--font-heading) !important;
  font-weight: 600 !important;
  letter-spacing: 0.01em !important;
}

/* --------------------------------------------------------------------------
   08. Promotional Text, Badges, Eyebrows & Kickers (Poppins 600–700)
   -------------------------------------------------------------------------- */
.hero-kicker,
.eyebrow,
.home-product-badge,
.stock-tag,
.badge,
.es-store-badge-verified,
.shop-rating-badge,
.es-rating-big-score {
  font-family: var(--font-heading) !important;
  font-weight: 700 !important;
  letter-spacing: 0.02em;
}

/* --------------------------------------------------------------------------
   09. Form Fields, Search, Filters & Inputs (Inter 400–500)
   -------------------------------------------------------------------------- */
input,
select,
textarea,
.form-control,
.header-search-input,
.header-search-type,
.filter-select {
  font-family: var(--font-body) !important;
  font-weight: 400 !important;
  letter-spacing: normal !important;
}

input::placeholder,
textarea::placeholder,
.form-control::placeholder {
  font-family: var(--font-body) !important;
  font-weight: 400 !important;
}

/* Form & Filter Labels (Inter 500–600) */
label,
.control-label,
.form-label,
.es-filter-label,
.product-filter-panel label {
  font-family: var(--font-body) !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em;
}

/* --------------------------------------------------------------------------
   10. Supporting & Secondary Information (Inter 400–500)
   -------------------------------------------------------------------------- */
small,
.text-muted,
.es-product-meta,
.product-results-count,
.shop-place-tag,
.shop-hours-chip,
.es-store-hero-breadcrumb,
.es-ecom-breadcrumb-list,
.es-review-date,
.desc_footer ul li a,
.es-top-support-item {
  font-family: var(--font-body);
  font-weight: 400;
  line-height: 1.5;
}

.text-muted strong,
.es-product-meta strong {
  font-family: var(--font-heading);
}

/* --------------------------------------------------------------------------
   11. Responsive Typography Scaling
   -------------------------------------------------------------------------- */
/* Tablet (991px and down) */
@media (max-width: 991px) {
  .hero-copy h1,
  .about-hero-title {
    font-size: 34px !important;
    line-height: 1.2 !important;
    letter-spacing: -0.02em !important;
  }

  h1, .h1 {
    font-size: 1.85rem !important;
  }

  h2, .h2 {
    font-size: 1.5rem !important;
  }

  h3, .h3 {
    font-size: 1.2rem !important;
  }
}

/* Mobile (767px and down) */
@media (max-width: 767px) {
  body {
    font-size: 13.5px;
    line-height: 1.55 !important;
  }

  .hero-copy h1,
  .about-hero-title {
    font-size: 26px !important;
    line-height: 1.25 !important;
    letter-spacing: -0.015em !important;
  }

  h1, .h1 {
    font-size: 1.5rem !important;
    line-height: 1.25 !important;
  }

  h2, .h2 {
    font-size: 1.3rem !important;
    line-height: 1.3 !important;
  }

  h3, .h3 {
    font-size: 1.15rem !important;
    line-height: 1.35 !important;
  }

  p,
  .desc_footer p,
  .about-hero-subtitle {
    font-size: 13.5px;
    line-height: 1.55;
  }

  .es-product-card-title,
  .home-product-body h3 {
    font-size: 14.5px !important;
  }

  .es-product-card-price,
  .home-product-meta strong {
    font-size: 16.5px !important;
  }
}
