:root{--color-page-bg: #0f0a05;--color-hero-left-dark: #120b04;--color-hero-right-top: #20130a;--color-hero-right-mid: #160e07;--color-hero-right-bottom: #100a05;--color-gold: #e6b24d;--color-gold-soft: #f3cf85;--color-gold-mid: #f0c46a;--color-gold-vivid: #fcfc8a;--color-cream: #e9dcc4;--color-cream-bright: #fff7e6;--color-cream-body: #efe2c8;--color-cream-strong: #fbeccd;--color-ink-btn-text: #241608;--color-book-bg-top: #123d3a;--color-book-bg-mid: #0c2a29;--color-book-bg-bottom: #08201f;--color-teal-label: #7fd0c4;--color-teal-soft: #bfe4dc;--color-teal-mid: #9fded1;--color-teal-body: #cfe2dd;--color-teal-bright: #eaf4f0;--color-teal-cream: #f3ead6;--color-teal-accent: #0f9c7f;--color-book-btn-text: #1a2a28;--color-author-label: #c99a3f;--color-author-body: #cdbfa0;--color-subscribe-bg: #2a1808;--color-subscribe-title: #f5ead4;--color-subscribe-subtitle: #c9b28e;--color-input-bg: #f6ecd6;--color-input-text: #3a2a18;--color-btn-gradient-top: #b5701f;--color-btn-gradient-bottom: #9f5c16;--color-footer-bg: #0b0703;--color-footer-text: rgba(233, 220, 196, .4);--font-display: "Cormorant Garamond", Georgia, serif;--font-reading: "EB Garamond", Georgia, serif;--space-2xs: .5rem;--space-xs: .75rem;--space-sm: 1rem;--space-md: 1.5rem;--space-lg: 2.5rem;--space-xl: 4rem;--space-2xl: 6rem;--space-3xl: 8rem;--radius-sharp: 2px;--radius-md: 12px;--radius-pill: 999px;--shadow-soft: 0 8px 24px rgba(0, 0, 0, .28);--shadow-lifted: 0 24px 55px rgba(0, 0, 0, .5);--ease-out: cubic-bezier(.16, 1, .3, 1);--duration-fast: .2s;--duration-base: .5s;--duration-slow: .7s;--content-measure: 40rem;--page-max: 1280px;--container-pad: 1.5rem;--text-prose: 1.25rem;--text-prose-line: 1.58;--text-emphasis: 1.45rem;--text-emphasis-line: 1.3}html{scroll-behavior:smooth}html,body{scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar,body::-webkit-scrollbar{display:none}body{margin:0;background:var(--color-page-bg);color:var(--color-cream);font-family:var(--font-reading);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img{max-width:100%;display:block}a{color:var(--color-gold);text-decoration:none}a:hover{color:var(--color-gold-soft)}h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;margin:0}p{margin:0}.page-frame{max-width:var(--page-max);margin-inline:auto;background:var(--color-page-bg);box-shadow:var(--shadow-lifted);overflow:hidden}.container{padding-inline:var(--container-pad)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:focus-visible{outline:2px solid var(--color-gold);outline-offset:2px}.eyebrow{font-family:var(--font-reading);font-size:.8rem;letter-spacing:.28em;text-transform:uppercase}.orientation-lock{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;align-items:center;justify-content:center;padding:2rem;background:var(--color-page-bg);text-align:center}.orientation-lock__icon{margin:0 0 1.25rem;font-family:var(--font-display);font-size:2.5rem;line-height:1;color:var(--color-gold-soft);transform:rotate(90deg)}.orientation-lock__title{font-size:clamp(1.75rem,1.5rem + 1vw,2.25rem);color:var(--color-cream-bright);margin:0 0 .75rem}.orientation-lock__text{font-family:var(--font-reading);font-size:1.1rem;line-height:1.5;color:var(--color-cream-body);max-width:18rem;margin:0 auto}@media (orientation: landscape) and (hover: none) and (pointer: coarse){.orientation-lock{display:flex}.page-frame{display:none}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--font-reading);font-size:.8rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;padding:10px 22px;border-radius:var(--radius-sharp);border:1px solid transparent;cursor:pointer;transition:transform var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.btn--solid{background:var(--color-gold);color:var(--color-ink-btn-text);box-shadow:var(--shadow-soft)}.btn--solid:hover{transform:translateY(-1px);box-shadow:var(--shadow-lifted);color:var(--color-ink-btn-text)}.btn--outline{background:transparent;border-color:#fbeccd99;color:var(--color-cream-strong)}.btn--outline:hover{border-color:var(--color-gold);color:var(--color-gold)}.btn__icon{display:flex;flex-shrink:0;opacity:.9}.btn__icon svg{display:block}.store-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px 8px;margin:0;padding:0;list-style:none}.store-badge{display:flex;flex-direction:column;align-items:center;gap:8px;text-decoration:none}.store-badge__logo{display:flex;align-items:center;justify-content:center;width:52px;height:52px}.store-badge__logo img{display:block;width:52px;height:52px;object-fit:contain;transition:transform var(--duration-fast) var(--ease-out)}a.store-badge:hover .store-badge__logo img{transform:translateY(-1px)}.store-badge--placeholder{cursor:default;opacity:.55;pointer-events:none;-webkit-user-select:none;user-select:none}.store-badge__label{font-family:var(--font-reading);font-size:11px;line-height:1.25;letter-spacing:.02em;color:var(--color-teal-soft);text-align:center}.store-badge__hint{display:block;margin-top:-4px;font-family:var(--font-reading);font-size:10px;font-style:italic;letter-spacing:.04em;line-height:1.2;color:var(--color-teal-mid);text-align:center}.goodreads-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:fit-content;max-width:100%;margin:1.25rem auto 0;background:transparent;border:1px solid rgba(191,228,220,.45);border-radius:var(--radius-sharp);padding:8px 14px;text-decoration:none;box-shadow:none;transition:transform var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.goodreads-btn:hover{transform:translateY(-1px);background:#bfe4dc14;border-color:var(--color-teal-soft);color:var(--color-teal-bright)}.goodreads-btn__logo{display:block;width:22px;height:22px;border-radius:3px;object-fit:contain;flex-shrink:0;opacity:.92}.goodreads-btn__label{font-family:var(--font-reading);font-size:.85rem;font-weight:500;letter-spacing:.02em;color:var(--color-teal-bright)}.author-frame{flex:none;width:170px;height:220px;border-radius:50%;overflow:hidden;padding:2px;background:var(--color-page-bg);border:2px solid var(--color-author-label);box-shadow:0 22px 55px #0000008c}.author-frame img{width:100%;height:100%;object-fit:cover;border-radius:50%}.author-contact{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;margin-top:0;padding:.5rem 1.15rem .55rem;border:1px solid rgba(201,154,63,.42);border-radius:var(--radius-pill);background:#0f0a0559;font-family:var(--font-reading);font-size:.72rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--color-author-label);text-decoration:none;transition:transform var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.author-contact__icon{display:flex;flex-shrink:0;opacity:.88;transition:transform var(--duration-fast) var(--ease-out)}.author-contact:hover,.author-contact:focus-visible{color:var(--color-gold-soft);border-color:#e6b24da6;background:#e6b24d1a;box-shadow:0 6px 20px #00000047;transform:translateY(-1px)}.author-contact:hover .author-contact__icon,.author-contact:focus-visible .author-contact__icon{transform:translateY(-1px)}.author-contact:focus-visible{outline:2px solid var(--color-gold);outline-offset:3px}.subscribe-form{display:flex;justify-content:center;gap:16px;max-width:700px;margin:0 auto;flex-wrap:wrap}.subscribe-form__hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.subscribe-form__input{flex:1;min-width:260px;background:var(--color-input-bg);border:1px solid rgba(240,196,106,.3);border-radius:var(--radius-sharp);padding:12px 20px;font-family:var(--font-reading);font-size:16px;color:var(--color-input-text);outline:none}.subscribe-form__input::placeholder{color:#3a2a188c}.subscribe-form__input:focus-visible{outline:2px solid var(--color-gold);outline-offset:2px}.subscribe-form__submit:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.subscribe-form__status{min-height:1.4em;margin-top:var(--space-sm);font-family:var(--font-reading);font-size:.95rem}.subscribe-form__status[data-state=success]{color:var(--color-gold-soft)}.subscribe-form__status[data-state=error]{color:#e0a48a}.site-dialog{border:none;padding:0;margin:auto;max-width:calc(100% - 2rem);width:22rem;background:transparent}.site-dialog::backdrop{background:#080502b8;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.site-dialog__panel{padding:2.25rem 1.75rem 1.85rem;border-radius:var(--radius-sharp);border:1px solid rgba(240,196,106,.22);background:linear-gradient(165deg,var(--color-hero-right-top) 0%,var(--color-hero-right-bottom) 100%);box-shadow:var(--shadow-lifted);text-align:center}.site-dialog__ornament{font-size:1.1rem;color:var(--color-gold);margin:0 0 .65rem;opacity:.85}.site-dialog__title{font-family:var(--font-display);font-weight:600;font-size:1.65rem;line-height:1.15;color:var(--color-cream-bright);margin:0}.site-dialog__text{font-size:1rem;line-height:1.62;color:var(--color-cream-body);margin:1rem 0 0}.site-dialog__btn{margin-top:1.65rem;background:var(--color-gold);color:var(--color-ink-btn-text);border:1px solid transparent;border-radius:var(--radius-sharp);padding:.72rem 1.5rem;font-family:var(--font-reading);font-size:.75rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;box-shadow:var(--shadow-soft);transition:transform var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.site-dialog__btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-lifted)}.site-dialog__btn:focus-visible{outline:2px solid var(--color-gold-soft);outline-offset:3px}@media (max-width: 899px){.subscribe-form{flex-direction:column;align-items:center;gap:.75rem;width:100%;max-width:none;margin:0}.subscribe-form__input{min-width:0;width:100%;align-self:stretch}.subscribe-form__submit{width:auto;align-self:center}.subscribe-form__status{min-height:0;margin-top:0;width:100%}.subscribe-form__status:not(:empty){min-height:1.35em}}*,*:before,*:after{box-sizing:border-box}html{touch-action:pan-y pinch-zoom}body.contact{margin:0;min-height:100dvh;background:var(--color-page-bg);background-image:linear-gradient(165deg,var(--color-hero-right-top) 0%,var(--color-hero-right-mid) 42%,var(--color-hero-right-bottom) 100%);color:var(--color-cream-body);font-family:var(--font-reading);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.contact-shell{max-width:34rem;margin-inline:auto;min-height:100dvh;padding:0 0 3rem}@media (min-width: 900px){.contact-shell{max-width:40rem;padding-bottom:4rem}}.skip-link{position:absolute;left:-9999px;top:0;z-index:1000;background:var(--color-gold);color:var(--color-ink-btn-text);padding:.75rem 1.25rem;font-family:var(--font-reading)}.skip-link:focus{left:0}.contact-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1.25rem;border-bottom:1px solid rgba(240,196,106,.12)}.contact-back{font-family:var(--font-reading);font-size:.95rem;color:var(--color-cream);text-decoration:none;opacity:.82;transition:opacity var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.contact-back:hover,.contact-back:focus-visible{opacity:1;color:var(--color-gold-soft)}.contact-series{font-family:var(--font-display);font-style:italic;font-size:.92rem;color:#e9dcc48c;margin:0;text-align:right}.contact-panel{padding:2.25rem 1.35rem 0}@media (min-width: 900px){.contact-panel{padding:2.75rem 2rem 0}}.contact-title{font-family:var(--font-display);font-weight:600;font-size:clamp(2.1rem,1.8rem + 1.2vw,2.85rem);line-height:1.05;color:var(--color-cream-bright);margin:0}.contact-rule{width:46px;height:1px;background:#fbeccd8c;margin:1.15rem 0 0}.contact-intro{font-size:clamp(1.05rem,1rem + .15vw,1.15rem);line-height:1.62;color:var(--color-cream-body);margin:1.35rem 0 0}.contact-note{font-family:var(--font-display);font-style:italic;font-size:.98rem;color:#e9dcc49e;margin:.85rem 0 0}.contact-author-mail{margin:.85rem 0 0}.contact-author-mail a{font-family:var(--font-display);font-style:italic;font-size:clamp(1.02rem,.95rem + .2vw,1.12rem);letter-spacing:.02em;color:var(--color-cream);text-decoration:none;border-bottom:1px solid rgba(240,196,106,.28);padding-bottom:.08em;transition:color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.contact-author-mail a:hover,.contact-author-mail a:focus-visible{color:var(--color-gold-soft);border-bottom-color:#e6b24d8c}.contact-author-mail a:focus-visible{outline:2px solid var(--color-gold);outline-offset:4px}.contact-form{margin-top:2rem;display:flex;flex-direction:column;gap:1.15rem}.contact-form__hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.contact-field{display:flex;flex-direction:column;gap:.4rem}.contact-field--message{margin-bottom:0}.contact-field__label{font-family:var(--font-reading);font-size:.72rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:#e9dcc4b8}.contact-field__input{width:100%;min-height:2.75rem;background:#f6ecd6c7;border:1px solid rgba(240,196,106,.22);border-radius:var(--radius-sharp);padding:.625rem .85rem;font-family:var(--font-reading);font-size:1rem;color:var(--color-input-text);outline:none;transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out)}.contact-field__input::placeholder{color:#3a2a1873}.contact-field__input:focus-visible{border-color:var(--color-gold);background:#f6ecd6e0;box-shadow:0 0 0 2px #e6b24d59}.contact-field[data-state=error] .contact-field__input{border-color:#e0a48abf;box-shadow:0 0 0 1px #e0a48a59}.contact-field__error{min-height:0;margin:0;font-size:.88rem;line-height:1.35;color:#e0a48a}.contact-field__error:empty{display:none}.contact-field__textarea{min-height:6.5rem;resize:vertical;line-height:1.55;padding-top:.7rem;padding-bottom:.7rem}.contact-form__actions{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;margin-top:-.15rem}.contact-form__status{min-height:1.35em;margin:0;font-size:.95rem}.contact-form__status[data-state=error]{color:#e0a48a}.contact-form__submit{align-self:flex-start;margin-top:0;background:var(--color-gold);color:var(--color-ink-btn-text);border:1px solid transparent;border-radius:var(--radius-sharp);padding:.78rem 1.85rem;font-family:var(--font-reading);font-size:.78rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;box-shadow:var(--shadow-soft);transition:transform var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out),opacity var(--duration-fast) var(--ease-out)}.contact-form__submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-lifted)}.contact-form__submit:disabled{opacity:.6;cursor:default;transform:none}.contact-form__submit:focus-visible{outline:2px solid var(--color-gold-soft);outline-offset:3px}
