:root{font-family:"Yu Gothic",system-ui,sans-serif;background:#f6f4ec;color:#213f46;line-height:1.8}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-underline-offset:4px}a:focus-visible{outline:3px solid #cf8728;outline-offset:5px}header,footer{max-width:1160px;margin:auto;padding:24px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #d7ded7}.brand{font-weight:800;text-decoration:none;min-height:44px;display:flex;align-items:center}header span,footer{font-size:12px;color:#617477}main{max-width:1160px;margin:auto;padding:48px 24px 60px}.eyebrow{color:#4c7976;font-size:12px;letter-spacing:.12em;font-weight:700;margin:0 0 16px}h1{font-size:clamp(32px,5vw,56px);line-height:1.4;margin:0 0 22px}.intro{font-size:17px}.count{font-size:13px;margin:32px 0 16px}.cards{display:grid;grid-template-columns:1fr 1fr;gap:24px}.card{background:#fffefa;border-radius:18px;overflow:hidden;border:1px solid #d7ded7}.card>a{display:block;text-decoration:none;height:100%}.card>a:hover{background:#edf3ed}.cover{height:320px;background:#e3ebe8;padding:16px;display:flex;justify-content:center;align-items:center}.cover img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;box-shadow:0 4px 14px #213f4620}.card-text{padding:24px}.tag{font-size:12px;background:#eaf0e4;padding:5px 10px;border-radius:30px}h2{font-size:22px;margin:16px 0 10px;line-height:1.5}.card p{font-size:14px}.card strong{display:inline-block;margin-top:8px}.back{display:inline-flex;align-items:center;min-height:44px;margin-bottom:24px}.reader-title{font-size:clamp(27px,4vw,40px)}.hint{background:#e5ede5;padding:14px 18px;border-radius:10px;font-size:14px}.artwork{display:block;margin:28px auto;max-width:1055px}.artwork img{display:block;width:100%;height:auto;box-shadow:0 8px 28px #213f4620}.reader-actions{display:flex;flex-wrap:wrap;gap:12px}.button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;background:#254e53;color:white;border-radius:10px;padding:10px 20px;text-decoration:none}footer{border-top:1px solid #d7ded7;border-bottom:0}@media(max-width:640px){header{flex-wrap:wrap;padding:16px 20px;gap:0}header span{width:100%}main{padding:32px 20px}.cards{grid-template-columns:1fr;gap:22px}.cover{height:300px}.card-text{padding:20px}.reader-actions{flex-direction:column}.hint{font-size:13px}.artwork{margin:24px -12px}.intro{font-size:15px}}
