:root{--bg:#07101f;--bg2:#0d1a2e;--card:#102038;--text:#f5f0e8;--muted:#bac2ce;--gold:#d9b66f;--line:rgba(217,182,111,.28);--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 80% 8%,rgba(73,95,170,.25),transparent 29%),linear-gradient(180deg,var(--bg),#091527 50%,#050b14);color:var(--text);font:16px/1.75 Inter,system-ui,sans-serif}
body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.22;background-image:radial-gradient(circle,#fff 0 1px,transparent 1.4px);background-size:150px 150px}a{color:inherit;text-decoration:none}.wrap{width:min(var(--max),calc(100% - 40px));margin:auto}
header{position:sticky;top:0;z-index:20;background:rgba(5,11,20,.84);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.nav{height:74px;display:flex;align-items:center;justify-content:space-between}.brand{font:1.0rem Georgia;letter-spacing:.14em}.brand b,.eyebrow,time{color:var(--gold)}nav{display:flex;gap:26px}nav a:hover{color:var(--gold)}#menu{display:none;background:none;color:white;border:1px solid var(--line);border-radius:8px;padding:8px 11px}
section{padding:95px 0}.hero{min-height:78vh;display:grid;place-items:center}.hero-grid,.split,.book-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.78rem;font-weight:800}h1,h2,h3{font-family:Georgia,serif;line-height:1.12;font-weight:500}h1{font-size:clamp(3.3rem,7vw,6rem);margin:.12em 0 .2em}h2{font-size:clamp(2.2rem,5vw,3.8rem);margin:.2em 0 .5em}h3{font-size:1.45rem}.lead{font-size:clamp(1.05rem,2vw,1.32rem);color:#d3d8df}.prose p,p{color:var(--muted)}blockquote{border-left:2px solid var(--gold);padding-left:22px;margin:30px 0;font:1.2rem/1.6 Georgia;color:#e9dfce}.buttons{display:flex;gap:13px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;min-height:48px;padding:0 22px;align-items:center;justify-content:center;border-radius:999px;border:1px solid var(--gold);font-weight:750}.btn.primary{background:var(--gold);color:#101622}
.monogram{
    width:350px;
    height:350px;
    margin:auto;
    border-radius:50%;
    overflow:hidden;
    border:1px solid var(--line);
    box-shadow:0 0 80px rgba(100,125,205,.2);
}

.monogram img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    display:block;
}
.cover{
    width:320px;
    margin:auto;
}

.cover img{
    width:100%;
    display:block;
    border-radius:12px;
    box-shadow:0 15px 40px rgba(0,0,0,.35);
}
.tags span,.themes span{display:inline-block;border:1px solid var(--line);border-radius:99px;padding:5px 11px;margin:3px;font-size:.78rem;color:#ded5c6}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:75px}.cards article,.coming,.themes{padding:27px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(145deg,#12233bea,#091525ea)}.themes,.coming{margin-top:24px}.timeline{border-left:1px solid var(--line);padding-left:28px}.timeline article{margin-bottom:28px}time{font-size:.78rem;text-transform:uppercase;letter-spacing:.14em}
form{display:grid;gap:13px}label{color:#e4ded3}input,textarea{display:block;width:100%;margin-top:5px;background:#071322;border:1px solid #ffffff25;border-radius:10px;color:white;padding:13px 14px;font:inherit}textarea{min-height:145px}.note{font-size:.88rem}.legal{padding-top:20px}details{border-top:1px solid var(--line);padding:25px 0}summary{cursor:pointer;color:var(--gold)}
footer{border-top:1px solid var(--line);padding:35px 0;color:#adb5c0}footer .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
@media(max-width:820px){nav{display:none;position:absolute;top:74px;left:0;right:0;background:#07101f;flex-direction:column;padding:22px;border-bottom:1px solid var(--line)}nav.open{display:flex}#menu{display:block}.hero-grid,.split,.book-grid,.cards{grid-template-columns:1fr}.hero-grid,.split,.book-grid{gap:45px}.hero{min-height:auto}section{padding:70px 0}.wrap{width:min(100% - 28px,var(--max))}.monogram{width:250px}.book-grid{align-items:start}}

.contact-email{
    margin-top:25px;
    font-size:1.25rem;
}

.contact-email a{
    color:var(--gold);
    font-weight:700;
}

.contact-email a:hover{
    text-decoration:underline;
}