/* Data Alchemy . alchemyV51.css
   Minimal, valid, and broadly compatible CSS.
   Avoids exotic at-rules; no @import; simple selectors only. */

/* --- Base --------------------------------------------------- */
html, body {
  margin:0; padding:0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";
  font-size:16px; line-height:1.4; color:#222; background:#fafafa;
}
a { color:#0a58ca; text-decoration:none; }
a:hover { text-decoration:underline; }
a.unstyled-link { color:inherit; text-decoration:none; }
img { max-width:100%; height:auto; border:0; display:block; }

/* --- Layout wrappers ---------------------------------------- */
.hero { background:#fff; border-bottom:1px solid #eee; }
.hero .lead { max-width:1200px; margin:0 auto; padding:24px 16px; display:flex; gap:24px; align-items:flex-start; }
.hero .title-box { flex:1 1 auto; }
.hero .mega-title { margin:0; font-size:32px; line-height:1.15; font-weight:800; letter-spacing:-0.01em; }

.hero-home .tagline { margin:8px 0 16px; font-size:18px; color:#444; }
.hero-home .cta-row .cta {
  display:inline-block; background:#0a58ca; color:#fff; padding:10px 16px; border-radius:8px;
}
.hero-home .stats { margin-top:8px; color:#555; }

.grid { max-width:1200px; margin:24px auto; padding:0 16px; display:grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap:16px; }
.card { background:#fff; border:1px solid #eee; border-radius:12px; box-shadow:0 1px 2px rgba(0,0,0,0.04); padding:16px; }
.card .header { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:8px; }
.card .header .title { font-weight:700; font-size:14px; color:#333; }
.card .price { font-weight:600; color:#0b8457; }

.section { margin:12px 0; color:#333; }
.gallery { display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
.gallery a { display:inline-block; }
.count { color:#888; font-size:0.9em; font-style:italic; } /* grey and italic; not a link */

.footer { max-width:1200px; margin:32px auto; padding:16px; text-align:center; color:#666; font-size:14px; }

/* --- Facts / tables ----------------------------------------- */
.facts2 { display:grid; grid-template-columns: 180px 1fr; gap:8px 12px; margin:16px 0; }
.facts2 .fact { display:contents; }
.facts2 .k { color:#444; }
.facts2 .v { color:#222; }

table { width:100%; border-collapse:collapse; background:#fff; }
th, td { padding:8px 10px; border-bottom:1px solid #eee; vertical-align:top; }
thead th { background:#f5f7fb; font-weight:700; text-align:left; position:relative; }
tbody tr:hover { background:#f9fbff; }

#attrs-wrap, #allprice-wrap { margin:16px 0; }
#attrs-table col.kcol { width:30%; }
#attrs-table col.vcol { width:70%; }

/* --- Sorting indicators ------------------------------------- */
.sortable th { cursor:pointer; user-select:none; }
.sortable th .sort-indicator { display:inline-block; width:0; height:0; margin-left:6px; border-left:5px solid transparent; border-right:5px solid transparent; border-top:6px solid #bbb; transform:translateY(2px); }
.sortable th.sorted-asc .sort-indicator { border-top-color:#0a58ca; transform:rotate(180deg) translateY(-2px); }
.sortable th.sorted-desc .sort-indicator { border-top-color:#0a58ca; }

/* --- Images / zoom ------------------------------------------ */
.zoom-wrap { position:relative; display:inline-block; border:1px solid #eee; border-radius:8px; overflow:hidden; }
.zoom-wrap img { display:block; }
.zoom-wrap .zoom-pop {
  position:absolute; left:100%; top:0; margin-left:10px; max-width:360px;
  display:none; border:1px solid #eee; background:#fff; border-radius:8px; box-shadow:0 4px 16px rgba(0,0,0,0.08);
}
.zoom-wrap:hover .zoom-pop { display:block; }

/* --- Headings ------------------------------------------------ */
h1, h2, h3 { margin:8px 0; line-height:1.2; }
h2 { font-size:22px; }
h3 { font-size:18px; }

/* --- Utilities ---------------------------------------------- */
.cta-row { margin-top:8px; }
.mono { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono","Courier New", monospace; }
.hidden { display:none !important; }

