@import url('https://fonts.googleapis.com/css2?family=Crimson+Text:ital,wght@0,400;0,600;0,700;1,400&family=Karla:wght@400;700&display=swap');
body, html { margin: 0; padding: 0; font-family: 'Karla', sans-serif; color: #2c2c2c; background: #eef1ec; }
.site-container { max-width: 900px; margin: 40px auto; background: white; padding: 0; box-shadow: 0 0 30px rgba(0,0,0,0.05); min-height: 85vh; display: flex; flex-direction: column; }
.centered-header { text-align: center; padding: 60px 40px 30px 40px; border-bottom: 1px solid #eaeaea; }
.bookstore-title { font-family: 'Crimson Text', serif; font-size: 3.5rem; margin: 0; font-weight: 700; color: #111; cursor: pointer; letter-spacing: -1px; }
.sub-brand { font-family: 'Karla', sans-serif; text-transform: uppercase; font-size: 0.8rem; letter-spacing: 3px; color: #777; margin-top: 10px; margin-bottom: 40px; }
.centered-nav { display: flex; justify-content: center; gap: 40px; }
.centered-nav a { text-decoration: none; color: #555; text-transform: uppercase; font-size: 0.9rem; font-weight: 700; letter-spacing: 1px; cursor: pointer; padding-bottom: 5px; border-bottom: 2px solid transparent; transition: all 0.2s; }
.centered-nav a:hover, .centered-nav a.active { color: #8e2b20; border-color: #8e2b20; }
.page { display: none; }
.page.active { display: block; animation: fade 0.4s ease; }
.image-banner { height: 350px; background-size: cover; background-position: center 30%; }
.centered-content { max-width: 600px; margin: 50px auto; padding: 0 40px; text-align: center; }
.dropcap { float: left; font-family: 'Crimson Text', serif; font-size: 5rem; line-height: 0.8; margin-right: 15px; color: #8e2b20; }
.intro-p { font-family: 'Crimson Text', serif; font-size: 1.35rem; line-height: 1.8; text-align: justify; }
hr.ornamental { border: none; height: 1px; background: transparent; position: relative; margin: 50px 0; }
hr.ornamental::after { content: '❖'; position: absolute; left: 50%; transform: translateX(-50%); top: -10px; font-size: 1.2rem; color: #ccc; }
.store-hours h3 { font-family: 'Crimson Text', serif; font-size: 1.8rem; font-style: italic; color: #444; margin-bottom: 15px; }
.store-hours p { line-height: 2; font-size: 1.1rem; color: #666; }
.book-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0; }
.book-item { display: flex; padding: 50px 40px; border-bottom: 1px solid #eaeaea; }
.book-item:nth-child(odd) { border-right: 1px solid #eaeaea; }
.book-cover { width: 140px; height: 200px; background: #333; color: white; display: flex; justify-content: center; align-items: center; text-align: center; padding: 20px; box-sizing: border-box; font-family: 'Crimson Text', serif; font-size: 1.2rem; font-style: italic; box-shadow: 5px 5px 15px rgba(0,0,0,0.1); margin-right: 30px; flex-shrink: 0; }
.mock-cover-1 { background: #2c3e50; }
.mock-cover-2 { background: #8e44ad; }
.book-details h4 { font-family: 'Crimson Text', serif; font-size: 1.6rem; margin: 0 0 5px 0; color: #111; }
.book-details em { display: block; color: #8e2b20; margin-bottom: 15px; }
.synopsis { font-size: 0.95rem; line-height: 1.6; color: #555; }
.price { display: inline-block; margin-top: 15px; font-weight: bold; font-family: 'Karla', sans-serif; }
.minimal-form { display: flex; flex-direction: column; gap: 15px; margin-top: 40px; text-align: left; }
.minimal-form input { padding: 15px; border: 1px solid #ccc; font-family: 'Karla', sans-serif; font-size: 1rem; }
.minimal-form button { background: #111; color: white; border: none; padding: 15px; cursor: pointer; text-transform: uppercase; font-family: 'Karla', sans-serif; font-weight: bold; letter-spacing: 1px; transition: background 0.3s; }
.minimal-form button:hover { background: #8e2b20; }
.centered-footer { text-align: center; padding: 40px; margin-top: auto; border-top: 1px solid #eaeaea; font-family: 'Karla', sans-serif; font-size: 0.85rem; color: #999; }
@keyframes fade { from { opacity: 0; } to { opacity: 1; } }
