﻿/* store.css — shared styles for /store pages. Palette matches main site. */
:root { --navy:#0a192f; --gold:#c9a227; --ink:#1b2430; --bg:#f7f8fa; --line:#e3e7ee; }
* { box-sizing:border-box; margin:0; padding:0; }
body { font-family:'DM Sans',system-ui,sans-serif; color:var(--ink); background:var(--bg); line-height:1.6; }
a { color:var(--navy); }
.store-nav { display:flex; justify-content:space-between; align-items:center; padding:14px 24px; background:var(--navy); color:#fff; }
.store-nav a { color:#fff; text-decoration:none; margin-left:18px; }
.store-nav .brand { font-weight:700; letter-spacing:.05em; }
.wrap { max-width:980px; margin:0 auto; padding:32px 20px; }
h1 { font-size:1.9rem; line-height:1.25; margin-bottom:8px; }
h2 { font-size:1.3rem; margin:28px 0 10px; }
.crumbs { font-size:.85rem; color:#5b6573; margin-bottom:18px; }
.grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:20px; }
.card { background:#fff; border:1px solid var(--line); border-radius:10px; padding:18px; }
.card img { width:100%; height:200px; object-fit:contain; background:#fff; }
.price { font-size:1.3rem; font-weight:700; color:var(--navy); }
.price small { font-weight:400; color:#5b6573; }
.btn { display:inline-block; background:var(--gold); color:var(--navy); font-weight:700; padding:12px 22px; border:none; border-radius:6px; cursor:pointer; text-decoration:none; font-size:1rem; }
.btn-wa { background:#25d366; color:#fff; }
table.specs { width:100%; border-collapse:collapse; background:#fff; }
table.specs th, table.specs td { text-align:left; padding:9px 12px; border:1px solid var(--line); font-size:.95rem; }
table.specs th { background:#eef1f6; width:45%; }
form.order label { display:block; font-weight:600; margin:14px 0 4px; }
form.order input, form.order select, form.order textarea { width:100%; padding:10px; border:1px solid var(--line); border-radius:6px; font:inherit; }
form.order .hp { position:absolute; left:-9999px; }   /* honeypot */
.notice { background:#fff8e6; border:1px solid #f0dba0; border-radius:8px; padding:14px 16px; margin:16px 0; font-size:.95rem; }
.ok { background:#e8f7ee; border-color:#bfe7cf; }
.err { background:#fdecec; border-color:#f3bcbc; }
.store-footer { margin-top:48px; padding:28px 24px; background:var(--navy); color:#cdd6e4; font-size:.9rem; }
.store-footer a { color:#fff; }
.policy-links a { margin-right:14px; }
details { background:#fff; border:1px solid var(--line); border-radius:8px; padding:12px 16px; margin-bottom:10px; }
details summary { font-weight:600; cursor:pointer; }
@media (max-width:640px){ .store-nav a{margin-left:10px;font-size:.9rem} }
