/*
Theme Name: Astra Child (eReadSpot Veterinary)
Theme URI: https://ereadspot.com/
Template: astra
Author: eReadSpot
Version: 1.9.0
*/

@import url('https://fonts.googleapis.com/css2?family=Instrument+Serif:ital@0;1&family=Plus+Jakarta+Sans:wght@400;500;600;700&display=swap');

:root {
  --es-bg: #070b0e;
  --es-surface: #0e1620;
  --es-border: rgba(255, 255, 255, 0.08);
  --es-teal: #2dd4bf;
  --es-teal-dark: #042f2e;
  --es-orange: #f59e0b;
  --es-orange-dark: #451a03;
  --es-text-primary: #f8fafc;
  --es-text-muted: #94a3b8;
  --es-text-dim: #64748b;
}

body, .site, #page {
  background-color: var(--es-bg) !important;
  color: var(--es-text-primary) !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
}

/* Eliminate runaway WordPress emoji images */
img.emoji,
.woocommerce ul.products li.product img.emoji,
.woocommerce-LoopProduct-link img.emoji {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}

/* =======================================================
   HIDE SIDEBAR SEARCH & CATEGORIES
   ======================================================= */
#secondary .widget_product_search,
#secondary .woocommerce-product-search,
.sidebar-main .widget_product_search,
.sidebar-main .woocommerce-product-search,
.ast-woocommerce-sidebar .widget_product_search,
#secondary .widget_product_categories,
.sidebar-main .widget_product_categories,
.ast-woocommerce-sidebar .widget_product_categories,
#secondary .widget_categories,
.sidebar-main .widget_categories,
#secondary .product-categories,
.sidebar-main .product-categories,
#secondary ul.product-categories,
.sidebar-main ul.product-categories,
#secondary li.cat-item,
.sidebar-main li.cat-item,
#secondary .cat-parent,
.sidebar-main .cat-parent {
  display: none !important;
}

/* =======================================================
   HEADER: CATEGORY TITLE + SEARCH
   ======================================================= */
.vet-archive-header-row {
  max-width: 1200px;
  margin: 30px auto 10px;
  padding: 0 15px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  flex-wrap: wrap;
}

.vet-category-title-wrap {
  flex: 1 1 320px;
}

.vet-active-category-heading {
  font-family: 'Instrument Serif', Georgia, serif !important;
  font-size: 2.3rem !important;
  line-height: 1.15 !important;
  color: #fff !important;
  margin: 0 !important;
}

.vet-active-category-sub {
  color: var(--es-text-muted);
  font-size: 0.85rem;
  margin-top: 4px;
}

.vet-search-inline-wrap {
  flex: 0 1 340px;
}

.vet-inline-searchform {
  display: flex;
  align-items: center;
  position: relative;
  width: 100%;
}

.vet-inline-searchform input[type="search"] {
  width: 100% !important;
  background: rgba(14, 22, 32, 0.8) !important;
  border: 1px solid var(--es-border) !important;
  color: #fff !important;
  border-radius: 999px !important;
  padding: 10px 48px 10px 18px !important;
  font-size: 0.88rem !important;
  outline: none !important;
}

.vet-inline-searchform input[type="search"]:focus {
  border-color: var(--es-teal) !important;
}

.vet-inline-searchform button[type="submit"] {
  position: absolute !important;
  right: 6px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  background: var(--es-teal) !important;
  border: none !important;
  color: var(--es-teal-dark) !important;
  width: 32px !important;
  height: 32px !important;
  border-radius: 50% !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
}

.ast-archive-description,
.woocommerce-products-header {
  display: none !important;
}

/* =======================================================
   PILLS NAVIGATION
   ======================================================= */
.vet-nav-container {
  max-width: 1200px;
  margin: 15px auto 25px;
  padding: 0 15px;
}

.vet-parent-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 12px;
}

.vet-pill {
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid var(--es-border);
  color: var(--es-text-muted);
  padding: 7px 16px;
  border-radius: 999px;
  font-size: 0.85rem;
  font-weight: 600;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  transition: all 0.2s ease;
}

.vet-pill:hover {
  border-color: rgba(255, 255, 255, 0.25);
  color: #fff;
}

