:root{--ink: oklch(18% .03 240);--muted: oklch(38% .04 230);--paper: oklch(97% .01 120);--surface: oklch(100% 0 0);--sea: oklch(43% .13 218);--sea-dark: oklch(28% .09 225);--foam: oklch(92% .05 190);--door: oklch(45% .19 29);--forest: oklch(24% .07 150);--light: oklch(84% .12 86);--ring: oklch(68% .18 45);--shadow: 0 24px 70px oklch(18% .03 240 / 18%);font-family:Georgia,Times New Roman,serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:radial-gradient(circle at top left,oklch(88% .08 190 / 45%),transparent 34rem),linear-gradient(140deg,#f4f6ef,#f2e6d6);line-height:1.65}body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.18;background-image:linear-gradient(90deg,oklch(20% .02 240 / 6%) 1px,transparent 1px),linear-gradient(oklch(20% .02 240 / 5%) 1px,transparent 1px);background-size:48px 48px}a{color:inherit}img{max-width:100%;display:block}:focus-visible{outline:3px solid var(--ring);outline-offset:4px}.skip-link{position:absolute;left:1rem;top:-10rem;z-index:10;padding:.75rem 1rem;background:var(--ink);color:#fff}.skip-link:focus{top:1rem}.shell{width:min(1120px,calc(100% - 2rem));margin-inline:auto}.site-header{position:sticky;top:0;z-index:5;backdrop-filter:blur(18px);background:#faf9f1d1;border-bottom:1px solid oklch(30% .03 230 / 12%)}.nav{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:1rem 0}.brand{font-weight:800;text-decoration:none;letter-spacing:-.02em}.nav-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.4rem 1rem;font-size:.95rem}.nav-links a,.text-link{text-decoration-thickness:.08em;text-underline-offset:.25em}.hero,.book-detail{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.8fr);align-items:center;gap:clamp(2rem,6vw,5rem);padding:clamp(4rem,10vw,8rem) 0}.hero h1,.page-hero h1,.book-detail h1{max-width:11ch;margin:0;font-size:clamp(3rem,10vw,5.8rem);line-height:.92;letter-spacing:-.04em;text-wrap:balance}.hero p,.page-hero p,.book-detail-copy>p,.intro-panel p{max-width:66ch;font-size:clamp(1.05rem,2vw,1.25rem);color:var(--muted)}.kicker,.scene-number{margin:0 0 .65rem;font:700 .78rem/1.2 ui-sans-serif,system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--door)}.actions,.tag-row{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.5rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:3rem;padding:.8rem 1.1rem;border:1px solid var(--ink);border-radius:999px;text-decoration:none;font-weight:800;transition:transform .16s cubic-bezier(.23,1,.32,1),background .16s ease,color .16s ease}.button:active{transform:scale(.97)}.button.primary{background:var(--ink);color:#fff}.button.secondary{background:transparent}.hero-stack{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:0}.hero-stack img{border-radius:1rem;box-shadow:var(--shadow);transform:rotate(-5deg)}.hero-stack img+img{margin-left:-28%;transform:translateY(12%) rotate(6deg)}.intro-panel,.contact-panel{padding:clamp(1.5rem,4vw,2.5rem);border:1px solid oklch(30% .03 230 / 14%);border-radius:1.5rem;background:#ffffffb8;box-shadow:0 14px 44px #08182217}.intro-panel h2,.section-heading h2,.book-scene h2{margin:0;font-size:clamp(2rem,5vw,3.8rem);line-height:1;letter-spacing:-.035em;text-wrap:balance}.scene-list{display:grid;gap:2rem;padding:4rem 0}.book-scene{position:relative;display:grid;grid-template-columns:minmax(280px,.95fr) minmax(0,1fr);gap:clamp(1.5rem,5vw,4rem);align-items:center;overflow:hidden;min-height:420px;padding:clamp(1.5rem,5vw,3rem);border-radius:2rem;color:#fff;box-shadow:var(--shadow)}.book-scene.compact{margin:2rem 0 4rem}.scene-sea{background:linear-gradient(145deg,var(--sea-dark),var(--sea))}.scene-threshold{background:linear-gradient(145deg,oklch(16% .05 150),var(--forest) 58%,oklch(36% .12 36))}.scene-copy{position:relative;z-index:2}.scene-copy p{color:#f5f2e3e0}.scene-copy .kicker{color:oklch(91% .1 84)}.scene-art{position:relative;min-height:320px;isolation:isolate}.sun-orb{position:absolute;width:9rem;aspect-ratio:1;left:18%;top:5%;border-radius:50%;background:radial-gradient(circle,oklch(92% .12 86),oklch(76% .1 68 / 40%) 60%,transparent 70%)}.wave{position:absolute;left:-15%;width:130%;height:42%;border-radius:50%;background:#91e2dc6b;animation:drift 8s cubic-bezier(.23,1,.32,1) infinite alternate}.wave-one{bottom:10%}.wave-two{bottom:0;animation-delay:-2s;opacity:.65}.wave-three{bottom:-13%;animation-delay:-5s;opacity:.45}.turtle-shell{position:absolute;width:8rem;height:5rem;left:46%;bottom:24%;border-radius:60% 60% 40% 40%;background:radial-gradient(circle at 48% 42%,#356c38,oklch(27% .08 150));box-shadow:inset 0 0 0 .5rem #9ab5803d;animation:turtle 7s ease-in-out infinite alternate}.forest-layer{position:absolute;inset:0;background:repeating-linear-gradient(86deg,transparent 0 20px,oklch(12% .04 145 / 72%) 21px 28px)}.forest-layer.front{transform:translateY(3rem) scale(1.08);opacity:.75}.forest-layer.back{opacity:.42;filter:blur(2px)}.red-door{position:absolute;left:38%;bottom:10%;width:8rem;height:14rem;border-radius:4rem 4rem .4rem .4rem;background:linear-gradient(90deg,oklch(32% .15 28),var(--door),oklch(58% .2 32));box-shadow:0 0 60px #e6590973;animation:doorPulse 4.8s ease-in-out infinite}.light-beam{position:absolute;inset:18% 8% 0 36%;background:linear-gradient(100deg,oklch(88% .16 86 / 0),oklch(90% .15 86 / 40%),transparent 62%);clip-path:polygon(24% 0,100% 100%,0 100%);animation:beam 5.5s ease-in-out infinite alternate}.page-hero{padding:clamp(3rem,8vw,6rem) 0 2rem}.compact-hero h1{max-width:16ch}.book-list,.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;padding:2rem 0 5rem}.book-card{display:grid;grid-template-columns:170px 1fr;gap:1.25rem;padding:1rem;border:1px solid oklch(30% .03 230 / 14%);border-radius:1.5rem;background:#ffffffc2;box-shadow:0 12px 36px #08182214}.book-card img,.book-detail-cover img{width:100%;border-radius:1rem;box-shadow:0 18px 44px #020f193d}.book-card h2{margin:0;line-height:1.1}.book-card p{color:var(--muted)}.meta-list{display:flex;flex-wrap:wrap;gap:.45rem;padding:0;margin:1rem 0 0;list-style:none}.meta-list li,.tag-row span{padding:.35rem .65rem;border-radius:999px;background:#efe4c7;font:700 .82rem/1.2 ui-sans-serif,system-ui,sans-serif}.data-sheet{display:grid;gap:.8rem;margin:1.5rem 0}.data-sheet div{display:grid;grid-template-columns:8rem 1fr;gap:1rem;padding-bottom:.8rem;border-bottom:1px solid oklch(30% .03 230 / 13%)}.data-sheet dt{font-weight:800}.data-sheet dd{margin:0;color:var(--muted)}.storyboard-section{width:min(1180px,calc(100% - 2rem));margin:0 auto;padding:2rem 0 5rem}.section-heading{margin-bottom:1.5rem}.section-heading p{max-width:62ch;color:var(--muted)}.storyboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.story-card{overflow:hidden;border:1px solid oklch(30% .03 230 / 14%);border-radius:1.35rem;background:var(--surface);box-shadow:0 12px 34px #08182214;transition:transform .18s cubic-bezier(.23,1,.32,1),box-shadow .18s ease}.story-card:focus-visible,.story-card:hover{transform:translateY(-4px);box-shadow:0 20px 50px #08182224}.story-card img,.synthetic-frame{width:100%;aspect-ratio:4 / 3;object-fit:cover}.synthetic-frame{display:grid;place-items:center;background:radial-gradient(circle at 30% 20%,var(--foam),transparent 36%),linear-gradient(145deg,var(--sea),var(--sea-dark));color:#fff;font-size:4rem;font-weight:900}.story-card-copy{padding:1rem}.story-card-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.story-card h3{margin:0;font-size:1.35rem;line-height:1.1}.story-card p{color:var(--muted)}.story-meta{display:flex;flex-wrap:wrap;gap:.4rem;padding:0;margin:.85rem 0;list-style:none}.story-meta li{padding:.28rem .55rem;border-radius:999px;background:#efe4c7b3;color:var(--muted);font:700 .74rem/1.2 ui-sans-serif,system-ui,sans-serif}.quote-overlay{margin:1rem 0 0;padding:.85rem;border-left:4px solid var(--door);border-radius:.85rem;background:linear-gradient(135deg,#ffffffd6,#bff0ec94)}.quote-overlay p{margin:0;color:var(--ink)}.contact-panel h2{margin-top:0}.site-footer{display:grid;gap:1rem;margin-top:3rem;padding:2.5rem 0 3rem;border-top:1px solid oklch(30% .03 230 / 12%);color:var(--muted);font-size:.95rem}.footer-main{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem}.footer-brand{margin:0;font-family:Playfair Display,Georgia,serif;font-weight:700;font-size:1.2rem;color:var(--ink)}.footer-nav{display:flex;flex-wrap:wrap;gap:1.25rem}.footer-nav a{text-underline-offset:.25em}.footer-copy{margin:0;font-size:.85rem}.author-bio{max-width:68ch;display:grid;gap:1rem;padding:0 0 2rem}.author-bio p{color:var(--muted);font-size:clamp(1.02rem,2vw,1.18rem)}.author-bio strong{color:var(--ink)}.fb-link{display:inline-flex;align-items:center;gap:.5rem;margin-top:1rem;padding:.6rem 1.05rem;border-radius:999px;background:#1877f2;color:#fff;text-decoration:none;font:700 .9rem/1 ui-sans-serif,system-ui,sans-serif;transition:transform .15s ease,background .15s ease}.fb-link svg{flex:none}.fb-link:active{transform:scale(.97)}@media(hover:hover){.fb-link:hover{background:#0f63d6;transform:translateY(-1px)}}.fb-link--sm{margin-top:.85rem;padding:.4rem .85rem;font-size:.82rem;background:transparent;color:#1877f2;border:1px solid currentColor}@media(hover:hover){.fb-link--sm:hover{background:#1877f21a;color:#0f63d6}}.fb-pages{list-style:none;padding:0;margin:.25rem 0 0;display:grid;gap:.6rem}.fb-pages .fb-link{margin-top:0}.fb-feed{padding:1rem 0 4rem}.fb-feed-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;flex-wrap:wrap}.fb-feed-head .fb-link--sm{margin-top:0}.fb-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem;margin-top:1.5rem}.fb-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid oklch(30% .03 230 / 12%);border-radius:1.1rem;background:var(--surface);box-shadow:0 12px 34px #08182214;text-decoration:none;color:inherit;transition:transform .18s cubic-bezier(.23,1,.32,1),box-shadow .18s ease}.fb-card:hover{transform:translateY(-4px);box-shadow:0 22px 52px #08182226}.fb-card-media{position:relative;aspect-ratio:1 / 1;background:#e7e5d6}.fb-card-media img{width:100%;height:100%;object-fit:cover}.fb-card-media--empty{width:100%;height:100%;background:radial-gradient(circle at 30% 25%,var(--foam),transparent 45%),linear-gradient(145deg,var(--sea),var(--sea-dark))}.fb-tag{position:absolute;top:.6rem;left:.6rem;padding:.22rem .6rem;border-radius:999px;background:#05131dd1;color:#fff;font:700 .66rem/1.2 ui-sans-serif,system-ui,sans-serif;letter-spacing:.06em;text-transform:uppercase;backdrop-filter:blur(4px)}.fb-tag--reel{background:#d42426cc}.fb-tag--video{background:#1877f2cc}.fb-card-body{display:flex;flex-direction:column;gap:.65rem;padding:.95rem 1.05rem 1.05rem;flex:1}.fb-card-text{margin:0;font-size:.95rem;line-height:1.45;color:var(--ink);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.fb-card-meta{margin-top:auto;display:flex;flex-wrap:wrap;justify-content:space-between;gap:.3rem;font:700 .78rem/1.3 ui-sans-serif,system-ui,sans-serif;color:var(--muted)}.fb-card-cta{color:#1877f2}.cookie-banner{position:fixed;left:50%;bottom:clamp(.75rem,2vw,1.5rem);transform:translate(-50%);z-index:50;width:min(640px,calc(100% - 1.5rem));display:flex;flex-wrap:wrap;align-items:center;gap:.85rem 1.25rem;padding:1.1rem 1.3rem;border-radius:1.1rem;background:linear-gradient(150deg,var(--ink),oklch(26% .05 250));color:#ecebe4;box-shadow:0 22px 60px #05131d61;animation:cookie-in .36s cubic-bezier(.22,1,.36,1)}.cookie-banner[hidden]{display:none}@keyframes cookie-in{0%{opacity:0;transform:translate(-50%,1rem)}to{opacity:1;transform:translate(-50%)}}.cookie-text{flex:1 1 15rem;margin:0;font-size:.9rem;line-height:1.5;color:#dfded7eb}.cookie-text strong{color:#fff}.cookie-text a{color:oklch(86% .11 70);text-underline-offset:.2em}.cookie-actions{display:flex;gap:.6rem;margin-left:auto}.cookie-btn{min-height:2.6rem;padding:.5rem 1.2rem;border-radius:999px;border:1px solid transparent;font:700 .9rem/1 ui-sans-serif,system-ui,sans-serif;cursor:pointer;transition:transform .15s ease,background .15s ease,opacity .15s ease}.cookie-btn:active{transform:scale(.97)}.cookie-btn--solid{background:#fff;color:var(--ink)}.cookie-btn--ghost{background:transparent;color:#fff;border-color:#ffffff73}@media(hover:hover){.cookie-btn--solid:hover{opacity:.88}.cookie-btn--ghost:hover{background:#ffffff24}}@media(max-width:560px){.cookie-banner{flex-direction:column;align-items:stretch;gap:.85rem}.cookie-text{flex:0 0 auto;font-size:.88rem}.cookie-actions{margin-left:0}.cookie-actions .cookie-btn{flex:1}}@media(prefers-reduced-motion:reduce){.cookie-banner{animation:none}}.legal{max-width:70ch;padding:0 0 4rem}.legal h2{margin:2rem 0 .5rem;font-family:Playfair Display,Georgia,serif;font-size:clamp(1.3rem,3vw,1.7rem)}.legal p,.legal li{color:var(--muted)}.legal ul{padding-left:1.2rem}.hero h1,.page-hero h1,.book-detail h1,.home-hero h1,.intro-panel h2,.section-heading h2,.book-scene h2,.world-card h2,.hub-card h2,.home-about h2,.cta-band h2,.buy-section h2{font-family:Playfair Display,Georgia,serif;font-weight:700}.home-hero{display:grid;justify-items:center;text-align:center;gap:1.25rem;padding:clamp(3.5rem,9vw,7rem) 0 clamp(2rem,5vw,3.5rem)}.home-hero h1{max-width:16ch;font-size:clamp(2.6rem,8vw,5.2rem);line-height:1;letter-spacing:-.03em;text-wrap:balance}.home-lede{max-width:60ch;font-size:clamp(1.05rem,2.2vw,1.3rem);color:var(--muted)}.home-covers{display:flex;justify-content:center;gap:0;margin-top:1.5rem}.home-covers img{width:clamp(150px,26vw,240px);border-radius:.6rem;box-shadow:var(--shadow)}.home-covers img.mood-sea{transform:rotate(-6deg)}.home-covers img.mood-threshold{margin-left:-10%;transform:translateY(-4%) rotate(6deg)}.world-grid,.hub-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:clamp(1.5rem,4vw,2.5rem);padding:2rem 0 4rem}.world-card,.hub-card{display:grid;grid-template-columns:minmax(140px,.8fr) 1.2fr;gap:clamp(1.25rem,3vw,2rem);align-items:center;padding:clamp(1.25rem,3vw,2rem);border-radius:1.75rem;border:1px solid oklch(30% .03 230 / 12%);box-shadow:0 18px 50px #0818221a;transition:transform .2s cubic-bezier(.23,1,.32,1),box-shadow .2s ease}.world-card:hover,.hub-card:hover{transform:translateY(-4px);box-shadow:0 26px 64px #08182229}.world-card.mood-sea,.hub-card.mood-sea{background:linear-gradient(150deg,#dcf8fae5,#a7edecb3)}.world-card.mood-threshold,.hub-card.mood-threshold{background:linear-gradient(150deg,oklch(97% .02 60 / 92%),oklch(90% .06 35 / 60%))}.world-cover img,.hub-cover img{width:100%;border-radius:.8rem;box-shadow:0 18px 40px #020f1947;transition:transform .2s ease}.world-cover:hover img,.hub-cover:hover img{transform:scale(1.03)}.world-card h2,.hub-card h2{margin:.2rem 0 0;font-size:clamp(1.6rem,3.5vw,2.4rem);line-height:1.05}.world-tagline,.hub-copy p{margin:.6rem 0 0;color:var(--muted);font-size:1.05rem}.hub-soon{font-size:.95rem}.hub-card.is-soon{opacity:.92}.buy-section{padding:1rem 0 3rem}.buy-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem}.buy-group h3{margin:0 0 .85rem;font:700 .82rem/1.2 ui-sans-serif,system-ui,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.buy-list{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}.buy-link{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1.1rem;border:1px solid oklch(30% .03 230 / 16%);border-radius:.9rem;background:#ffffffc7;text-decoration:none;font-weight:700;transition:transform .15s ease,border-color .15s ease,background .15s ease}.buy-link:hover{transform:translateY(-2px);border-color:var(--ink);background:#fffffff2}.buy-link.is-primary{border-color:var(--door);background:linear-gradient(120deg,oklch(96% .05 40 / 90%),oklch(92% .08 30 / 70%))}.buy-store{display:flex;align-items:center;gap:.6rem}.buy-badge{padding:.18rem .5rem;border-radius:999px;background:var(--door);color:#fff;font:700 .66rem/1.2 ui-sans-serif,system-ui,sans-serif;letter-spacing:.06em;text-transform:uppercase}.buy-price{color:var(--muted);white-space:nowrap}.buy-note{margin:1.5rem 0 0;padding:.9rem 1.1rem;border-left:3px solid var(--door);border-radius:.6rem;background:#faf1dc99;color:var(--muted);font-size:.98rem}.buy-note strong{color:var(--ink)}.nowrap{white-space:nowrap}.cta-band{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.5rem;margin:1rem auto 3rem;padding:clamp(1.5rem,4vw,2.5rem);border-radius:1.5rem;background:linear-gradient(135deg,var(--ink),oklch(28% .06 250));color:#fff}.cta-band .kicker{color:#f6b669}.cta-band h2{margin:.2rem 0;color:#fff;font-size:clamp(1.6rem,4vw,2.4rem)}.cta-band p{margin:0;color:#e7e5d6d9;max-width:48ch}.backcover{display:grid;justify-items:center;padding:0 0 4rem}.backcover img{width:min(520px,100%);border-radius:1rem;box-shadow:var(--shadow)}.book-tagline{margin:0 0 .5rem;font-family:Playfair Display,Georgia,serif;font-style:italic;font-size:clamp(1.2rem,2.6vw,1.6rem);color:var(--ink)}.home-about{display:grid;gap:.8rem;max-width:70ch;padding:2rem 0 5rem}.home-about p{color:var(--muted)}@media(max-width:780px){.world-card,.hub-card{grid-template-columns:1fr}.world-cover,.hub-cover{max-width:220px}.cta-band{flex-direction:column;align-items:flex-start}}@keyframes drift{0%{transform:translate(-3%) translateY(0)}to{transform:translate(3%) translateY(-1rem)}}@keyframes turtle{0%{transform:translate(-1rem) rotate(-2deg)}to{transform:translate(1.4rem) rotate(3deg)}}@keyframes doorPulse{0%,to{filter:brightness(1);transform:scale(1)}50%{filter:brightness(1.18);transform:scale(1.025)}}@keyframes beam{0%{opacity:.55;transform:translate(-.8rem)}to{opacity:.95;transform:translate(.8rem)}}@media(hover:hover)and (pointer:fine){.button:hover{transform:translateY(-2px)}}@media(max-width:780px){.nav{align-items:flex-start;flex-direction:column}.hero,.book-detail,.book-scene,.book-card{grid-template-columns:1fr}.hero h1,.page-hero h1,.book-detail h1{font-size:clamp(2.7rem,15vw,4.4rem)}.book-card{padding:.85rem}.book-card .cover-link{max-width:190px}.data-sheet div{grid-template-columns:1fr;gap:.15rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}}
