@font-face{font-family:DM Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/dm-sans-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/dm-sans-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/manrope-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Manrope;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/manrope-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Material Symbols Outlined;font-style:normal;font-weight:100 700;font-display:swap;src:url(/fonts/material-symbols-outlined.woff2) format("woff2")}:root{--surface: #fffbff;--surface-bright: #fffbff;--surface-dim: #e6e2d6;--surface-container-lowest: #ffffff;--surface-container-low: #fdf9f2;--surface-container: #f7f3eb;--surface-container-high: #f1eee4;--surface-container-highest: #ece8dd;--surface-variant: #ece8dd;--on-surface: #393831;--on-background: #393831;--on-surface-variant: #66645c;--outline: #838178;--outline-variant: #bcb9af;--inverse-surface: #0f0e0c;--inverse-on-surface: #9f9c98;--inverse-primary: #eceef2;--primary: #0f2a2e;--primary-dim: #08191c;--on-primary: #f6f8f7;--primary-container: #cfdcdc;--on-primary-container: #0f2a2e;--primary-fixed: #cfdcdc;--primary-fixed-dim: #b8cacb;--on-primary-fixed: #08191c;--on-primary-fixed-variant: #35494b;--secondary: #66645e;--secondary-dim: #5a5853;--on-secondary: #ffffff;--secondary-container: #e6e2db;--on-secondary-container: #53524c;--secondary-fixed: #e6e2db;--secondary-fixed-dim: #d8d4cd;--on-secondary-fixed: #413f3a;--on-secondary-fixed-variant: #5d5b56;--tertiary: #736057;--tertiary-dim: #67544c;--on-tertiary: #ffffff;--tertiary-container: #fae0d5;--on-tertiary-container: #625047;--tertiary-fixed: #fae0d5;--tertiary-fixed-dim: #ebd2c7;--on-tertiary-fixed: #4e3e36;--on-tertiary-fixed-variant: #6c5951;--error: #a64542;--error-dim: #4e0309;--on-error: #ffffff;--error-container: #fe8983;--on-error-container: #752121;--surface-tint: var(--primary);--font-brand: "DM Sans", system-ui, -apple-system, sans-serif;--font-headline: "DM Sans", system-ui, -apple-system, sans-serif;--font-body: "Manrope", system-ui, -apple-system, sans-serif;--font-label: "Manrope", system-ui, -apple-system, sans-serif;--font-mono: ui-monospace, "SFMono-Regular", Menlo, monospace;--font-icon: "Material Symbols Outlined";--wordmark-tracking: .2em;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--fw-heavy: 800;--display-lg-size: 3rem;--display-lg-lh: 1.1;--display-md-size: 2.25rem;--display-md-lh: 1.15;--headline-lg-size: 2rem;--headline-lg-lh: 1.2;--headline-md-size: 1.75rem;--headline-md-lh: 1.25;--headline-sm-size: 1.5rem;--headline-sm-lh: 1.3;--title-md-size: 1.125rem;--title-md-lh: 1.4;--title-sm-size: 1rem;--title-sm-lh: 1.4;--body-lg-size: 1.125rem;--body-lg-lh: 1.55;--body-md-size: 1rem;--body-md-lh: 1.55;--body-sm-size: .875rem;--body-sm-lh: 1.5;--label-md-size: .875rem;--label-md-lh: 1.3;--label-sm-size: .75rem;--label-sm-lh: 1.3;--radius-xs: .25rem;--radius-sm: .5rem;--radius-md: .75rem;--radius-lg: 1rem;--radius-xl: 1.25rem;--radius-2xl: 1.5rem;--radius-3xl: 2rem;--radius-full: 9999px;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--shadow-xs: 0 4px 24px rgba(57, 56, 49, .04);--shadow-sm: 0 8px 24px rgba(57, 56, 49, .05);--shadow-md: 0 8px 32px rgba(57, 56, 49, .04);--shadow-lg: 0 12px 40px rgba(57, 56, 49, .08);--shadow-xl: 0 16px 48px rgba(57, 56, 49, .12);--shadow-fab: 0 12px 24px rgba(57, 56, 49, .15);--shadow-inset: inset 0 2px 4px rgba(0, 0, 0, .02);--duration-fast: .15s;--duration-base: .2s;--duration-slow: .3s;--duration-slower: .5s;--ease-standard: cubic-bezier(.2, 0, 0, 1);--ease-emphasized: cubic-bezier(.3, 0, 0, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--micro-gradient: linear-gradient(135deg, var(--primary) 0%, var(--primary-dim) 100%);--glass-bg: rgba(255, 251, 255, .8);--glass-blur: blur(20px) saturate(140%);--halo-warm: var(--surface-container);--halo-cool: var(--surface-container-low)}.duvera,.duvera *{box-sizing:border-box}.duvera{font-family:var(--font-body);font-size:var(--body-md-size);line-height:var(--body-md-lh);color:var(--on-surface);background:var(--surface);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}.duvera ::selection{background:var(--surface-variant);color:var(--on-surface)}.duvera h1{font-family:var(--font-headline);font-size:var(--headline-lg-size);line-height:var(--headline-lg-lh);font-weight:var(--fw-medium);letter-spacing:-.02em;color:var(--on-surface);margin:0}.duvera h2{font-family:var(--font-headline);font-size:var(--headline-md-size);line-height:var(--headline-md-lh);font-weight:var(--fw-medium);letter-spacing:-.015em;color:var(--on-surface);margin:0}.duvera h3{font-family:var(--font-headline);font-size:var(--headline-sm-size);line-height:var(--headline-sm-lh);font-weight:var(--fw-regular);letter-spacing:-.01em;color:var(--on-surface);margin:0}.duvera h4{font-family:var(--font-body);font-size:var(--title-md-size);line-height:var(--title-md-lh);font-weight:var(--fw-semibold);color:var(--on-surface);margin:0}.duvera-wordmark{font-family:var(--font-brand);font-weight:400;letter-spacing:var(--wordmark-tracking);color:var(--primary);text-transform:lowercase;line-height:1}.duvera p{font-family:var(--font-body);font-size:var(--body-lg-size);line-height:var(--body-lg-lh);color:var(--on-surface);text-wrap:pretty;margin:0}.duvera small,.duvera .label{font-size:var(--label-sm-size);line-height:var(--label-sm-lh);color:var(--on-surface-variant);font-weight:var(--fw-medium)}.duvera a{color:var(--primary);text-decoration:none;font-weight:var(--fw-medium);border-bottom:1px solid transparent;transition:border-color var(--duration-base) var(--ease-standard),color var(--duration-base) var(--ease-standard)}.duvera a:hover{color:var(--primary-dim);border-bottom-color:var(--primary-dim)}.duvera-btn-primary{background:var(--micro-gradient);color:var(--on-primary);font-family:var(--font-label);font-weight:var(--fw-medium);padding:var(--space-4) var(--space-8);border:0;border-radius:var(--radius-full);box-shadow:var(--shadow-lg);cursor:pointer;transition:transform var(--duration-base) var(--ease-standard),box-shadow var(--duration-base) var(--ease-standard),opacity var(--duration-base) var(--ease-standard)}.duvera-btn-primary:hover{box-shadow:var(--shadow-xl);transform:translateY(-1px)}.duvera-btn-primary:active{transform:scale(.98)}.duvera .icon,.material-symbols-outlined{font-family:var(--font-icon);font-weight:400;font-style:normal;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased;font-variation-settings:"FILL" 0,"wght" 300,"GRAD" 0,"opsz" 24}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:var(--surface);color:var(--on-surface);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit}img{display:block;max-width:100%}button{font-family:inherit}.halos{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;overflow:hidden;pointer-events:none}.halos:before,.halos:after{content:"";position:absolute;border-radius:var(--radius-full);filter:blur(120px);opacity:.55}.halos:before{width:46rem;height:46rem;top:-16rem;right:-10rem;background:var(--tertiary-container)}.halos:after{width:40rem;height:40rem;bottom:-18rem;left:-12rem;background:var(--primary-container);opacity:.4}.container{width:100%;max-width:72rem;margin:0 auto;padding:0 var(--space-6)}.container-prose{width:100%;max-width:44rem;margin:0 auto;padding:0 var(--space-6)}.section{padding:var(--space-16) 0}.eyebrow{font-family:var(--font-label);font-size:var(--label-sm-size);letter-spacing:.16em;text-transform:uppercase;font-weight:var(--fw-semibold);color:var(--on-surface-variant)}.wordmark{font-family:var(--font-brand);font-weight:400;letter-spacing:var(--wordmark-tracking);color:var(--primary);text-transform:lowercase;line-height:1;text-decoration:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-family:var(--font-label);font-weight:var(--fw-semibold);font-size:var(--label-md-size);border:0;cursor:pointer;border-radius:var(--radius-full);padding:var(--space-4) var(--space-8);text-decoration:none;transition:transform var(--duration-base) var(--ease-standard),box-shadow var(--duration-base) var(--ease-standard),background var(--duration-base) var(--ease-standard),color var(--duration-base) var(--ease-standard)}.btn-primary{background:var(--micro-gradient);color:var(--on-primary);box-shadow:var(--shadow-lg)}.btn-primary:hover{box-shadow:var(--shadow-xl);transform:translateY(-1px)}.btn-primary:active{transform:scale(.98)}.btn-ghost{background:var(--surface-container);color:var(--on-surface)}.btn-ghost:hover{background:var(--surface-container-high)}.btn-text{background:transparent;color:var(--primary);padding:var(--space-2) var(--space-3)}.btn-text:hover{color:var(--primary-dim)}.btn:disabled{opacity:.55;cursor:default;transform:none;box-shadow:none}.material-symbols-outlined{font-family:var(--font-icon);font-weight:400;font-style:normal;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;direction:ltr;-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased;font-variation-settings:"FILL" 0,"wght" 300,"GRAD" 0,"opsz" 24}.site-header{position:sticky;top:0;z-index:50;background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur)}.site-header .bar{display:flex;align-items:center;justify-content:space-between;height:4.5rem}.site-header .wordmark{font-size:1.5rem}.site-header nav{display:flex;align-items:center;gap:var(--space-2)}.hero{position:relative;padding-top:var(--space-12);padding-bottom:var(--space-12)}.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:var(--space-12);align-items:center}.hero h1{font-family:var(--font-headline);font-weight:var(--fw-medium);font-size:clamp(2.25rem,5vw,3.5rem);line-height:1.08;letter-spacing:-.025em;margin:var(--space-4) 0 var(--space-5);color:var(--on-surface);text-wrap:balance}.hero p.lede{font-size:var(--body-lg-size);line-height:var(--body-lg-lh);color:var(--on-surface-variant);max-width:34rem;margin:0 0 var(--space-8)}.hero-cta{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap}.hero-meta{display:flex;gap:var(--space-8);margin-top:var(--space-10)}.hero-meta .stat{display:flex;flex-direction:column;gap:2px}.hero-meta .stat b{font-family:var(--font-headline);font-size:1.75rem;font-weight:var(--fw-semibold);color:var(--primary)}.hero-meta .stat span{font-size:var(--label-sm-size);letter-spacing:.08em;text-transform:uppercase;color:var(--on-surface-variant)}.cover-stack{position:relative;height:26rem;display:flex;align-items:center;justify-content:center}.cover-stack img{position:absolute;width:14rem;border-radius:var(--radius-md);box-shadow:var(--shadow-xl);background:var(--surface-container)}.cover-stack img:nth-child(1){transform:rotate(-8deg) translate(-5.5rem);z-index:1;opacity:.95}.cover-stack img:nth-child(2){transform:rotate(-1deg) translateY(-1rem);z-index:3}.cover-stack img:nth-child(3){transform:rotate(7deg) translate(5.5rem);z-index:2;opacity:.97}.showcase-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6)}.tile{background:var(--surface-container);border-radius:var(--radius-2xl);padding:var(--space-8);box-shadow:var(--shadow-xs)}.tile.feature{background:var(--tertiary-container);color:var(--on-tertiary-container);grid-column:span 1}.tile .icon-well{width:3rem;height:3rem;border-radius:var(--radius-lg);display:grid;place-items:center;background:var(--surface);margin-bottom:var(--space-5);color:var(--primary)}.tile.feature .icon-well{background:#ffffff80;color:var(--tertiary)}.tile h3{font-family:var(--font-headline);font-size:var(--headline-sm-size);font-weight:var(--fw-medium);margin:0 0 var(--space-2);letter-spacing:-.01em}.tile p{color:var(--on-surface-variant);margin:0;font-size:var(--body-md-size);line-height:var(--body-md-lh)}.tile.feature p{color:var(--on-tertiary-container)}.cat-head{display:flex;align-items:end;justify-content:space-between;gap:var(--space-6);margin-bottom:var(--space-10);flex-wrap:wrap}.cat-head h2{font-family:var(--font-headline);font-weight:var(--fw-medium);font-size:var(--headline-lg-size);letter-spacing:-.02em;margin:var(--space-2) 0 0}.search{position:relative;display:flex;align-items:center}.search .material-symbols-outlined{position:absolute;left:var(--space-4);color:var(--on-surface-variant);font-size:20px;pointer-events:none}.search input{font-family:var(--font-body);font-size:var(--body-md-size);color:var(--on-surface);background:var(--surface-container-high);border:0;border-radius:var(--radius-full);padding:var(--space-3) var(--space-5) var(--space-3) var(--space-10);width:18rem;max-width:100%;box-shadow:var(--shadow-inset);transition:background var(--duration-base) var(--ease-standard)}.search input:focus{outline:none;background:var(--surface-container-highest)}.search input::placeholder{color:var(--on-surface-variant)}.book-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-8) var(--space-6)}.book-card{display:flex;flex-direction:column;gap:var(--space-3);text-align:left;background:none;border:0;padding:0;cursor:pointer}.book-card .cover-wrap{position:relative;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);aspect-ratio:2 / 3;background:var(--surface-container);transition:transform var(--duration-slow) var(--ease-standard),box-shadow var(--duration-slow) var(--ease-standard)}.book-card:hover .cover-wrap{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.book-card .cover-wrap img{width:100%;height:100%;object-fit:cover}.book-card .badge{position:absolute;top:var(--space-3);right:var(--space-3);display:inline-flex;align-items:center;gap:4px;background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);color:var(--on-surface-variant);border-radius:var(--radius-full);font-size:var(--label-sm-size);font-weight:var(--fw-medium);padding:4px 10px}.book-card .badge.owned{color:var(--primary)}.book-card .badge .material-symbols-outlined{font-size:14px}.book-card h3{font-family:var(--font-headline);font-size:var(--title-sm-size);font-weight:var(--fw-medium);line-height:1.3;margin:0;letter-spacing:-.01em}.book-card .desc{font-size:var(--body-sm-size);color:var(--on-surface-variant);line-height:1.45;margin:0}.empty{text-align:center;color:var(--on-surface-variant);padding:var(--space-16) 0}.site-footer{background:var(--surface-container-low);margin-top:var(--space-16);padding:var(--space-12) 0}.site-footer .cols{display:flex;justify-content:space-between;gap:var(--space-8);flex-wrap:wrap}.site-footer .wordmark{font-size:1.25rem;margin-bottom:var(--space-3);display:inline-block}.site-footer p{color:var(--on-surface-variant);font-size:var(--body-sm-size);max-width:22rem;margin:0}.footer-links{display:flex;flex-wrap:wrap;gap:var(--space-3) var(--space-6)}.footer-links a{color:var(--on-surface-variant);text-decoration:none;font-size:var(--body-sm-size);transition:color var(--duration-base) var(--ease-standard)}.footer-links a:hover{color:var(--primary)}.site-footer .legal{margin-top:var(--space-8);color:var(--on-surface-variant);font-size:var(--label-sm-size)}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:var(--space-6);background:#0f0e0c52;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:fade var(--duration-base) var(--ease-out)}.dialog{width:100%;max-width:27rem;background:var(--surface);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl);padding:var(--space-8);position:relative;animation:rise var(--duration-slow) var(--ease-emphasized)}.dialog h2{font-family:var(--font-headline);font-weight:var(--fw-medium);font-size:var(--headline-sm-size);margin:0 0 var(--space-2);letter-spacing:-.01em}.dialog p{color:var(--on-surface-variant);margin:0 0 var(--space-6);line-height:var(--body-md-lh)}.dialog .close{position:absolute;top:var(--space-5);right:var(--space-5);background:none;border:0;cursor:pointer;color:var(--on-surface-variant);display:grid;place-items:center}.field{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-6)}.field label{font-size:var(--label-md-size);font-weight:var(--fw-medium);color:var(--on-surface)}.field input{font-family:var(--font-body);font-size:var(--body-md-size);color:var(--on-surface);background:var(--surface-container-high);border:0;border-radius:var(--radius-md);padding:var(--space-4);box-shadow:var(--shadow-inset)}.field input:focus{outline:none;background:var(--surface-container-highest)}.dialog .btn-primary{width:100%}.note{font-size:var(--body-sm-size);color:var(--on-surface-variant);margin-top:var(--space-4);text-align:center}.note.error{color:var(--error)}.confirm{text-align:center}.confirm .check{width:3.5rem;height:3.5rem;border-radius:var(--radius-full);background:var(--tertiary-container);color:var(--tertiary);display:grid;place-items:center;margin:0 auto var(--space-5)}.confirm .check .material-symbols-outlined{font-size:32px}.reader{min-height:100vh;background:var(--surface)}.reader-bar{position:sticky;top:0;z-index:40;background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);height:4rem}.reader-bar .title{font-family:var(--font-headline);font-weight:var(--fw-medium);font-size:var(--title-sm-size);letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toggle{display:inline-flex;background:var(--surface-container-high);border-radius:var(--radius-full);padding:3px}.toggle button{border:0;background:transparent;cursor:pointer;border-radius:var(--radius-full);padding:var(--space-2) var(--space-4);font-size:var(--label-md-size);font-weight:var(--fw-medium);color:var(--on-surface-variant);transition:all var(--duration-base) var(--ease-standard)}.toggle button[aria-pressed=true]{background:var(--surface);color:var(--primary);box-shadow:var(--shadow-xs)}.reading{max-width:40rem;margin:0 auto;padding:var(--space-12) var(--space-6) var(--space-16);font-family:var(--font-body);font-size:var(--body-lg-size);line-height:1.75;color:var(--on-surface)}.reading :is(h1,h2,h3){font-family:var(--font-headline);font-weight:var(--fw-medium);letter-spacing:-.015em;color:var(--on-surface);line-height:1.25}.reading h1{font-size:var(--headline-md-size);margin:var(--space-12) 0 var(--space-4)}.reading h2{font-size:var(--headline-sm-size);margin:var(--space-10) 0 var(--space-4)}.reading h3{font-size:var(--title-md-size);margin:var(--space-8) 0 var(--space-3)}.reading p{margin:0 0 var(--space-5);text-wrap:pretty}.reading blockquote{margin:var(--space-6) 0;padding:var(--space-2) var(--space-6);color:var(--on-surface-variant);border-left:3px solid var(--tertiary-fixed-dim);font-style:italic}.reading hr{border:0;height:1px;background:var(--outline-variant);opacity:.5;margin:var(--space-10) auto;width:40%}.reading em{font-style:italic}.state-center{min-height:60vh;display:grid;place-items:center;text-align:center}.state-center .inner{max-width:26rem}.state-center h2{font-family:var(--font-headline);font-weight:var(--fw-medium);margin:0 0 var(--space-3)}.state-center p{color:var(--on-surface-variant);margin:0 0 var(--space-6)}.policy{padding:var(--space-12) 0 var(--space-16)}.policy h1{font-family:var(--font-headline);font-weight:var(--fw-medium);font-size:var(--headline-lg-size);letter-spacing:-.02em;margin:0 0 var(--space-2)}.policy .updated{color:var(--on-surface-variant);font-size:var(--label-md-size);margin:0 0 var(--space-8)}.policy h2{font-family:var(--font-headline);font-weight:var(--fw-medium);font-size:var(--headline-sm-size);margin:var(--space-10) 0 var(--space-3);letter-spacing:-.01em}.policy h3{font-size:var(--title-md-size);font-weight:var(--fw-semibold);margin:var(--space-6) 0 var(--space-2)}.policy p,.policy li{color:var(--on-surface);line-height:1.65}.policy ul,.policy ol{padding-left:var(--space-6)}.policy li{margin-bottom:var(--space-2)}.policy .callout{background:var(--surface-container);border-radius:var(--radius-lg);padding:var(--space-5) var(--space-6);margin:var(--space-6) 0}.policy .callout p{color:var(--on-surface-variant);margin:0}.policy a{color:var(--primary)}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes riseup{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.reveal{opacity:0;animation:riseup var(--duration-slower) var(--ease-emphasized) forwards}.reveal.d1{animation-delay:.05s}.reveal.d2{animation-delay:.13s}.reveal.d3{animation-delay:.21s}.reveal.d4{animation-delay:.29s}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto}.reveal{opacity:1}}@media(max-width:56rem){.hero-grid{grid-template-columns:1fr;gap:var(--space-10)}.cover-stack{height:22rem;order:-1}.showcase-grid{grid-template-columns:1fr}.book-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:34rem){.container,.container-prose{padding:0 var(--space-5)}.hero-meta{gap:var(--space-6)}.book-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-6) var(--space-4)}.site-header .wordmark{font-size:1.3rem}}