.vet-pill.active {
  background: var(--es-orange);
  color: var(--es-orange-dark);
  border-color: var(--es-orange);
}

.vet-sub-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 10px 14px;
  background: rgba(14, 22, 32, 0.7);
  border: 1px solid var(--es-border);
  border-radius: 10px;
}

.vet-sub-pill {
  font-size: 0.8rem;
  color: var(--es-text-muted);
  text-decoration: none;
  padding: 4px 10px;
  border-radius: 6px;
  transition: background 0.2s ease, color 0.2s ease;
}

.vet-sub-pill:hover, .vet-sub-pill.active {
  background: rgba(20, 184, 166, 0.15);
  color: var(--es-teal);
}

/* =======================================================
   PRODUCT GRID & TALL CARDS
   ======================================================= */
.woocommerce ul.products {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)) !important;
  gap: 22px !important;
  padding: 0 !important;
  margin: 0 auto !important;
}

.woocommerce ul.products li.product {
  background: var(--es-surface) !important;
  border: 1px solid var(--es-border) !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  position: relative !important;
  transition: transform 0.25s ease, border-color 0.25s ease !important;
}

.woocommerce ul.products li.product:hover {
  transform: translateY(-4px) !important;
  border-color: rgba(255, 255, 255, 0.22) !important;
}

.woocommerce ul.products li.product a.woocommerce-LoopProduct-link {
  display: block !important;
  position: relative !important;
  width: 100% !important;
  height: 350px !important;
  background: #05080b !important;
  overflow: hidden !important;
  text-decoration: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.woocommerce ul.products li.product a.woocommerce-LoopProduct-link > img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: top center !important;
  display: block !important;
  border-radius: 14px 14px 0 0 !important;
  margin: 0 !important;
}

/* Saves Animals Badge */
.vet-cause-badge {
  position: absolute !important;
  top: 12px !important;
  left: 12px !important;
  background-color: var(--es-orange) !important;
  color: var(--es-orange-dark) !important;
  font-size: 0.68rem !important;
  font-weight: 700 !important;
  padding: 4px 11px !important;
  border-radius: 999px !important;
  z-index: 10 !important;
  display: inline-block !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.4) !important;
  text-transform: capitalize !important;
}

/* Card Body Details */
.woocommerce-loop-product__title {
  font-family: 'Instrument Serif', Georgia, serif !important;
  font-size: 1.15rem !important;
  line-height: 1.25 !important;
  color: #ffffff !important;
  margin: 14px 0 6px 0 !important;
  padding: 0 16px !important;
  text-align: left !important;
  font-weight: 400 !important;
}

.vet-card-excerpt {
  font-size: 0.8rem !important;
  line-height: 1.35 !important;
  color: var(--es-text-muted) !important;
  margin: 0 0 5px 0 !important;
  padding: 0 16px !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  text-align: left !important;
}

.vet-charity-sub {
  font-size: 0.75rem !important;
  color: var(--es-text-dim) !important;
  margin: 0 0 16px 0 !important;
  padding: 0 16px !important;
  text-align: left !important;
}

/* Bottom Price & Button */
.vet-card-bottom-row {
  margin-top: auto;
  padding: 0 16px 16px 16px;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px;
}

.vet-card-bottom-row .price {
  font-size: 1.15rem !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  margin: 0 !important;
  padding: 0 !important;
  display: inline-block !important;
  text-align: left !important;
}

.vet-card-bottom-row .price del {
  color: #64748b !important;
  font-size: 0.85rem !important;
  margin-right: 4px !important;
}

.vet-card-bottom-row .price ins {
  color: #fff !important;
  text-decoration: none !important;
}

.vet-card-bottom-row .button {
  background: var(--es-teal) !important;
  color: var(--es-teal-dark) !important;
  font-weight: 700 !important;
  font-size: 0.8rem !important;
  border-radius: 8px !important;
  padding: 6px 14px !important;
  margin: 0 !important;
  border: none !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  cursor: pointer !important;
}

/* Hide default Astra/WooCommerce misplaced duplicates */
.woocommerce ul.products li.product > .button,
.woocommerce ul.products li.product > .price,
.woocommerce ul.products li.product .astra-shop-summary-wrap .price,
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link + .price {
  display: none !important;
}
