/* =====================================================================
   npf-store.css — storefront design layer (appearance only)
   Loaded last from header.php. Re-colours the template's blue to the
   homepage's wood & gold palette and tidies cards, buttons and type.
   Rules here change looks only: no display/visibility of features,
   no content. Remove the <link> in header.php to roll back.
   `html body` prefixes win over the per-page <style> blocks.
   ===================================================================== */

:root {
  --st-espresso: #1d0e04;
  --st-dark: #2d1205;
  --st-brown: #5C3A1E;
  --st-mid: #8B5E3C;
  --st-gold: #C8860A;
  --st-gold-lt: #FFD873;
  --st-cream: #fdf6f0;
  --st-sand: #f6efe6;
  --st-line: #eadfd3;
  --st-ink: #1f1a17;
  --st-text: #4f4842;
  --st-muted: #8a7f76;
  --st-radius: 14px;
  --st-shadow: 0 1px 2px rgba(45, 18, 5, .05), 0 6px 18px rgba(45, 18, 5, .06);
  --st-shadow-h: 0 2px 4px rgba(45, 18, 5, .06), 0 14px 30px rgba(45, 18, 5, .12);

  /* template variables */
  --theme-color: #8B5E3C;
  --theme-color-light: rgba(139, 94, 60, .08);
  --theme-bg-light: #faf6f1;
  --body-text-color: #5b534c;
  --footer-bg: #1d0e04;
}

/* ---------- Base type ---------- */
html body {
  color: var(--body-text-color);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}
html body h1, html body h2, html body h3, html body h4, html body h5 { color: var(--st-ink); letter-spacing: -.01em; }
html body ::selection { background: var(--st-gold-lt); color: var(--st-ink); }

