.site-header{position:relative;width:100%;border-bottom:1px solid var(--color-border-brand);background-color:var(--color-background-pure)}.site-header-inner{display:flex;align-items:center;justify-content:space-between;max-width:var(--body-max-width);margin:0 auto;padding:1rem 1.5rem;gap:1.5rem}.site-header-logo{display:inline-flex;align-items:center;gap:.75rem;font-family:var(--font-text);font-size:var(--size-header-sm);font-weight:var(--weight-semibold);letter-spacing:.02em;color:var(--color-brand)}.site-header-logo:hover{color:var(--color-brand-dark)}.site-header-logo-img{height:2.5rem;width:auto;display:block;object-fit:contain}.site-header-logo-text{font-size:var(--size-header-sm)}.site-header-nav{display:flex;align-items:center;gap:1.75rem}.site-header-link{font-family:var(--font-display);font-size:.95rem;color:var(--color-text-muted)}.site-header-link:hover{color:var(--color-brand)}.site-header-link-active{font-weight:var(--weight-semibold);color:var(--color-brand)}.site-header-book-dropdown{position:relative}.site-header-cta{display:inline-flex;align-items:center;padding:.6rem 1.25rem;background-color:var(--color-brand);color:var(--color-background-pure);font-family:var(--font-display);font-size:.9rem;font-weight:var(--weight-regular);letter-spacing:.03em;border-radius:4px;border:none;cursor:pointer;text-decoration:none}.site-header-cta:hover{background-color:var(--color-brand-dark);color:var(--color-background-pure)}.site-header-book-menu{position:absolute;top:calc(100% + .5rem);right:0;min-width:420px;background:var(--color-background-pure);border:1px solid var(--color-border-brand-strong);border-radius:8px;box-shadow:0 10px 40px var(--color-shadow-brand-strong);z-index:100;overflow:hidden}.site-header-book-option{display:flex;align-items:center;gap:1rem;padding:.85rem 1rem;color:inherit;text-decoration:none;border-bottom:1px solid #f3f4f6;transition:background-color .15s}.site-header-book-option:last-child{border-bottom:none}.site-header-book-option:hover{background-color:var(--color-brand-hover-overlay)}.site-header-book-option-image{width:72px;height:72px;flex-shrink:0;border-radius:6px;overflow:hidden;background-color:#e5e7eb}.site-header-book-option-image img{width:100%;height:100%;object-fit:cover;display:block}.site-header-book-option-placeholder{width:100%;height:100%;background-color:#9ca3af}.site-header-book-option-text{display:flex;flex-direction:column;gap:.25rem;min-width:0}.site-header-book-option-name{font-family:var(--font-text);font-size:.95rem;font-weight:var(--weight-semibold);color:var(--color-brand)}.site-header-book-option-specs{font-family:var(--font-display);font-size:.8rem;color:var(--color-text-soft)}.site-header-hamburger{display:none;flex-direction:column;justify-content:center;gap:5px;width:2.5rem;height:2.5rem;padding:0;border:none;background:transparent;cursor:pointer;color:var(--color-brand);border-radius:4px;transition:background-color .2s}.site-header-hamburger:hover{background-color:var(--color-brand-hover-overlay)}.site-header-hamburger-bar{display:block;width:100%;height:2px;background-color:currentColor;border-radius:1px;transition:transform .2s,opacity .2s}.site-header-hamburger[aria-expanded=true] .site-header-hamburger-bar:nth-child(1){transform:translateY(7px) rotate(45deg)}.site-header-hamburger[aria-expanded=true] .site-header-hamburger-bar:nth-child(2){opacity:0}.site-header-hamburger[aria-expanded=true] .site-header-hamburger-bar:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.site-header-mobile-menu{position:absolute;top:100%;left:0;right:0;z-index:999;background:var(--color-background-pure);border-bottom:1px solid var(--color-border-brand);max-height:0;overflow:hidden;opacity:0;transition:max-height .3s ease-out,opacity .2s ease-out;box-shadow:0 10px 30px var(--color-shadow-brand)}.site-header-mobile-menu-open{max-height:85vh;opacity:1;overflow-y:auto}.site-header-mobile-nav{display:flex;flex-direction:column;padding:1rem 1.5rem 1.5rem;gap:0}.site-header-mobile-nav .site-header-link{display:block;padding:.85rem 0;font-size:1.05rem;border-bottom:1px solid var(--color-border-brand)}.site-header-mobile-nav .site-header-link:last-of-type{border-bottom:none}.site-header-mobile-book{margin-top:.5rem;padding-top:1rem;border-top:1px solid var(--color-border-brand)}.site-header-mobile-cta{margin-top:.75rem;justify-content:center}.site-header-mobile-book .site-header-book-menu{position:static;margin-top:.5rem;min-width:100%;box-shadow:none;border:1px solid var(--color-border-brand)}.site-header-mobile-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:998;background:#00000040;border:none;cursor:pointer;padding:0}@media (max-width: 768px){.site-header-nav-desktop{display:none}.site-header-hamburger{display:flex}}@media (max-width: 640px){.site-header-inner{padding:.75rem 1rem}.site-header-book-menu{min-width:390px}}.app-splash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;background-color:var(--color-background);display:flex;align-items:center;justify-content:center;opacity:1;transition:opacity .5s ease-out;pointer-events:none}.app-splash-out{opacity:0;pointer-events:none}@media (prefers-reduced-motion: reduce){.app-splash,.app-splash-out,.app-content,.app-content-in{transition-duration:.01ms}}.app-splash-logo{width:clamp(6rem,20vw,10rem);height:auto;display:block;object-fit:contain}.app-splash-logo-text{font-family:Georgia,Times New Roman,serif;font-weight:var(--weight-semibold);font-size:var(--size-logo-sm);line-height:var(--line-tight);color:var(--color-brand)}.app-content{opacity:0;transition:opacity .5s ease-out;min-height:100vh}.app-content-in{opacity:1}:root{--color-brand: #722f37;--color-brand-dark: #5c262d;--color-brand-muted: #8b3d47;--color-text: var(--color-brand);--color-text-muted: var(--color-brand-muted);--color-text-soft: var(--color-brand-muted);--color-background: #f8f4f1;--color-background-pure: #fdfbf9;--color-brand-hover-overlay: rgba(114, 47, 55, .2);--color-white: #fff;--color-neutral-100: #f3f4f6;--color-neutral-200: #e5e7eb;--color-neutral-400: #9ca3af;--color-neutral-500: #6b7280;--color-neutral-700: #374151;--color-neutral-800: #1f2937;--color-placeholder: #9ca3af;--color-placeholder-grey: #c4c4c4;--color-placeholder-warm: #c9a99a;--color-placeholder-muted: #9ca3af;--color-overlay-dark: rgba(0, 0, 0, .9);--color-overlay-hero: rgba(0, 0, 0, .85);--color-overlay-light: rgba(255, 255, 255, .1);--color-overlay-light-strong: rgba(255, 255, 255, .2);--color-text-on-dark: rgba(255, 255, 255, .9);--color-border-brand: rgba(114, 47, 55, .12);--color-border-brand-strong: rgba(114, 47, 55, .15);--color-border-brand-focus: rgba(114, 47, 55, .2);--color-border-neutral: #e5e7eb;--color-shadow-brand: rgba(114, 47, 55, .08);--color-shadow-brand-strong: rgba(114, 47, 55, .12);--body-max-width: 72rem;--body-padding: 1.5rem;--font-text: "EB Garamond", Georgia, serif;--font-display: "Gotham", "Montserrat", system-ui, sans-serif;--weight-regular: 400;--weight-semibold: 600;--size-logo: 96px;--size-logo-sm: clamp(1.75rem, 5vw, 6rem);--size-title: 64px;--size-title-sm: clamp(2rem, 6vw, 4rem);--size-subtitle-text: 40px;--size-subtitle-text-sm: clamp(1.25rem, 3.5vw, 2.5rem);--size-header: 36px;--size-header-sm: clamp(1.25rem, 3vw, 2.25rem);--size-body: 1rem;--size-body-sm: clamp(1rem, 2vw, 2rem);--size-ui: 1rem;--size-caption: .9rem;--size-small: .8rem;--size-tagline: clamp(.85rem, 2vw, 1rem);--size-hero-tagline: clamp(.85rem, 2vw, 1rem);--size-lightbox-nav: 1.75rem;--line-tight: 1.1;--line-snug: 1.15;--line-heading: 1.25;--line-body: 1.75;--line-relaxed: 1.7}.font-text{font-family:var(--font-text)}.font-display{font-family:var(--font-display)}.text-logo{font-family:var(--font-text);font-weight:var(--weight-semibold);font-size:var(--size-logo-sm);line-height:var(--line-tight)}.text-title{font-family:var(--font-text);font-weight:var(--weight-semibold);font-size:var(--size-title-sm);line-height:var(--line-snug)}.text-subtitle-text{font-family:var(--font-text);font-weight:var(--weight-semibold);font-size:var(--size-subtitle-text-sm);line-height:var(--line-heading)}.text-header{font-family:var(--font-display);font-weight:var(--weight-regular);font-size:var(--size-header-sm);line-height:1.3}.text-body{font-family:var(--font-display);font-weight:var(--weight-regular);font-size:var(--size-body);line-height:var(--line-body)}.text-caption{font-family:var(--font-display);font-size:var(--size-caption);line-height:var(--line-body)}.text-ui{font-family:var(--font-display);font-size:var(--size-ui);line-height:var(--line-body)}.text-small{font-family:var(--font-display);font-size:var(--size-small);line-height:var(--line-body)}.fade-in-view{opacity:0;transform:translateY(20px);transition:opacity .6s ease-out,transform .6s ease-out}.fade-in-view.is-visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion: reduce){.fade-in-view{transition:none;opacity:1;transform:none}.fade-in-view.is-visible{opacity:1;transform:none}}:root{font-family:var(--font-display);font-weight:var(--weight-regular);line-height:1.5;color-scheme:light;color:var(--color-text);background-color:var(--color-background)}*{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}body{margin:0;min-height:100vh}#root{min-height:100vh}.skip-link{position:absolute;top:-100px;left:var(--body-padding);z-index:10000;padding:.6rem 1rem;background:var(--color-brand);color:var(--color-background-pure);font-family:var(--font-display);font-size:var(--size-caption);border-radius:4px;transition:top .2s ease}.skip-link:focus{top:.5rem;outline:2px solid var(--color-white);outline-offset:2px}@media (prefers-reduced-motion: reduce){.skip-link{transition:none}}a{color:inherit;text-decoration:none}footer{padding:2rem var(--body-padding);text-align:center;border-top:1px solid var(--color-border-brand);background-color:var(--color-background-pure);color:var(--color-text-muted);font-size:var(--size-caption)}footer a{color:var(--color-brand)}footer .footer-nav{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.25rem .5rem;margin-bottom:.75rem}footer .footer-link{color:var(--color-brand)}footer .footer-link:hover{color:var(--color-brand-dark)}footer .footer-link-cta{font-weight:var(--weight-semibold)}footer .footer-sep{color:var(--color-text-soft);font-weight:var(--weight-regular)}footer .footer-copy{margin:0}footer a:hover{color:var(--color-brand-dark)}footer .footer-version{margin:.5rem 0 0;font-size:var(--size-small);opacity:.85}
