/* ============================================================
   HERITAGE BLUE THEME — sidebar + bordered cards, navy & gold
   ============================================================ */
[data-theme="heritage"] {
  --p:#1e3a5f; --p-dark:#152a45; --p-light:#eef2f7; --accent:#c8a24a; --border:#dde3ec; --bg:#f4f6f9;
}
body[data-theme="heritage"] { background:var(--bg); }

[data-theme="heritage"] .topbar { background:#1e3a5f !important; }
[data-theme="heritage"] .header-nav { background:#1e3a5f; }
[data-theme="heritage"] .nav-link { color:#fff; }
[data-theme="heritage"] .nav-link:hover { background:rgba(200,162,74,.25); }
[data-theme="heritage"] .header-action-btn { color:#1e3a5f; }

.hr-banner { height:300px; background-size:cover; background-position:center; display:flex; align-items:center; position:relative; }
.hr-banner::before { content:''; position:absolute; inset:0; background:linear-gradient(90deg,rgba(30,58,95,.85),rgba(30,58,95,.3)); }
.hr-banner-inner { position:relative; z-index:1; color:#fff; }
.hr-banner-inner h1 { font-size:clamp(1.8rem,4vw,3rem); font-weight:800; font-family:Georgia,serif; }
.hr-banner-inner p { margin:.5rem 0 1.25rem; font-size:1.05rem; opacity:.95; }
.hr-btn { display:inline-block; background:#c8a24a; color:#1e3a5f; font-weight:700; padding:.7rem 1.8rem; border-radius:4px; text-transform:uppercase; letter-spacing:.05em; font-size:.82rem; }
.hr-btn--sm { padding:.5rem 1.1rem; font-size:.72rem; }

.hr-layout { display:grid; grid-template-columns:240px 1fr; gap:2rem; align-items:start; padding-top:2.5rem; padding-bottom:3rem; }
.hr-sidebar { background:#fff; border:1px solid var(--border); border-radius:6px; padding:1.25rem; position:sticky; top:90px; }
.hr-side-title { font-family:Georgia,serif; font-size:1.1rem; color:#1e3a5f; border-bottom:2px solid #c8a24a; padding-bottom:.6rem; margin-bottom:.75rem; }
.hr-cat-list li a { display:flex; justify-content:space-between; padding:.6rem .25rem; border-bottom:1px solid #f0f2f6; font-size:.9rem; color:#33445c; }
.hr-cat-list li a:hover { color:#c8a24a; padding-left:.6rem; }
.hr-promo-box { margin-top:1.25rem; background:linear-gradient(135deg,#1e3a5f,#2c5282); color:#fff; padding:1.25rem; border-radius:6px; text-align:center; }
.hr-promo-tag { font-size:.7rem; text-transform:uppercase; letter-spacing:.15em; color:#c8a24a; font-weight:700; }
.hr-promo-box p { margin:.5rem 0 1rem; font-size:.95rem; }

.hr-sec-head { display:flex; align-items:center; justify-content:space-between; border-bottom:2px solid #1e3a5f; padding-bottom:.6rem; margin-bottom:1.25rem; }
.hr-sec-head h2 { font-family:Georgia,serif; font-size:1.4rem; color:#1e3a5f; }
.hr-sec-head a { font-size:.8rem; color:#c8a24a; font-weight:700; }

.hr-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.25rem; }
.hr-card { background:#fff; border:1px solid var(--border); border-radius:6px; overflow:hidden; transition:.2s; }
.hr-card:hover { border-color:#c8a24a; box-shadow:0 6px 18px rgba(30,58,95,.12); }
.hr-card-img { display:block; position:relative; aspect-ratio:1; background:#f4f6f9; overflow:hidden; }
.hr-card-img img { width:100%; height:100%; object-fit:cover; }
.hr-tag { position:absolute; top:.5rem; left:.5rem; background:#c8a24a; color:#1e3a5f; font-size:.7rem; font-weight:800; padding:.2rem .55rem; border-radius:3px; }
.hr-card-body { padding:.9rem; }
.hr-card-name { display:block; font-size:.9rem; color:#1e3a5f; font-weight:600; line-height:1.3; height:2.4em; overflow:hidden; }
.hr-stars { color:#c8a24a; font-size:.78rem; margin:.3rem 0; letter-spacing:1px; }
.hr-card-price { font-size:1.05rem; font-weight:800; color:#1e3a5f; margin-bottom:.6rem; }
.hr-card-price del { font-size:.78rem; font-weight:400; color:#aab; margin-left:.4rem; }
.hr-add { width:100%; background:#1e3a5f; color:#fff; border:none; padding:.6rem; border-radius:4px; font-size:.8rem; font-weight:600; cursor:pointer; transition:.2s; }
.hr-add:hover { background:#c8a24a; color:#1e3a5f; }

[data-theme="heritage"] .products-grid { grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:1.25rem; }

/* Product detail — heritage: bordered boxes, serif title, navy/gold */
[data-theme="heritage"] .product-detail { border:1px solid #dde3ec; border-radius:6px; box-shadow:none; }
[data-theme="heritage"] .gallery-main { border:1px solid #dde3ec; border-radius:4px; }
[data-theme="heritage"] .gallery-thumb.active, [data-theme="heritage"] .gallery-thumb:hover { border-color:#c8a24a; }
[data-theme="heritage"] .product-title { font-family:Georgia,serif; color:#1e3a5f; font-weight:700; }
[data-theme="heritage"] .product-price-box { background:#eef2f7; border:1px solid #dde3ec; border-radius:4px; }
[data-theme="heritage"] .price-main { color:#1e3a5f; }
[data-theme="heritage"] .tab-btn--active, [data-theme="heritage"] .tab-btn:hover { color:#c8a24a; border-bottom-color:#c8a24a; }
[data-theme="heritage"] .section-title { font-family:Georgia,serif; color:#1e3a5f; }
[data-theme="heritage"] .section-title::before { background:#c8a24a; }

[data-theme="heritage"] .footer { background:#152a45; }

@media (max-width:900px){ .hr-layout{ grid-template-columns:1fr;} .hr-sidebar{ position:static;} .hr-grid{ grid-template-columns:repeat(2,1fr);} }
@media (max-width:480px){ .hr-grid{ grid-template-columns:repeat(2,1fr); gap:.85rem;} }