/* ---------- Top bar ---------- */
html body .header-top { background: var(--st-espresso); padding: 7px 0; }
html body .header-top-list li { color: #eadccb; font-size: 13px; font-weight: 400; border-right-color: rgba(255, 255, 255, .12); }
html body .header-top-list li a { color: #eadccb; }
html body .header-top-list li a:hover { color: var(--st-gold-lt); }
html body .header-top-list li i { color: var(--st-gold); }
html body .header-top-social a { color: #eadccb; }
html body .header-top-social a:hover { color: var(--st-gold-lt); }

/* ---------- Main navigation ---------- */
html body .navbar { box-shadow: 0 1px 0 rgba(45, 18, 5, .06); }
html body .navbar .nav-link { color: var(--st-ink); font-weight: 500; }
html body .navbar .nav-link:hover,
html body .navbar .nav-link.active { color: var(--st-mid); }
html body .navbar .dropdown-menu { border: 1px solid var(--st-line); border-radius: 12px; box-shadow: var(--st-shadow-h); }
html body .navbar .dropdown-item:hover { background: var(--st-sand); color: var(--st-brown); }

/* ---------- Buttons ---------- */
html body .theme-btn {
  background: linear-gradient(135deg, var(--st-brown), var(--st-mid));
  color: #fff;
  font-weight: 600;
  letter-spacing: .01em;
  box-shadow: 0 6px 16px rgba(92, 58, 30, .22);
}
html body .theme-btn::before { background: var(--st-espresso); }
html body .theme-btn:hover { color: #fff; }
html body .theme-btn.theme-btn2,
html body .npf-auth-btn { background: linear-gradient(135deg, var(--st-gold), #a86d05); color: #fff; }

/* ---------- Page banner (breadcrumb) ---------- */
html body .site-breadcrumb-bg {
  background:
    radial-gradient(ellipse at 85% 30%, rgba(200, 134, 10, .28), transparent 55%),
    repeating-linear-gradient(100deg, rgba(255, 255, 255, .018) 0 2px, transparent 2px 9px),
    linear-gradient(135deg, var(--st-espresso), var(--st-brown)) !important;
}
html body .site-breadcrumb::before,
html body .site-breadcrumb::after { opacity: 0; }
html body .site-breadcrumb .breadcrumb-title {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-weight: 700;
  color: #fff;
  letter-spacing: 0;
}
html body .site-breadcrumb .breadcrumb-menu li,
html body .site-breadcrumb .breadcrumb-menu li a { color: #eadccb; }
html body .site-breadcrumb .breadcrumb-menu li.active { color: var(--st-gold-lt); }

/* ---------- Section headings ---------- */
html body .site-title-tagline { color: var(--st-gold); }
html body .site-title span { color: var(--st-mid); }
html body .site-title { color: var(--st-ink); }

/* ---------- Forms ---------- */
html body .form-control:focus,
html body .form-select:focus {
  border-color: var(--st-gold);
  box-shadow: 0 0 0 3px rgba(200, 134, 10, .15);
}

/* ---------- Shop: product cards ---------- */
html body .shop-item-wrap .product-item {
  border: 1px solid var(--st-line);
  border-radius: var(--st-radius);
  box-shadow: var(--st-shadow);
}
html body .shop-item-wrap .product-item:hover {
  transform: translateY(-4px);
  border-color: rgba(200, 134, 10, .45);
  box-shadow: var(--st-shadow-h);
}
html body .shop-item-wrap .product-item .product-img {
  aspect-ratio: 1 / 1;
  background: var(--st-sand);
  border-bottom: 0;
}
html body .shop-item-wrap .product-item .product-img > a > img {
  object-fit: cover;
  padding: 0;
  transition: transform .5s ease;
}
html body .shop-item-wrap .product-item:hover .product-img > a > img { transform: scale(1.05); }
html body .shop-item-wrap .product-item .product-content { padding: 14px 14px 16px; }
html body .shop-item-wrap .product-item .product-title a { color: var(--st-ink); font-weight: 600; }
html body .shop-item-wrap .product-item .product-title a:hover { color: var(--st-mid); }
html body .shop-item-wrap .product-item .product-price span { color: var(--st-ink); font-weight: 700; font-size: 17px; }
html body .shop-item-wrap .product-item .product-price del,
html body .shop-item-wrap .product-item .product-price-original { color: var(--st-muted); font-weight: 400; font-size: 13px; }
@media (max-width: 575px) {
  html body .shop-item-wrap .product-grid { gap: 12px; }
  html body .shop-item-wrap .product-grid > [class*="col-"] { flex: 0 0 calc(50% - 6px); max-width: calc(50% - 6px); }
  html body .shop-item-wrap .product-item .product-content { padding: 10px 10px 12px; gap: 4px; }
  html body .shop-item-wrap .product-item .product-title { min-height: 38px; }
  html body .shop-item-wrap .product-item .product-title a { font-size: 13.5px; line-height: 1.4; }
  html body .shop-item-wrap .product-item .product-price span { font-size: 15px; }
}

/* Shop sidebar filters */
html body .shop-sidebar .widget,
html body .shop-widget { border-radius: var(--st-radius); }
html body .shop-widget-title,
html body .shop-sidebar .widget-title { color: var(--st-ink); }
html body .shop-widget label,
html body .shop-sidebar label { color: var(--st-text); }
html body .form-check-input:checked { background-color: var(--st-mid); border-color: var(--st-mid); }
html body .pagination .page-link { color: var(--st-brown); }
html body .pagination .active .page-link,
html body .pagination li.active a { background: var(--st-brown); border-color: var(--st-brown); color: #fff; }

/* ---------- SEO landing pages ---------- */
html body .seo-intro-section h1,
html body .section-header .site-title,
html body .seo-prod-name,
html body .seo-why-card h5,
html body .seo-loc-info h4,
html body .seo-loc-detail strong,
html body .seo-faq-q,
html body .seo-price-cat,
html body .seo-price-tbl td a { color: var(--st-ink); }
html body .seo-price-tbl td a:hover { color: var(--st-mid); }
html body .seo-prod-card { border: 1px solid var(--st-line); border-radius: var(--st-radius); box-shadow: var(--st-shadow); transition: transform .25s ease, box-shadow .25s ease; }
html body .seo-prod-card:hover { transform: translateY(-4px); box-shadow: var(--st-shadow-h); }
html body .seo-prod-price { color: var(--st-ink); }
html body .seo-prod-btn,
html body .seo-why-icon,
html body .seo-loc-icon { background: linear-gradient(135deg, var(--st-brown), var(--st-mid)); }
html body .seo-why-card:hover { box-shadow: 0 8px 24px rgba(92, 58, 30, .12); }
html body .seo-faq-q:not(.collapsed) { background: var(--st-cream); color: var(--st-brown); }
/* inline navy panels (showroom card, bottom call-to-action band) */
html body [style*="#1a1a2e,#2563eb"],
html body [style*="#1a1a2e, #2563eb"] {
  background: linear-gradient(135deg, var(--st-espresso), var(--st-brown)) !important;
}
html body [style*="#1a1a2e,#2563eb"] h2,
html body [style*="#1a1a2e,#2563eb"] h3 { color: #fff; }
html body [style*="#1a1a2e,#2563eb"] a[style*="color:#1a1a2e"] { color: var(--st-brown) !important; }

/* ---------- Product page ---------- */
html body .shop-single-title::after { background: var(--st-gold); }
html body .thumbnails-container .npf-thumb.selected { outline-color: var(--st-gold); }
html body .slider-button:hover { background: var(--st-brown); border-color: var(--st-brown); }
html body .shop-single-info .table.table-bordered label { border-left-color: var(--st-gold); color: var(--st-ink); }
html body .shop-single-info select.form-control {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238B5E3C' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
}
html body .shop-single-info .form-control:hover,
html body .shop-single-info select.form-control:hover { border-color: var(--st-mid); }
html body .shop-single-info .form-control:focus,
html body .shop-single-info select.form-control:focus { border-color: var(--st-gold); box-shadow: 0 0 0 3px rgba(200, 134, 10, .15); }
html body .shop-single-info .table.table-bordered select.form-control {
  background-image: linear-gradient(45deg, transparent 50%, var(--st-mid) 50%), linear-gradient(135deg, var(--st-mid) 50%, transparent 50%);
}
/* read-only price box reads as a price, not a text field */
html body .shop-single-info input#price[readonly] {
  color: var(--st-ink) !important;
  font-weight: 800;
  font-size: 1.35rem;
  background: var(--st-cream);
  border-color: var(--st-line);
}
html body .related-item .view-more-btn { background: linear-gradient(135deg, var(--st-brown), var(--st-mid)); }
html body .npf-mob-cart-btn:active { border-color: var(--st-mid); color: var(--st-mid); }

/* ---------- Footer ---------- */
html body .footer-area { background: var(--st-espresso); }
html body .footer-area::after {
  content: "";
  position: absolute; inset: 0;
  background: radial-gradient(ellipse at 10% 0%, rgba(200, 134, 10, .12), transparent 50%);
  pointer-events: none;
  z-index: -1;
}
html body .footer-widget-title { color: #fff; }
html body .footer-widget-title::before,
html body .footer-widget-title::after { background: var(--st-gold); }
html body .footer-list li a,
html body .footer-widget-box p,
html body .footer-contact li,
html body .footer-contact li a { color: #d9c9b8; }
html body .footer-list li a:hover,
html body .footer-contact li a:hover { color: var(--st-gold-lt); }
html body .footer-list li a::before { color: var(--st-gold); }
html body .footer-contact li i { background: rgba(200, 134, 10, .18); color: var(--st-gold-lt); }
html body .footer-social a { background: rgba(255, 255, 255, .06); color: #eadccb; }
html body .footer-social a:hover { background: var(--st-gold); color: #fff; }
html body .copyright { background: #140902; border-top-color: rgba(255, 255, 255, .06); }
html body #priya-input:focus { border-color: var(--st-mid); }

/* ---------- Fixes after review ---------- */
/* shop cards: photo runs edge to edge (template adds 20px padding + a tinted panel) */
html body .shop-item-wrap .product-item { padding: 0; }
html body .shop-item-wrap .product-item::before { content: none; }
/* pagination: light chips, brown for the current page */
html body .pagination .page-link,
html body .pagination li > a,
html body .pagination li > span {
  background: #fff;
  color: var(--st-brown);
  border: 1px solid var(--st-line);
  box-shadow: none;
}
html body .pagination .page-link:hover { background: var(--st-sand); color: var(--st-brown); }
html body .pagination .page-item.active .page-link,
html body .pagination li.active > a { background: var(--st-brown); border-color: var(--st-brown); color: #fff; }
html body .pagination li.disabled > a,
html body .pagination li.disabled > span { color: var(--st-muted); }
/* second call-to-action reads as secondary */
html body .seo-intro-cta .theme-btn-two {
  background: #fff;
  color: var(--st-brown);
  border: 1.5px solid var(--st-brown);
  box-shadow: none;
}
html body .seo-intro-cta .theme-btn-two:hover { color: #fff; }
/* product page: breadcrumb and trust badges in brand colours */
html body .npf-breadcrumb-bar { background: var(--st-cream); border-bottom-color: var(--st-line); }
html body .npf-breadcrumb a { color: var(--st-mid); }
html body .ptrust-card { border-color: var(--st-line); }
html body .ptrust-icon,
html body .ptrust-icon-2,
html body .ptrust-icon-3 { background: linear-gradient(135deg, var(--st-brown), var(--st-mid)); }
html body .ptrust-title { color: var(--st-ink); }
/* footer logo is dark artwork: give it a light disc so it reads on espresso */
html body .footer-logo img { background: var(--st-cream); border-radius: 50%; padding: 10px; width: 120px; }
