:root{--bg:#F2EDE3;--panel:#fbf8f2;--line:rgba(90,62,28,.17);--ink:#1c1813;--ink2:#4a4034;--ink3:#7a6c58;--accent:#9A5B18;--on:#F8F5EF;
--serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;--sans:-apple-system,"Segoe UI",system-ui,"Helvetica Neue",Arial,sans-serif}
@media (prefers-color-scheme:dark){:root{--bg:#05060A;--panel:#0d0e12;--line:rgba(232,181,113,.18);--ink:rgba(232,181,113,.95);--ink2:rgba(232,181,113,.72);--ink3:rgba(232,181,113,.48);--accent:#E8B571;--on:#05060A}}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.6 var(--sans);-webkit-font-smoothing:antialiased}
a{color:var(--accent)}
.top{display:flex;align-items:center;justify-content:space-between;gap:1rem;max-width:1100px;margin:0 auto;padding:1.1rem 1.4rem;border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--ink)}.brand img{width:34px;height:34px;border-radius:9px}
.brand b{font:600 1.05rem var(--serif);display:block;line-height:1.1}.brand small{color:var(--ink3);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}
.top nav{display:flex;gap:1.1rem;font-size:.9rem}.top nav a{color:var(--ink2);text-decoration:none}.top nav a:hover,.top nav a[aria-current]{color:var(--accent)}
main{max-width:1100px;margin:0 auto;padding:2.2rem 1.4rem 3rem}
h1{font:400 clamp(2rem,5vw,3rem)/1.15 var(--serif);margin:.2rem 0 .8rem}.lead{color:var(--ink2);max-width:60ch;font-size:1.05rem}
.kicker{color:var(--ink3);font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;margin:0}
.grid{display:grid;gap:1.3rem;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));margin-top:2rem}
.card{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:1.3rem;display:flex;flex-direction:column;gap:.7rem}
.card img.prev{width:100%;height:auto;border-radius:12px;border:1px solid var(--line);aspect-ratio:5/4;object-fit:cover;background:#fff}
.card h2{font:500 1.15rem/1.3 var(--serif);margin:0}.card p{margin:0;color:var(--ink2);font-size:.92rem}
.price{font-weight:700;color:var(--ink)}
.btn{display:inline-block;text-align:center;background:var(--accent);color:var(--on);text-decoration:none;font-weight:650;border-radius:999px;padding:.75rem 1.2rem;margin-top:auto}
.btn.off{background:transparent;color:var(--ink3);border:1px dashed var(--line);cursor:default}
.qr{width:220px;max-width:100%;height:auto;background:#fff;padding:10px;border-radius:14px;align-self:center}
.tipgrid{grid-template-columns:repeat(auto-fit,minmax(260px,340px));justify-content:center}
.handle{font:600 1.05rem var(--sans);text-align:center;color:var(--ink)}
.note{color:var(--ink3);font-size:.85rem;margin-top:2rem;max-width:65ch}
footer{max-width:1100px;margin:0 auto;padding:1.4rem;border-top:1px solid var(--line);color:var(--ink3);font-size:.82rem;display:flex;flex-wrap:wrap;gap:.4rem 1.2rem;justify-content:space-between}
footer a{color:var(--ink2)}
@media (max-width:560px){.top{flex-wrap:wrap;padding:.9rem 1.1rem}.top nav{width:100%;justify-content:space-between;font-size:.88rem}main{padding:1.6rem 1.1rem 2.4rem}}
