@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500&family=Cinzel:wght@400;500;600;700&family=EB+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500;1,600&family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500&family=Source+Serif+4:ital,opsz,wght@0,8..60,300;0,8..60,400;0,8..60,500;1,8..60,300;1,8..60,400&family=IBM+Plex+Mono:wght@300;400;500&family=Inter:wght@300;400;500;600&display=swap");.animal-etymology-essay{--bg-deep:#080a08;--bg-elevated:#121612;--bg-surface:#1a1f1a;--text-primary:rgba(252,248,240,0.96);--text-secondary:rgba(252,248,240,0.75);--text-tertiary:rgba(252,248,240,0.50);--text-muted:rgba(252,248,240,0.30);--accent-ancient:#d4956a;--accent-medieval:#c9a227;--accent-renaissance:#5f7a4a;--accent-enlightenment:#8b7355;--accent-modern:#6b8e9f;--accent:var(--accent-ancient);--accent-glow:rgba(212,149,106,0.15);--font-ancient:"Cinzel","Trajan Pro","Times New Roman",serif;--font-medieval:"EB Garamond","Palatino",Georgia,serif;--font-renaissance:"Cormorant Garamond","Garamond",Georgia,serif;--font-enlightenment:"Playfair Display","Didot",Georgia,serif;--font-modern:"Inter",-apple-system,BlinkMacSystemFont,sans-serif;--font-display:"Cinzel","Cormorant Garamond",Georgia,serif;--font-body:"Source Serif 4","EB Garamond",Georgia,serif;--font-ui:"Inter",-apple-system,sans-serif;--font-mono:"IBM Plex Mono","JetBrains Mono",monospace;--space-xs:0.5rem;--space-sm:1rem;--space-md:2rem;--space-lg:4rem;--space-xl:8rem;--space-2xl:12rem;--duration-fast:200ms;--duration-normal:400ms;--duration-slow:800ms;--duration-glacial:1500ms;--ease-out:cubic-bezier(0.16,1,0.3,1);--ease-in-out:cubic-bezier(0.4,0,0.2,1);--content-width:720px;--wide-width:1000px;--full-width:1400px;--grain-opacity:0.04;--vignette-opacity:0.45;background:var(--bg-deep);background-image:radial-gradient(ellipse at 30% 20%,rgba(212,149,106,.03) 0,transparent 50%),radial-gradient(ellipse at 70% 80%,rgba(107,142,159,.03) 0,transparent 50%);color:var(--text-primary);font-family:var(--font-body);font-size:clamp(1rem,1.5vw,1.125rem);line-height:1.75;min-height:100vh;overflow-x:hidden}.timeline-progress{position:fixed;left:clamp(16px,3vw,32px);top:50%;transform:translateY(-50%);z-index:100;height:40vh;max-height:400px}.timeline-track{position:relative;width:2px;height:100%;background:rgba(252,248,240,.08);border-radius:1px}.timeline-fill{position:absolute;top:0;left:0;width:100%;background:linear-gradient(180deg,var(--accent-ancient) 0,var(--accent-medieval) 25%,var(--accent-renaissance) 45%,var(--accent-enlightenment) 70%,var(--accent-modern) 100%);border-radius:1px;transition:height .1s linear}.timeline-marker{position:absolute;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:8px}.marker-dot{width:8px;height:8px;background:rgba(252,248,240,.1);border:2px solid rgba(252,248,240,.15);border-radius:50%;transition:all var(--duration-normal) var(--ease-out)}.timeline-marker.passed .marker-dot{background:var(--text-primary);border-color:var(--text-primary);box-shadow:0 0 12px rgba(252,248,240,.4)}.marker-year{position:absolute;left:16px;font-family:var(--font-mono);font-size:.625rem;color:var(--text-muted);white-space:nowrap;opacity:0;transform:translateX(-4px);transition:all var(--duration-normal) var(--ease-out)}.timeline-marker.passed .marker-year{opacity:1;transform:translateX(0);color:var(--text-tertiary)}@media (max-width:768px){.timeline-progress{display:none}}.hero-section{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden}.hero-background{position:absolute;inset:0;z-index:1}.hero-image{object-fit:cover;object-position:center;filter:brightness(.35) saturate(.75) sepia(.15);transition:filter var(--duration-slow) var(--ease-out)}.hero-gradient{position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,10,8,.4),rgba(8,10,8,.2) 40%,rgba(8,10,8,.6) 75%,rgba(8,10,8,1))}.hero-grain{position:absolute;inset:0;opacity:var(--grain-opacity);background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");pointer-events:none}.hero-content{position:relative;z-index:10;text-align:center;padding:var(--space-lg);max-width:1000px;display:flex;flex-direction:column;align-items:center}.hero-kicker{font-family:var(--font-ui);font-size:.75rem;font-weight:500;letter-spacing:.3em;text-transform:uppercase;color:var(--accent-ancient);animation:fadeInUp var(--duration-glacial) var(--ease-out) .3s forwards}.hero-kicker,.hero-title{margin-bottom:var(--space-md);opacity:0}.hero-title{display:flex;align-items:center;justify-content:center;gap:clamp(1rem,4vw,2rem);flex-wrap:wrap;animation:fadeInUp var(--duration-glacial) var(--ease-out) .5s forwards}.hero-title-word{font-family:var(--font-ancient);font-size:clamp(2.5rem,10vw,6rem);font-weight:400;letter-spacing:.15em;color:var(--text-primary);text-shadow:0 0 80px rgba(212,149,106,.4),0 4px 20px rgba(0,0,0,.5)}.hero-title-arrow{font-family:var(--font-ui);font-size:clamp(1.5rem,5vw,3rem);font-weight:300;color:var(--accent-ancient);opacity:.6}.hero-subtitle{font-family:var(--font-body);font-size:clamp(1.125rem,2.5vw,1.5rem);font-style:italic;color:var(--text-secondary);max-width:600px;margin:0 auto var(--space-xl);opacity:0;animation:fadeInUp var(--duration-glacial) var(--ease-out) .7s forwards}.hero-scroll-prompt{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);opacity:0;animation:fadeInUp var(--duration-glacial) var(--ease-out) 1s forwards}.hero-scroll-prompt span{font-family:var(--font-ui);font-size:.6875rem;letter-spacing:.15em;text-transform:uppercase;color:var(--text-muted)}.scroll-line{width:1px;height:48px;background:linear-gradient(180deg,var(--text-tertiary) 0,transparent 100%);animation:scrollPulse 2s ease-in-out infinite}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes scrollPulse{0%,to{opacity:.3;transform:scaleY(.8)}50%{opacity:.8;transform:scaleY(1)}}.prologue{padding:var(--space-2xl) var(--space-md);display:flex;align-items:center;justify-content:center;min-height:80vh}.prologue-content{max-width:700px;text-align:center}.prologue-text{font-family:var(--font-body);font-size:clamp(1.125rem,2vw,1.375rem);line-height:1.8;color:var(--text-secondary);margin-bottom:var(--space-lg)}.prologue-text.large{font-family:var(--font-display);font-size:clamp(1.75rem,4vw,2.5rem);font-weight:400;letter-spacing:.02em;line-height:1.4;color:var(--text-primary)}.prologue-text.emphasis{font-family:var(--font-renaissance);font-size:clamp(1.25rem,2.5vw,1.625rem);font-style:italic;color:var(--accent-ancient)}.prologue-text:last-child{margin-bottom:0}.era-ancient{--accent:var(--accent-ancient);--accent-glow:rgba(212,149,106,0.15);--era-font:var(--font-ancient)}.era-medieval{--accent:var(--accent-medieval);--accent-glow:rgba(201,162,39,0.12);--era-font:var(--font-medieval)}.era-renaissance{--accent:var(--accent-renaissance);--accent-glow:rgba(95,122,74,0.12);--era-font:var(--font-renaissance)}.era-enlightenment{--accent:var(--accent-enlightenment);--accent-glow:rgba(139,115,85,0.12);--era-font:var(--font-enlightenment)}.era-modern{--accent:var(--accent-modern);--accent-glow:rgba(107,142,159,0.12);--era-font:var(--font-modern)}.chapter{position:relative;padding:var(--space-xl) var(--space-md) var(--space-2xl);max-width:var(--full-width);margin:0 auto}.chapter-header{text-align:center;margin-bottom:var(--space-xl);padding-top:var(--space-lg)}.chapter-number{display:block;font-size:clamp(3rem,8vw,5rem);color:var(--accent);opacity:.25;line-height:1;margin-bottom:var(--space-sm);letter-spacing:.1em}.chapter-number,.chapter-title{font-family:var(--era-font,var(--font-display));font-weight:400}.chapter-title{font-size:clamp(2rem,5vw,3.5rem);color:var(--text-primary);margin-bottom:var(--space-xs);letter-spacing:.02em}.chapter-subtitle{font-family:var(--font-ui);font-size:.8125rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}.era-ancient .chapter-title{font-family:var(--font-ancient);letter-spacing:.1em;text-transform:uppercase}.era-medieval .chapter-title{font-family:var(--font-medieval);font-style:italic}.era-renaissance .chapter-title{font-family:var(--font-renaissance);font-weight:300}.era-enlightenment .chapter-title{font-family:var(--font-enlightenment);font-weight:500}.era-modern .chapter-title{font-family:var(--font-modern);font-weight:500;letter-spacing:-.01em}.image-reveal{position:relative;width:100%;max-width:var(--wide-width);margin:var(--space-lg) auto;opacity:0;transform:translateY(32px);transition:opacity var(--duration-slow) var(--ease-out),transform var(--duration-slow) var(--ease-out)}.image-reveal.visible{opacity:1;transform:translateY(0)}.image-reveal-inner{position:relative;width:100%;aspect-ratio:16/10;overflow:hidden;border-radius:4px;background:var(--bg-elevated)}.reveal-image{object-fit:cover;transition:transform var(--duration-glacial) var(--ease-out)}.image-reveal.visible .reveal-image{transform:scale(1.02)}.image-vignette{box-shadow:inset 0 0 100px rgba(0,0,0,var(--vignette-opacity))}.image-grain,.image-vignette{position:absolute;inset:0;pointer-events:none}.image-grain{opacity:var(--grain-opacity);background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");mix-blend-mode:overlay}.image-caption{font-family:var(--font-ui);font-size:.8125rem;color:var(--text-tertiary);text-align:center;margin-top:var(--space-sm);font-style:italic}.image-reveal.era-ancient .reveal-image{filter:sepia(.35) saturate(.85) brightness(.88) contrast(1.05)}.image-reveal.era-medieval .reveal-image{filter:sepia(.4) saturate(.75) brightness(.85) contrast(1.1)}.image-reveal.era-renaissance .reveal-image{filter:sepia(.25) saturate(.9) brightness(.9) contrast(1.05)}.image-reveal.era-enlightenment .reveal-image{filter:sepia(.15) saturate(.85) brightness(.92)}.image-reveal.era-modern .reveal-image{filter:saturate(.95) brightness(.95)}.narrative-block{max-width:var(--content-width);margin:var(--space-lg) auto;padding:0 var(--space-md)}.etymology-callout{max-width:600px;margin:var(--space-xl) auto;padding:var(--space-lg);text-align:center;background:linear-gradient(135deg,var(--accent-glow),transparent);border-radius:12px;border:1px solid rgba(255,255,255,.06);opacity:0;transform:translateY(24px) scale(.98);transition:opacity var(--duration-slow) var(--ease-out),transform var(--duration-slow) var(--ease-out)}.etymology-callout.visible{opacity:1;transform:translateY(0) scale(1)}.etymology-word{display:block;font-family:var(--era-font,var(--font-display));font-size:clamp(3rem,8vw,5rem);font-weight:400;letter-spacing:.1em;color:var(--text-primary);margin-bottom:var(--space-xs);text-shadow:0 0 60px var(--accent-glow)}.etymology-callout.era-ancient .etymology-word{font-family:var(--font-ancient);text-transform:uppercase;letter-spacing:.15em}.etymology-callout.era-medieval .etymology-word{font-family:var(--font-medieval);font-style:italic}.etymology-callout.era-renaissance .etymology-word{font-family:var(--font-renaissance);font-weight:300}.etymology-callout.era-enlightenment .etymology-word{font-family:var(--font-enlightenment)}.etymology-callout.era-modern .etymology-word{font-family:var(--font-modern);font-weight:600;letter-spacing:.05em}.etymology-pronunciation{display:block;font-family:var(--font-mono);font-size:.875rem;color:var(--accent);margin-bottom:var(--space-md)}.etymology-details{display:flex;justify-content:center;gap:var(--space-md);margin-bottom:var(--space-sm)}.etymology-language,.etymology-year{font-family:var(--font-ui);font-size:.75rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--text-tertiary);padding:4px 12px;background:rgba(255,255,255,.04);border-radius:4px}.etymology-meaning{font-family:var(--font-body);font-size:1.125rem;color:var(--text-primary);margin-bottom:var(--space-xs);font-style:italic}.etymology-context{font-family:var(--font-ui);font-size:.8125rem;color:var(--text-tertiary);margin:0}.figure-profile{display:grid;grid-template-columns:200px 1fr;gap:var(--space-lg);max-width:var(--wide-width);margin:var(--space-xl) auto;padding:var(--space-lg);background:var(--bg-elevated);border-radius:8px;border:1px solid rgba(255,255,255,.04);opacity:0;transform:translateY(24px);transition:opacity var(--duration-slow) var(--ease-out),transform var(--duration-slow) var(--ease-out)}.figure-profile.visible{opacity:1;transform:translateY(0)}.figure-portrait{position:relative}.portrait-image{width:100%;height:auto;object-fit:cover;border-radius:4px;filter:grayscale(.15)}.figure-profile.era-ancient .portrait-image{filter:sepia(.35) saturate(.8) brightness(.9)}.figure-profile.era-medieval .portrait-image{filter:sepia(.45) saturate(.65) contrast(1.1)}.figure-profile.era-renaissance .portrait-image{filter:sepia(.2) saturate(.85) contrast(1.05)}.figure-profile.era-enlightenment .portrait-image{filter:sepia(.15) saturate(.75) brightness(.95)}.portrait-frame{position:absolute;inset:0;border:1px solid var(--accent);border-radius:4px;opacity:.3;pointer-events:none}.figure-details{display:flex;flex-direction:column;justify-content:center}.figure-name{font-family:var(--era-font,var(--font-display));font-size:1.75rem;font-weight:400;color:var(--text-primary);margin:0 0 var(--space-xs)}.figure-epithet{font-family:var(--font-body);font-size:1.0625rem;font-style:italic;color:var(--accent);margin:0 0 var(--space-xs)}.figure-dates{font-family:var(--font-mono);font-size:.75rem;color:var(--text-tertiary);margin:0 0 var(--space-md)}.figure-contributions{margin:0 0 var(--space-md);padding-left:var(--space-sm);list-style:none}.figure-contributions li{position:relative;font-size:.9375rem;color:var(--text-secondary);margin-bottom:var(--space-xs);padding-left:var(--space-sm)}.figure-contributions li:before{content:"";position:absolute;left:0;top:.6em;width:4px;height:4px;background:var(--accent);border-radius:50%;opacity:.6}.figure-quote{margin:0;padding:var(--space-sm) var(--space-md);background:rgba(0,0,0,.2);border-left:2px solid var(--accent);border-radius:0 4px 4px 0}.figure-quote p{font-family:var(--font-body);font-size:.9375rem;font-style:italic;color:var(--text-primary);margin:0 0 var(--space-xs)}.figure-quote cite{font-family:var(--font-ui);font-size:.75rem;font-style:normal;color:var(--text-tertiary)}@media (max-width:768px){.figure-profile{grid-template-columns:1fr;text-align:center}.figure-portrait{max-width:180px;margin:0 auto}.figure-contributions{text-align:left}}.word-evolution{max-width:var(--wide-width);margin:var(--space-xl) auto;padding:var(--space-lg);background:var(--bg-elevated);border-radius:12px;border:1px solid rgba(255,255,255,.04);opacity:0;transform:translateY(24px);transition:opacity var(--duration-slow) var(--ease-out),transform var(--duration-slow) var(--ease-out)}.word-evolution.visible{opacity:1;transform:translateY(0)}.evolution-title{font-family:var(--font-display);font-size:1.5rem;font-weight:400;color:var(--text-primary);text-align:center;margin-bottom:var(--space-lg)}.evolution-track{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-md)}.evolution-stage{position:relative;text-align:center;padding:var(--space-md);background:rgba(0,0,0,.3);border-radius:8px;min-width:140px;opacity:0;transform:translateY(16px);transition:opacity var(--duration-normal) var(--ease-out),transform var(--duration-normal) var(--ease-out)}.word-evolution.visible .evolution-stage{opacity:1;transform:translateY(0)}.stage-word{font-family:var(--font-display);font-size:1.5rem;font-style:italic;color:var(--text-primary)}.stage-meaning,.stage-word{display:block;margin-bottom:var(--space-xs)}.stage-meaning{font-family:var(--font-body);font-size:.875rem;color:var(--text-secondary)}.stage-era{display:block;font-family:var(--font-mono);font-size:.6875rem;color:var(--text-tertiary)}.stage-connector{display:none}@media (min-width:900px){.evolution-track{flex-wrap:nowrap;gap:0}.evolution-stage{flex:1;border-radius:0;background:transparent;border-right:1px solid rgba(255,255,255,.08)}.evolution-stage:last-child{border-right:none}}.animal-etymology-essay .pull-quote{border-left-color:var(--accent)}.animal-etymology-essay .pull-quote-text{color:var(--text-primary)}.animal-etymology-essay .voice-eternal{color:var(--accent);border-color:rgba(255,255,255,.06)}.animal-etymology-essay .voice-eternal p:after,.animal-etymology-essay .voice-eternal p:before{color:var(--accent-glow)}.revealed-block{opacity:0;transform:translateY(24px);transition:opacity var(--duration-slow) var(--ease-out),transform var(--duration-slow) var(--ease-out)}.revealed-block.visible{opacity:1;transform:translateY(0)}.chapter-header .chapter-number,.chapter-header .chapter-subtitle,.chapter-header .chapter-title{opacity:0;transform:translateY(20px);transition:opacity var(--duration-slow) var(--ease-out),transform var(--duration-slow) var(--ease-out)}.chapter-header.visible .chapter-number{opacity:.25;transform:translateY(0);transition-delay:0s}.chapter-header.visible .chapter-title{opacity:1;transform:translateY(0);transition-delay:.15s}.chapter-header.visible .chapter-subtitle{opacity:1;transform:translateY(0);transition-delay:.3s}.epilogue{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-xl) var(--space-md)}.epilogue-image{position:absolute;inset:0;z-index:1}.epilogue-background{object-fit:cover;object-position:center;filter:brightness(.2) saturate(.6) sepia(.2)}.epilogue-gradient{position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 0,rgba(8,10,8,.7) 60%,rgba(8,10,8,.95) 100%)}.epilogue-content{position:relative;z-index:10;text-align:center;max-width:750px}.epilogue-title{font-family:var(--font-display);font-size:clamp(2rem,5vw,3rem);font-weight:400;color:var(--text-primary);margin-bottom:var(--space-lg);letter-spacing:.05em}.epilogue-text{font-family:var(--font-body);font-size:clamp(1rem,2vw,1.25rem);color:var(--text-secondary);margin-bottom:var(--space-md);line-height:1.8}.epilogue-closing{font-family:var(--font-renaissance);font-size:clamp(1.25rem,3vw,1.75rem);font-style:italic;color:var(--accent-ancient);margin-top:var(--space-xl);line-height:1.6}.sources-section{padding:var(--space-2xl) var(--space-md);max-width:var(--wide-width);margin:0 auto;border-top:1px solid rgba(255,255,255,.06)}.sources-section h3{font-family:var(--font-display);font-size:1.5rem;color:var(--text-primary);margin-bottom:var(--space-lg);text-align:center}.sources-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-lg)}.source-category h4{font-family:var(--font-ui);font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-ancient);margin-bottom:var(--space-sm)}.source-category ul{list-style:none;margin:0;padding:0}.source-category li{font-family:var(--font-body);font-size:.875rem;color:var(--text-secondary);margin-bottom:var(--space-xs);line-height:1.5}.source-category li em{color:var(--text-primary)}.sources-note{font-family:var(--font-ui);font-size:.75rem;color:var(--text-tertiary);text-align:center;margin-top:var(--space-lg)}@media (max-width:768px){.sources-grid{grid-template-columns:1fr}}.animal-etymology-essay .section-divider{padding:var(--space-xl) 0}.animal-etymology-essay .divider-symbol{color:var(--accent);opacity:.5}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.chapter-header .chapter-number,.chapter-header .chapter-subtitle,.chapter-header .chapter-title,.etymology-callout,.figure-profile,.hero-kicker,.hero-scroll-prompt,.hero-subtitle,.hero-title,.image-reveal,.revealed-block,.word-evolution{opacity:1;transform:none}.chapter-header .chapter-number{opacity:.25}}@media (max-width:480px){.chapter{padding:var(--space-lg) var(--space-sm) var(--space-xl)}.chapter-header{margin-bottom:var(--space-lg)}.narrative-block{padding:0 var(--space-sm)}.etymology-callout,.figure-profile,.word-evolution{padding:var(--space-md)}.hero-title{flex-direction:column;gap:var(--space-sm)}.hero-title-arrow{transform:rotate(90deg)}}