:root { --bg:#050505; --text:#f2efe9; --gold:#c59b4b; --gold-soft:rgba(197,155,75,.28); }
* { box-sizing:border-box; }
html { background:var(--bg); scroll-behavior:smooth; }
body { margin:0; min-width:320px; background:var(--bg); color:var(--text); font-family:Georgia,"Times New Roman",serif; }
main { width:min(100% - 40px,1100px); margin:auto; }
.hero { padding:clamp(42px,7vw,74px) 0 clamp(38px,5.6vw,60px); text-align:center; }
h1 { margin:18px 0 17px; font-weight:400; font-size:clamp(2.55rem,7vw,5.6rem); letter-spacing:clamp(.13em,1.5vw,.29em); line-height:1; text-indent:.18em; text-shadow:0 4px 18px rgba(255,255,255,.08); }
.hero p { margin:21px 0 0; color:#e0c38a; font-size:clamp(.66rem,1.5vw,1rem); letter-spacing:clamp(.1em,.35vw,.2em); line-height:1.5; }
.ornament { display:flex; align-items:center; gap:10px; color:var(--gold); margin:auto; width:min(100%,750px); }
.ornament span { display:block; height:1px; flex:1; background:linear-gradient(90deg,transparent,var(--gold),transparent); opacity:.75; }
.ornament i { font-style:normal; font-size:1.05rem; line-height:1; transform:scaleX(1.5); }
.ornament--under { width:min(100%,660px); opacity:.85; }
.books { display:flex; flex-wrap:wrap; justify-content:center; gap:31px 30px; padding-bottom:clamp(54px,8vw,92px); }
.book-card { display:block; flex:0 1 280px; max-width:calc((100% - 60px)/3); border-radius:5px; overflow:hidden; background:#0c0c0c; border:1px solid rgba(197,155,75,.25); box-shadow:0 12px 35px rgba(0,0,0,.65),0 0 18px rgba(197,155,75,.1); transition:transform 250ms ease,box-shadow 250ms ease,border-color 250ms ease; }
.book-card:nth-child(1) { order:8; }
.book-card:nth-child(2) { order:1; }
.book-card:nth-child(3) { order:2; }
.book-card:nth-child(4) { order:3; }
.book-card:nth-child(5) { order:4; }
.book-card:nth-child(6) { order:5; }
.book-card:nth-child(7) { order:6; }
.book-card:nth-child(8) { order:7; }
.book-card:nth-child(9) { order:10; }
.book-card:nth-child(10) { order:9; }
.book-card:nth-child(11) { order:11; }
.book-card:nth-child(12) { order:12; }
.book-card img { display:block; width:100%; height:auto; object-fit:contain; }
.book-card:hover { transform:translateY(-5px) scale(1.015); border-color:rgba(197,155,75,.55); box-shadow:0 17px 42px rgba(0,0,0,.72),0 0 24px rgba(197,155,75,.24); }
.book-card:focus-visible,footer a:focus-visible { outline:2px solid #e0c38a; outline-offset:5px; }
footer { width:min(100% - 40px,900px); margin:auto; padding:0 0 36px; text-align:center; }
footer nav { display:flex; justify-content:center; align-items:center; gap:31px; padding:25px 0 15px; }
footer a { color:#cbb58a; display:inline-flex; border-radius:4px; }
footer svg { width:32px; height:32px; fill:none; stroke:currentColor; stroke-width:1.7; }
footer svg .dot { fill:currentColor; stroke:none; }
footer .amazon { fill:currentColor; stroke:none; width:37px; }
footer .amazon .smile { fill:none; stroke:currentColor; stroke-width:1.4; stroke-linecap:round; }
footer p { margin:0; color:#cbb58a; font-size:.77rem; letter-spacing:.18em; }
@media (max-width:900px) { .book-card { flex-basis:calc((100% - 30px)/2); max-width:calc((100% - 30px)/2); } }
@media (max-width:520px) { main,footer { width:min(100% - 28px,1100px); } .hero { padding-top:35px; } .books { gap:24px 18px; } .book-card { flex-basis:calc((100% - 18px)/2); max-width:calc((100% - 18px)/2); } }
@media (max-width:390px) { .book-card { flex-basis:274px; max-width:100%; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .book-card { transition:none; } }
