@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=EB+Garamond:wght@400;500&display=swap');
:root{--navy:#0B1B42;--navy-2:#14275E;--navy-3:#1C3474;--gold:#C7A248;--gold-bright:#E4C468;--cream:#F5F1E4;--cream-dim:#C9C4B0;--white:#fff;--red:#C8102E;--red-bright:#E51937;--line:rgba(199,162,72,.28);--radius:3px}
*{box-sizing:border-box}body{margin:0;background:var(--navy);color:var(--cream);font-family:'EB Garamond',Georgia,serif;font-size:18px;line-height:1.6}
h1,h2,h3{font-family:'Cormorant Garamond',serif;font-weight:600;margin:0 0 .4em;color:var(--cream)}a{color:var(--gold-bright);text-decoration:none}a:hover{text-decoration:underline}
img{max-width:100%;display:block}.wrap{max-width:1180px;margin:0 auto;padding:0 24px}
.eyebrow{font-variant:small-caps;letter-spacing:.22em;font-size:.8rem;color:var(--gold)}
.old-glory-bar{height:8px;background:repeating-linear-gradient(180deg,var(--red) 0,var(--red) 2px,var(--white) 2px,var(--white) 4px)}
.site-header{position:sticky;top:0;z-index:40;background:rgba(11,27,66,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;height:68px}
.brand{display:flex;align-items:center;gap:10px}.brand-mark{width:44px;height:44px;object-fit:contain}
.brand-name{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:1.1rem;line-height:1.1;color:var(--cream)}.brand-name small{display:block;font-family:'EB Garamond',serif;font-variant:small-caps;letter-spacing:.18em;font-size:.6rem;color:var(--gold)}
nav.main-nav{display:flex;gap:18px;align-items:center;font-size:.95rem}nav.main-nav a{color:var(--cream-dim)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-variant:small-caps;letter-spacing:.08em;font-size:.95rem;padding:11px 24px;border-radius:var(--radius);border:1px solid transparent;cursor:pointer;font-family:inherit}
.btn-primary{background:var(--red);color:#fff}.btn-primary:hover{background:var(--red-bright);text-decoration:none}
.btn-gold{background:transparent;color:var(--gold-bright);border-color:var(--gold)}.btn-gold:hover{background:rgba(199,162,72,.12);text-decoration:none}
.btn-ghost{background:transparent;color:var(--cream-dim);border-color:var(--line)}.btn-sm{padding:7px 14px;font-size:.85rem}
.hero{position:relative;overflow:hidden;padding:100px 24px 80px;text-align:center;isolation:isolate;background-color:var(--navy);background-image:url('/images/hero-bg.jpg');background-size:cover;background-position:center 38%;background-repeat:no-repeat}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(11,27,66,.55),rgba(11,27,66,.76) 42%,rgba(6,14,36,.92)),radial-gradient(ellipse 70% 40% at 50% 90%,rgba(200,16,46,.22),transparent 70%)}
.hero-seal{width:150px;margin:0 auto 20px}.hero h1{font-size:clamp(2.2rem,6vw,4rem);line-height:1.05;text-shadow:0 4px 30px rgba(0,0,0,.6)}
.hero-by{font-variant:small-caps;letter-spacing:.2em;color:var(--gold-bright);margin-bottom:18px}.hero .lede{max-width:620px;margin:0 auto 28px;font-size:1.12rem;text-shadow:0 2px 14px rgba(0,0,0,.5)}
.hero-ctas{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.section{padding:56px 0}.section-head{text-align:center;margin-bottom:34px}.section-head h2{font-size:2rem}
.field{margin-bottom:16px}.field label{display:block;font-variant:small-caps;letter-spacing:.1em;font-size:.85rem;color:var(--gold);margin-bottom:5px}
.field input,.field textarea,.field select{width:100%;padding:10px 12px;background:var(--navy-2);border:1px solid var(--line);border-radius:var(--radius);color:var(--cream);font-family:inherit;font-size:1rem}
.field textarea{min-height:80px;resize:vertical}.hint{font-size:.82rem;color:var(--cream-dim)}
.filters{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-bottom:30px}.filters button{font-family:inherit;font-variant:small-caps;background:transparent;border:1px solid var(--line);color:var(--cream-dim);padding:7px 16px;border-radius:20px;cursor:pointer}.filters button.active{border-color:var(--gold);color:var(--gold-bright)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:26px}
.book-card{background:var(--navy-2);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;transition:transform .18s,border-color .18s;color:inherit}.book-card:hover{transform:translateY(-4px);border-color:var(--gold);text-decoration:none}
.book-cover{position:relative;aspect-ratio:2/3;background:linear-gradient(160deg,var(--navy-3),var(--navy-2));display:flex;align-items:center;justify-content:center;overflow:hidden}.book-cover img{width:100%;height:100%;object-fit:cover}
.cover-fallback{font-family:'Cormorant Garamond',serif;color:var(--gold);text-align:center;padding:14px}
.price-tag{position:absolute;top:10px;right:10px;background:var(--red);color:#fff;font-variant:small-caps;font-size:.8rem;padding:4px 10px;border-radius:20px}
.book-info{padding:14px 16px 16px;flex:1}.book-info h3{font-size:1.15rem;margin-bottom:2px}.book-author{font-size:.82rem;color:var(--gold);font-variant:small-caps;margin-bottom:6px}.book-desc{font-size:.9rem;color:var(--cream-dim);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.fmt-row{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.fmt{font-size:.72rem;font-variant:small-caps;letter-spacing:.06em;border:1px solid var(--line);padding:2px 8px;border-radius:12px;color:var(--cream-dim)}
.book-detail{display:grid;grid-template-columns:300px 1fr;gap:40px;align-items:start}@media(max-width:720px){.book-detail{grid-template-columns:1fr}}
.get-box{background:var(--navy-2);border:1px solid var(--line);border-radius:var(--radius);padding:22px;margin:22px 0}.get-box .price{font-family:'Cormorant Garamond',serif;font-size:2rem;color:var(--gold-bright)}
.get-box .btn{width:100%;margin-top:10px}.video-wrap{aspect-ratio:16/9;margin-top:20px;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#000}.video-wrap iframe,.video-wrap video{width:100%;height:100%;border:0}
.card-panel{background:var(--navy-2);border:1px solid var(--line);border-radius:var(--radius);padding:28px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:640px){.row2{grid-template-columns:1fr}}
.admin-list{margin-top:30px}.admin-row{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.admin-row img{width:40px;height:60px;object-fit:cover;border-radius:2px;background:var(--navy-3)}.admin-row .meta{flex:1;font-size:.9rem}.admin-row .meta small{color:var(--cream-dim);display:block}
.toolbar{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.msg{padding:10px 14px;border-radius:var(--radius);margin-bottom:14px;font-size:.92rem}.msg.ok{background:rgba(199,162,72,.14);border:1px solid var(--gold);color:var(--gold-bright)}.msg.err{background:rgba(200,16,46,.18);border:1px solid var(--red);color:#ffc3cc}
.hidden{display:none!important}.empty{text-align:center;padding:60px 20px;color:var(--cream-dim)}
.site-footer{border-top:1px solid var(--line);padding:30px 0;margin-top:50px;text-align:center;font-size:.85rem;color:var(--cream-dim)}
#install-btn{display:none}
