*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:#222;font:16px/1.6 "Helvetica Neue",Helvetica,Arial,sans-serif}
img,video{max-width:100%;display:block}a{color:#222}
.top{text-align:center;padding:.5rem 1rem 0}
.logo{display:block;width:min(1000px,100%);margin:0 auto;aspect-ratio:1792/512}
.logo video{width:100%;height:100%;object-fit:contain}
nav{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem 3.2rem;margin:1rem 0 2.2rem}
nav a{text-decoration:none;font-size:.95rem;color:#333}nav a:hover,nav a.active{color:#f08a3c}
main{max-width:1440px;margin:auto;padding:0 2.2rem}
.grid{columns:5 220px;column-gap:1.4rem}
.tile{display:flex;align-items:center;justify-content:center;break-inside:avoid;margin:0 0 1.4rem;padding:1.2rem;border-radius:2px;box-shadow:0 2px 6px rgba(0,0,0,.08),0 10px 24px rgba(0,0,0,.08);transition:transform .2s,box-shadow .2s;width:100%}
.tile:hover{transform:translateY(-3px);box-shadow:0 4px 10px rgba(0,0,0,.1),0 16px 32px rgba(0,0,0,.12)}
.tile img{max-height:100%;object-fit:contain}
.tile.vid{padding:0;overflow:hidden;background:#000}.tile.vid video{width:100%;height:100%;object-fit:cover}
section{padding:3rem 0}
h2{font-weight:400;font-size:1.8rem;text-align:center;margin:0 0 .3rem;letter-spacing:.5px}
h3{font-weight:700;font-size:1.1rem;text-align:center;margin:0 0 1rem}
.lead{text-align:center;color:#777;margin:0 0 2rem}
.card{margin:0;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.08),0 10px 24px rgba(0,0,0,.08);border-radius:2px;overflow:hidden}
.card figcaption{text-align:center;padding:.8rem;font-size:.9rem}
.row3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;max-width:1100px;margin:auto}
.row4{display:grid;grid-template-columns:repeat(4,1fr);gap:1.4rem;max-width:1100px;margin:auto}
.book img{aspect-ratio:1/1;object-fit:cover;object-position:top}
.book strong{display:block;font-weight:700}
.tag{display:inline-block;font-size:.7rem;letter-spacing:1px;text-transform:uppercase;color:#f08a3c;margin:.2rem 0}
.soon{display:block;width:100%;margin-top:.4rem;background:#f3f3f3;color:#999;border:0;padding:.5rem;font:400 .8rem "Helvetica Neue",Helvetica,Arial,sans-serif;cursor:not-allowed}
.center{text-align:center;margin-top:2rem}
.btn{display:inline-block;color:#fff;background:#222;text-decoration:none;padding:.7rem 1.6rem;font-size:.9rem;letter-spacing:.5px;transition:background .2s}.btn:hover{background:#f08a3c}
.free{display:grid;grid-template-columns:1fr 1fr;gap:1.6rem;max-width:1100px;margin:auto}.pad{padding:1.5rem}
.dl{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem}
.dlpage{text-decoration:none;text-align:center;font-size:.8rem;color:#555}.dlpage img{border:1px solid #eee;margin-bottom:.4rem}.dlpage:hover{color:#f08a3c}
.about{display:flex;gap:2.5rem;align-items:center;max-width:820px;margin:auto}.about img{width:180px;flex:none}.about h2{text-align:left}
footer{text-align:center;padding:2.5rem 1rem;color:#888;font-size:.85rem;border-top:1px solid #eee;margin-top:2rem}footer a{color:#555}footer p{margin:.3rem 0 0}
@media(max-width:1100px){.grid{columns:4}.row4{grid-template-columns:repeat(3,1fr)}}
@media(max-width:820px){.grid{columns:3}.row3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){main{padding:0 1rem}.grid{columns:2;column-gap:.8rem}.tile{margin-bottom:.8rem;padding:.6rem}nav{gap:.3rem 1.2rem}
.row4{grid-template-columns:repeat(2,1fr);gap:.8rem}.row3{gap:.8rem}.free{grid-template-columns:1fr}.about{flex-direction:column;text-align:center}.about h2{text-align:center}.about img{width:140px}}
#art.grid{padding-top:0}
