:root{--ink:#1f2933;--muted:#5b6770;--line:#e4e0d8;--bg:#fbf9f5;--card:#fff;--accent:#9b2c2c;--accent-ink:#fff}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
a{color:var(--accent)}
a:focus-visible,button:focus-visible{outline:3px solid #1d4ed8;outline-offset:2px}
img{max-width:100%;height:auto;display:block}
.wrap{max-width:1080px;margin:0 auto;padding:0 16px}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:#fff;padding:8px;z-index:9}
.top{background:#fff;border-bottom:1px solid var(--line)}
.bar{display:flex;justify-content:space-between;align-items:center;padding-top:14px;padding-bottom:10px}
.brand{font:700 1.35rem Georgia,"Times New Roman",serif;color:var(--ink);text-decoration:none}
.cart{color:var(--ink);text-decoration:none;font-weight:600;padding:8px 0}
.pill{background:var(--accent);color:var(--accent-ink);border-radius:99px;padding:1px 8px;font-size:.8rem}
.cats{display:flex;gap:18px;overflow-x:auto;padding-bottom:10px;white-space:nowrap;scrollbar-width:thin}
.cats a{color:var(--muted);text-decoration:none;font-size:.92rem;padding:6px 0}
.cats a:hover{color:var(--accent)}
main{padding-top:24px;padding-bottom:48px;min-height:60vh}
h1,h2{font-family:Georgia,"Times New Roman",serif;line-height:1.2}
h1{font-size:1.9rem;margin:.2em 0 .4em}h2{font-size:1.3rem;margin:1.6em 0 .7em}
.hero{padding:18px 0 6px}.hero p{color:var(--muted);font-size:1.08rem;margin:0}
.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
@media(min-width:720px){.grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}}
.card{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:10px;overflow:hidden;text-decoration:none;color:var(--ink)}
.card img{aspect-ratio:17/22;object-fit:cover;object-position:top;border-bottom:1px solid var(--line);width:100%}
.card-title{padding:10px 12px 2px;font-weight:600;font-size:.95rem;line-height:1.3}
.card-meta{padding:0 12px 12px;color:var(--muted);font-size:.88rem}
.card:hover .card-title{color:var(--accent)}
.product{display:grid;gap:24px}
@media(min-width:800px){.product{grid-template-columns:1fr 1fr;align-items:start}}
.shot img{border:1px solid var(--line);border-radius:10px;background:#fff;width:100%}
.price{font-size:1.4rem;font-weight:700;margin:.2em 0}
.btn{display:inline-block;background:var(--accent);color:var(--accent-ink);border:0;border-radius:8px;padding:13px 22px;font:600 1rem inherit;font-family:inherit;cursor:pointer;text-decoration:none;min-height:44px}
.btn:hover{filter:brightness(1.08)}
.link{background:none;border:0;color:var(--accent);text-decoration:underline;cursor:pointer;font:inherit;padding:8px 0}
.fine{color:var(--muted);font-size:.88rem}
.lines{list-style:none;padding:0;margin:0 0 16px;border-top:1px solid var(--line)}
.lines li{display:flex;justify-content:space-between;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}
.lines .fine{display:block}.line-end{text-align:right;white-space:nowrap}
.totals{display:grid;grid-template-columns:1fr auto;gap:6px 16px;max-width:360px;margin:0 0 20px}
.totals dd{margin:0;text-align:right}
.downloads{list-style:none;padding:0;display:grid;gap:10px}
.foot{border-top:1px solid var(--line);background:#fff;padding:22px 0;color:var(--muted);font-size:.9rem}
.foot nav{display:flex;flex-wrap:wrap;gap:6px 18px}.foot a{color:var(--muted)}
@media(prefers-reduced-motion:no-preference){.btn{transition:filter .15s}}
.trust{list-style:none;padding:0;margin:14px 0 4px;display:flex;flex-wrap:wrap;gap:6px 8px}
.trust li{border:1px solid var(--line);background:#fff;border-radius:99px;padding:4px 12px;font-size:.84rem;color:var(--muted)}
.info ul:not(.trust){padding-left:1.1em}
body{min-height:100vh;display:flex;flex-direction:column}main{flex:1;width:100%}
