:root{--bg:#090909;--paper:#d8c7ab;--paper-dark:#9f927a;--accent:#a9251d;--line:#1d1d1d;--red:#a9251d}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--paper);font-family:Cormorant Garamond,serif;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:999;background:radial-gradient(circle at 20% 20%,#ffffff08,#0000 35%),radial-gradient(circle at 80% 70%,#ffffff05,#0000 40%),repeating-linear-gradient(0deg,#0000,#0000 2px,#ffffff01 3px);position:fixed;inset:0}.frame{pointer-events:none;z-index:998;border:1px solid #d8c7ab1f;position:fixed;inset:10px}.topbar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);z-index:100;background:#090909e6;justify-content:space-between;align-items:center;padding:22px 6vw;display:flex;position:sticky;top:0}.logo{color:var(--papper);letter-spacing:4px;font-family:Oswald;font-size:1.3rem}.logo a{color:var(--papper);letter-spacing:4px;font-family:Oswald;font-size:1.8rem}.back{color:var(--paper-dark);letter-spacing:2px;font-family:Oswald;text-decoration:none;transition:all .3s}.back:hover{color:var(--accent)}.hero{border-bottom:1px solid var(--line);background:radial-gradient(circle at 80%,#a9251d0f,#0000 50%);padding:120px 8vw 100px;position:relative}.hero:before{content:"";border:1px solid #a9251d26;border-radius:50%;width:380px;height:380px;position:absolute;top:50%;right:10vw;transform:translateY(-50%)}.hero:after{content:"";border:1px solid #d8c7ab14;border-radius:50%;width:250px;height:250px;position:absolute;top:50%;right:13vw;transform:translateY(-50%)}.category{border:1px solid var(--accent);color:var(--accent);letter-spacing:2px;padding:8px 14px;font-family:Oswald;display:inline-block}.hero h1{margin:25px 0;font-family:Oswald;font-size:clamp(4rem,10vw,8rem);line-height:.9}.meta{color:var(--paper-dark);letter-spacing:2px;font-family:Oswald}.hero img{float:right;max-width:300px;margin-top:-100px;margin-bottom:30px;margin-right:30px}.layout{grid-template-columns:280px minmax(0,1fr);gap:80px;width:min(1400px,92%);margin:80px auto;display:grid}.sidebar{height:max-content;position:sticky;top:100px}.info{border:1px solid #a9251d33;border-left:4px solid var(--accent);background:#0f0a0acc;margin-bottom:20px;padding:18px;position:relative}.info:after{content:"";background:linear-gradient(90deg, var(--accent), transparent);width:100%;height:1px;position:absolute;bottom:0;left:0}.info h3{color:var(--accent);letter-spacing:3px;margin-bottom:8px;font-family:Oswald;font-size:.75rem}.info p{color:var(--paper);margin-bottom:15px}.story{max-width:850px}.story p{margin-bottom:1.8em;font-size:1.45rem;line-height:2}.chapter{margin:90px 0 40px;font-family:Oswald;font-size:3rem}.separator{background:var(--accent);width:140px;height:2px;margin:80px auto}.story-nav{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:25px;margin-top:120px;padding-top:50px;display:grid}.story-nav a{color:var(--paper);border:1px solid var(--line);padding:25px;text-decoration:none;transition:all .3s}.story-nav a:hover{border-color:var(--accent);transform:translateY(-4px)}.story-nav span{color:var(--accent);letter-spacing:2px;margin-bottom:10px;font-family:Oswald;display:block}footer{border-top:1px solid var(--line);text-align:center;color:#666;letter-spacing:4px;margin-top:100px;padding:50px;font-family:Oswald}@media (width<=1000px){.layout{grid-template-columns:1fr}.sidebar{position:static}.hero:before,.hero:after{display:none}}@media (width<=700px){.hero h1{font-size:4rem}.story p{font-size:1.2rem}.story-nav{grid-template-columns:1fr}}.menu{gap:40px;display:flex}.menu a{color:var(--paper-dark);letter-spacing:2px;font-family:Oswald;text-decoration:none}.catalog{padding:40px 8vw}.section-title{margin-bottom:70px;font-family:Oswald;font-size:4rem;position:relative}.section-subtitle{margin-top:50px;margin-bottom:20px;font-family:Oswald;font-size:3cqb;position:relative}.section-title:after{content:"";background:var(--red);width:120px;height:3px;position:absolute;bottom:-12px;left:0}.books{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:60px 40px;margin-bottom:80px;display:grid}.book{color:inherit;text-decoration:none}.cover{aspect-ratio:2/3;border:1px solid var(--line);background:linear-gradient(135deg,#111,#050505);transition:all .35s;position:relative;overflow:hidden}.cover img{object-fit:cover;width:100%;height:100%;display:block}.cover-placeholder{letter-spacing:4px;color:#ffffff26;justify-content:center;align-items:center;font-family:Oswald;display:flex;position:absolute;inset:0}.book:hover .cover{border-color:var(--red);transform:translateY(-10px);box-shadow:0 0 40px #a9251d26}.author{color:var(--red);letter-spacing:2px;margin-top:20px;font-family:Oswald;font-size:.9rem}.title{margin-top:10px;font-family:Oswald;font-size:2rem;line-height:1}.page_content{padding-top:30px;font-size:x-large;font-weight:700;line-height:32px}.page_content img{max-width:100%}.newsletter_form{background:#0f0a0acc;border:1px solid #a9251d40;max-width:700px;margin-top:40px;display:flex;overflow:hidden}.newsletter_form input{color:var(--paper);background:0 0;border:none;flex:1;padding:18px 22px;font-family:Cormorant Garamond,serif;font-size:1.2rem}.newsletter_form input::placeholder{color:var(--paper-dark)}.newsletter_form input:focus{outline:none}.newsletter_form button{background:var(--red);color:var(--paper);cursor:pointer;letter-spacing:2px;text-transform:uppercase;border:none;padding:0 30px;font-family:Oswald;transition:all .3s}.newsletter_form button:hover{background:#c13229}.newsletter_form:focus-within{border-color:var(--red);box-shadow:0 0 30px #a9251d26}@media (width<=700px){.newsletter_form{flex-direction:column}.newsletter_form button{padding:18px}}.mobile-menu-button{display:none}@media (width<=900px){.mobile-menu-button{width:50px;height:50px;color:var(--paper);cursor:pointer;background:#0f0a0af2;border:1px solid #a9251d4d;justify-content:center;align-items:center;font-size:1.4rem;display:flex}.menu{border:1px solid var(--line);opacity:0;visibility:hidden;z-index:999;background:#090909;flex-direction:column;gap:0;width:260px;transition:all .3s;display:flex;position:absolute;top:100%;right:0;transform:translateY(-10px)}.menu.open{opacity:1;visibility:visible;transform:translateY(0)}.menu a{border-bottom:1px solid var(--line);padding:18px 25px}.menu a:hover{background:#a9251d14}.topbar{position:relative}}
