@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@600;800&family=Source+Serif+4:wght@400;600&family=Inter:wght@500;700&display=swap');
:root{--ink:#1f1a17;--paper:#faf5ec;--cream:#f1e6d2;--rust:#a8452a;--rust-d:#7f311d;--navy:#1d2f45;--gold:#c9973f}
*{box-sizing:border-box}body{margin:0;font-family:'Source Serif 4',Georgia,serif;color:var(--ink);background:var(--paper);line-height:1.65;font-size:18px}
a{color:var(--rust)}img{max-width:100%;display:block}
.wrap{max-width:1150px;margin:0 auto;padding:0 24px}
header{background:var(--navy);color:#fff;position:sticky;top:0;z-index:5}
header .wrap{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:16px 24px}
.logo{font-family:'Playfair Display',serif;font-size:1.5rem;font-weight:800;color:#fff;text-decoration:none;letter-spacing:.5px}
nav a{font-family:Inter,sans-serif;font-size:.85rem;text-transform:uppercase;letter-spacing:1.5px;color:#e9dcc4;text-decoration:none;margin-left:22px;font-weight:500}
nav a:hover,nav a.on{color:var(--gold)}
h1,h2,h3{font-family:'Playfair Display',serif;line-height:1.15;margin:0 0 .5em}
h1{font-size:clamp(2.4rem,5vw,3.8rem)}h2{font-size:clamp(1.8rem,3.5vw,2.6rem)}h3{font-size:1.6rem}
.eyebrow{font-family:Inter,sans-serif;font-size:.78rem;letter-spacing:3px;text-transform:uppercase;color:var(--rust);font-weight:700;margin-bottom:10px}
.btn{display:inline-block;font-family:Inter,sans-serif;font-weight:700;font-size:.9rem;letter-spacing:1px;text-transform:uppercase;padding:13px 26px;border-radius:3px;text-decoration:none;background:var(--rust);color:#fff;border:2px solid var(--rust);margin:6px 8px 6px 0}
.btn:hover{background:var(--rust-d);border-color:var(--rust-d)}.btn.ghost{background:transparent;color:var(--rust)}.btn.ghost:hover{color:#fff}
.btn.sm{padding:9px 16px;font-size:.75rem}
.hero{background:radial-gradient(circle at 75% 40%,#2c4565 0,var(--navy) 60%);color:#fff;padding:80px 0}
.hero .wrap{display:grid;grid-template-columns:1.15fr 1fr;gap:70px;align-items:center}
.hero p.lead{font-size:1.25rem;color:#e9dcc4;max-width:560px}.hero .eyebrow{color:var(--gold)}
.stack{display:flex;justify-content:center;align-items:flex-end}.stack{padding-left:20px}.stack img{width:40%;box-shadow:0 20px 40px rgba(0,0,0,.5);border-radius:2px}
.stack img:nth-child(1){transform:rotate(-6deg) translateX(18px)}.stack img:nth-child(2){z-index:2;width:50%}.stack img:nth-child(3){transform:rotate(6deg) translateX(-18px)}
section{padding:80px 0}.alt{background:var(--cream)}
.feature{display:grid;grid-template-columns:340px 1fr;gap:56px;align-items:center}
.feature img,.book img{box-shadow:0 14px 34px rgba(0,0,0,.28);border-radius:2px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:36px}
.card{text-align:center}.card img{margin:0 auto 18px;box-shadow:0 10px 26px rgba(0,0,0,.25)}.card h3{font-size:1.3rem}.card p{font-size:.95rem;color:#5a4f46}
.book{display:grid;grid-template-columns:300px 1fr;gap:50px;padding:60px 0;border-bottom:1px solid #e0d2ba}
.book:last-child{border:0}.meta{font-family:Inter,sans-serif;font-size:.8rem;color:#7a6c60;letter-spacing:.5px;margin-bottom:14px}
.series{display:inline-block;background:var(--navy);color:var(--gold);font-family:Inter,sans-serif;font-size:.7rem;letter-spacing:2px;text-transform:uppercase;padding:4px 10px;margin-bottom:12px}
.formats{margin-top:20px}.formats span{font-family:Inter,sans-serif;font-size:.75rem;text-transform:uppercase;letter-spacing:1.5px;color:#7a6c60;display:block;margin-bottom:4px}
.ph{background:repeating-linear-gradient(45deg,#e8dcc6,#e8dcc6 12px,#efe5d3 12px,#efe5d3 24px);border:2px dashed #b8a689;color:#7a6c60;display:flex;align-items:center;justify-content:center;text-align:center;font-family:Inter,sans-serif;font-size:.9rem;padding:20px}
.placeholder{background:#fff6d6;color:#5a4a20;border-left:4px solid var(--gold);padding:2px 8px;font-style:italic}
.wip{background:var(--navy);color:#fff}.wip .eyebrow{color:var(--gold)}.wip p{color:#e9dcc4}
.wipcard{border:1px solid #3d5677;padding:30px;border-radius:4px;max-width:720px}
form .row{margin-bottom:16px}label{display:block;font-family:Inter,sans-serif;font-size:.8rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;margin-bottom:6px}
input,textarea{width:100%;padding:12px;font:inherit;border:1px solid #cdbca0;background:#fff;border-radius:3px}
.cols{display:grid;grid-template-columns:1fr 1fr;gap:50px}
.page-head{background:var(--navy);color:#fff;padding:60px 0 50px}.page-head .eyebrow{color:var(--gold)}.page-head p{color:#e9dcc4;max-width:700px;margin:0}
footer{background:#14202f;color:#a99c88;font-family:Inter,sans-serif;font-size:.8rem;padding:36px 0;text-align:center}footer a{color:#e9dcc4}
@media(max-width:820px){.hero .wrap,.feature,.book,.cols{grid-template-columns:1fr}.feature img,.book img{max-width:280px;margin:0 auto}nav a{margin:0 14px 0 0}.hero{padding:50px 0}section{padding:56px 0}}
.serieshead{background:var(--navy);color:#fff;padding:36px 40px;margin-top:40px;border-radius:4px}.serieshead .eyebrow{color:var(--gold)}.serieshead p{color:#e9dcc4;margin:0}.serieshead h2{margin-bottom:.3em}
.card .series{font-size:.6rem;margin-bottom:8px}
.seriesgroup{background:#efe3cc;border:1px solid #e0cfae;border-radius:6px;padding:0 36px 10px;margin:40px -36px}
.seriesgroup .serieshead{margin:0 -36px;border-radius:6px 6px 0 0}
.seriespanel{background:#e6d6b8;border-radius:6px;padding:30px 30px 36px;margin-top:40px;text-align:center}
.seriespanel h3{margin-bottom:24px}
.home-grid2{}
@media(max-width:820px){.seriesgroup{margin:30px -12px;padding:0 16px 10px}.seriesgroup .serieshead{margin:0 -16px;padding:28px 20px}}
.textcover{font-family:"Playfair Display",serif;font-size:1.1rem}.textcover strong{font-size:1.5rem;color:var(--navy)}
.wipcard.withcover{display:grid;grid-template-columns:160px 1fr;gap:28px;align-items:start}
.wipcard.withcover img{box-shadow:0 10px 26px rgba(0,0,0,.45);border-radius:2px}
@media(max-width:600px){.wipcard.withcover{grid-template-columns:1fr}.wipcard.withcover img{max-width:180px}}
.wipcard.withcover{grid-template-columns:220px 1fr;max-width:900px}
.wipcard.withcover.big{grid-template-columns:300px 1fr;max-width:1000px}
@media(max-width:820px){.wipcard.withcover,.wipcard.withcover.big{grid-template-columns:1fr}.wipcard.withcover img{margin:0 auto}.wipcard.withcover.big img{width:280px!important}}
