*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --ink:#111010;--ink-mid:#3d3a38;--ink-light:#5e5a56;
  --ink-faint:#d4d0ca;--ink-ghost:#eceae5;
  --cream:#f3f1ed;--cream-dark:#e6e3dd;--page:#ffffff;
  --accent:#8c1a13;--accent-light:#fdf3f2;
  --on-accent:#fff;--on-accent-muted:rgba(255,255,255,.72);
}
html{scroll-behavior:smooth}
body{font-family:'EB Garamond',Georgia,serif;background:var(--page);color:var(--ink);font-size:18px;line-height:1.6;display:flex;flex-direction:column;min-height:100vh;overflow-x:clip}

/* PAGES */
.page{display:none}
.page.active{display:block;flex:1;max-width:1440px;width:100%;margin:0 auto;animation:fadeUp .25s ease both}
@keyframes fadeUp{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}

/* ── GEOMETRIC PATTERN (overlapping circles / cathedral windows)
   4 quarter-arc arcs per 60×60 tile, each from a corner with radius = cell size.
   When tiled they create interlocking circles — an organic, editorial motif.
   Applied via background-image in accent colour at very low opacity.
*/
.pat-circles{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60'%3E%3Cg fill='none' stroke='%238c1a13' stroke-width='0.7' stroke-opacity='0.17'%3E%3Cpath d='M 60 0 A 60 60 0 0 1 0 60'/%3E%3Cpath d='M 0 0 A 60 60 0 0 0 60 60'/%3E%3Cpath d='M 0 60 A 60 60 0 0 1 60 0'/%3E%3Cpath d='M 60 60 A 60 60 0 0 0 0 0'/%3E%3C/g%3E%3C/svg%3E")}

/* FOOTER */
footer{border-top:none;background:var(--accent);padding:1.75rem 2.5rem;display:flex;justify-content:space-between;align-items:center;position:relative;overflow:hidden;isolation:isolate}
footer::after{content:'';position:absolute;inset:0;background:url('../images/amapolas.svg') center / 300px auto repeat;opacity:.035;filter:invert(1);z-index:-1;pointer-events:none}
.footer-l{font-size:13px;color:var(--on-accent-muted);letter-spacing:.1em;text-transform:uppercase;line-height:1.9}
.footer-r{font-family:'Cormorant Garamond',serif;font-size:18px;color:var(--on-accent);font-style:italic}
.footer-social{display:flex;gap:.75rem;align-items:center}
.footer-social a{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--on-accent-muted);text-decoration:none;transition:color .15s;display:flex;align-items:center;gap:5px}
.footer-social a:hover{color:#fff}
.footer-social .social-sep{color:var(--on-accent-muted);opacity:.4}
.social-icon{width:13px;height:13px;flex-shrink:0}

/* ── INK TRAIL ── */
#ink-trail{position:fixed;top:0;left:0;pointer-events:none;z-index:9999}
@media(hover:none){#ink-trail{display:none}}

/* ── REAL COVER IMAGE ── */
.has-real-img{padding:4px!important}
.has-real-img .dc-b1,.has-real-img .dc-b2,.has-real-img .book-obj-b1,.has-real-img .book-obj-b2,.has-real-img .grid-cover-b,.has-real-img .cat-cover-b{display:none}
.has-real-img img{width:100%;height:100%;object-fit:contain;display:block}
