:root{
  --violet-deep:#2D1B4E;--violet:#5A3D7A;--violet-soft:#7A5A9D;--gold:#FFD700;--gold-soft:#FFE68A;
  --cream:#FFF8F0;--paper:#FFFFF8;--brown:#2C1810;--night:#11102A;--night-2:#181332;--blue:#9BDCF6;
  --shadow:0 26px 70px rgba(45,27,78,.14);--shadow-dark:0 30px 85px rgba(7,5,22,.38);
  --radius-xl:42px;--radius-lg:30px;--radius-md:20px;--header-h:76px;--content:1180px;--parallax:0px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 18px)}body{margin:0;background:var(--paper);color:var(--brown);font-family:"Poppins",system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.65;overflow-x:hidden}body.menu-open{overflow:hidden}img{display:block;max-width:100%}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}::selection{background:var(--gold-soft);color:var(--violet-deep)}
.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}.skip-link{position:fixed;z-index:5000;top:10px;left:10px;padding:12px 16px;border-radius:12px;background:var(--paper);color:var(--violet-deep);transform:translateY(-180%);transition:transform .2s}.skip-link:focus{transform:translateY(0)}
.scroll-progress{position:fixed;z-index:5001;top:0;left:0;width:100%;height:3px;pointer-events:none}.scroll-progress span{display:block;width:100%;height:100%;background:linear-gradient(90deg,var(--gold),#f5a7ff,var(--blue));transform:scaleX(0);transform-origin:left;box-shadow:0 0 12px rgba(255,215,0,.55)}
.site-header{position:fixed;z-index:2000;top:0;left:0;width:100%;height:var(--header-h);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,4vw,58px);color:#fff;transition:background .3s,box-shadow .3s,backdrop-filter .3s}.site-header.scrolled,.site-header.solid-header{background:rgba(24,15,48,.88);box-shadow:0 14px 38px rgba(0,0,0,.18);backdrop-filter:blur(18px)}.brand{display:inline-flex;align-items:center;gap:10px;color:inherit;font-weight:800;font-size:clamp(1.08rem,2vw,1.3rem);letter-spacing:-.035em;text-decoration:none}.brand-mark{color:var(--gold);filter:drop-shadow(0 0 8px rgba(255,215,0,.7));animation:starPulse 3.2s ease-in-out infinite}.main-navigation{display:flex;align-items:center;gap:clamp(16px,2.5vw,34px);font-size:.9rem;font-weight:500}.main-navigation>a{position:relative;text-decoration:none}.main-navigation>a::after{position:absolute;right:0;bottom:-7px;left:0;height:2px;border-radius:99px;background:var(--gold);content:"";transform:scaleX(0);transform-origin:right;transition:transform .25s}.main-navigation>a:hover::after,.main-navigation>a:focus-visible::after,.main-navigation>a.active::after{transform:scaleX(1);transform-origin:left}.language-button{display:inline-flex;align-items:center;gap:5px;min-height:42px;padding:7px 13px;border:1px solid rgba(255,255,255,.34);border-radius:999px;background:rgba(255,255,255,.09);color:#fff;cursor:pointer}.active-language{color:var(--gold);font-weight:700}.other-language{opacity:.62}.menu-button{display:none;width:48px;height:48px;border:0;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;cursor:pointer}.menu-button>span:not(.sr-only){display:block;width:21px;height:2px;margin:4px auto;border-radius:99px;background:currentColor;transition:transform .25s,opacity .25s}
.button{min-height:52px;display:inline-flex;align-items:center;justify-content:center;padding:13px 22px;border:1px solid transparent;border-radius:999px;font-size:.88rem;font-weight:700;text-align:center;text-decoration:none;transition:transform .22s,box-shadow .22s,background .22s}.button:hover{transform:translateY(-3px)}.button:focus-visible,.text-link:focus-visible,.main-navigation a:focus-visible,.language-button:focus-visible,.menu-button:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.button-gold{background:var(--gold);color:var(--violet-deep);box-shadow:0 14px 34px rgba(255,215,0,.25)}.button-gold:hover{box-shadow:0 18px 42px rgba(255,215,0,.42)}.button-glass{border-color:rgba(255,255,255,.35);background:rgba(255,255,255,.08);color:#fff;backdrop-filter:blur(9px)}.button-purple{background:var(--violet-deep);color:#fff;box-shadow:0 12px 28px rgba(45,27,78,.18)}.text-link{color:var(--violet);font-size:.76rem;font-weight:700;text-decoration:none}.text-link:hover{text-decoration:underline}.eyebrow{margin:0 0 14px;color:var(--violet-soft);font-size:.74rem;font-weight:700;letter-spacing:.18em;line-height:1.4;text-transform:uppercase}.eyebrow.light{color:var(--gold-soft)}
.section{position:relative;padding:clamp(88px,11vw,152px) max(5vw,22px)}.section-heading{max-width:760px;margin:0 auto clamp(50px,7vw,82px);text-align:center}.section-heading h2,.author-copy h2,.story-copy h2,.memory-copy h2,.mystery-copy h2,.future-flight h2,.roadmap-card h2,.contact-card h2{margin:0;color:var(--violet-deep);font-size:clamp(2.15rem,5vw,4.4rem);letter-spacing:-.055em;line-height:1.04}.section-heading>p:last-child{max-width:650px;margin:20px auto 0;color:#675852}.light-heading h2{color:#fff}.stable-line{min-height:1.4em}.stable-heading{min-height:1.08em}.stable-copy{min-height:3.25em}.stable-card-title{min-height:3.05em}.stable-card-copy{min-height:8.1em}.stable-character-copy{min-height:7.2em}.stable-book-copy{min-height:8.2em}
.hero{position:relative;min-height:100svh;display:grid;align-items:center;padding:calc(var(--header-h) + 70px) max(6vw,24px) 92px;isolation:isolate;overflow:hidden;color:#fff;background:#16112d}.hero-background{position:absolute;z-index:-4;inset:-6%;background:linear-gradient(90deg,rgba(13,9,30,.83),rgba(35,18,64,.53) 54%,rgba(11,12,37,.17)),url("assets/images/hero-forest.webp") center/cover no-repeat;transform:translate3d(0,var(--parallax),0) scale(1.08);will-change:transform}.hero-overlay{position:absolute;z-index:-2;inset:0;background:linear-gradient(to bottom,rgba(6,5,23,.16),transparent 36%,rgba(7,6,23,.8)),radial-gradient(ellipse at center,transparent 40%,rgba(6,5,20,.6) 100%)}.hero-inner{width:min(100%,var(--content));display:grid;grid-template-columns:minmax(0,1.02fr) minmax(330px,.98fr);align-items:center;gap:clamp(30px,6vw,80px);margin:0 auto}.hero-copy{max-width:680px}.hero h1{margin:0;font-size:clamp(4rem,10vw,8.7rem);font-weight:800;letter-spacing:-.075em;line-height:.88;text-shadow:0 7px 34px rgba(4,2,18,.55),0 0 60px rgba(108,77,157,.35)}.hero-tagline{max-width:650px;margin:28px 0 12px;color:var(--gold-soft);font-size:clamp(1.05rem,2.4vw,1.62rem);font-weight:600;line-height:1.4}.hero-intro{max-width:610px;margin:0;color:rgba(255,255,255,.82);font-size:clamp(.94rem,1.4vw,1.07rem)}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}.hero-note{margin:18px 0 0;color:rgba(255,255,255,.5);font-size:.76rem}.hero-visual{position:relative;margin:0;justify-self:end;width:min(100%,540px)}.hero-picture-frame{position:relative;aspect-ratio:1;overflow:hidden;border:1px solid rgba(255,255,255,.18);border-radius:44% 56% 48% 52%/52% 40% 60% 48%;box-shadow:var(--shadow-dark);animation:blobMorph 12s ease-in-out infinite}.hero-picture-frame::after{position:absolute;inset:0;background:linear-gradient(145deg,rgba(255,255,255,.18),transparent 26%,transparent 75%,rgba(255,215,0,.08));content:"";pointer-events:none}.hero-picture-frame img{width:100%;height:100%;object-fit:cover}.hero-visual figcaption{margin-top:16px;color:rgba(255,255,255,.58);font-size:.75rem;text-align:center}.moonstone-orbit{position:absolute;right:7%;bottom:9%;width:42px;height:42px;border:1px solid rgba(255,230,138,.55);border-radius:50%;box-shadow:0 0 24px rgba(255,215,0,.45);animation:orbitGlow 2.8s ease-in-out infinite}.scroll-indicator{position:absolute;z-index:4;bottom:26px;left:50%;display:grid;justify-items:center;gap:4px;color:rgba(255,255,255,.68);font-size:.69rem;letter-spacing:.14em;text-decoration:none;text-transform:uppercase;transform:translateX(-50%)}.scroll-indicator i{color:var(--gold);font-size:1.35rem;font-style:normal;animation:floatDown 1.8s ease-in-out infinite}.firefly{position:absolute;z-index:-1;top:var(--top);left:var(--left);width:var(--size);height:var(--size);border-radius:50%;background:#fff8a9;box-shadow:0 0 8px #fff8a9,0 0 18px rgba(255,215,0,.82),0 0 34px rgba(255,215,0,.34);opacity:0;animation:drift var(--duration) ease-in-out var(--delay) infinite,blink calc(var(--duration)*.48) ease-in-out var(--delay) infinite}.mist-divider{position:relative;z-index:6;height:85px;margin-top:-46px;background:linear-gradient(to bottom,transparent,rgba(255,255,248,.82) 58%,var(--paper));filter:blur(.3px);pointer-events:none}
.universe-section{background:radial-gradient(circle at 5% 14%,rgba(123,92,173,.09),transparent 25%),radial-gradient(circle at 91% 53%,rgba(255,215,0,.09),transparent 25%),var(--paper)}.places-grid{width:min(100%,var(--content));display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:0 auto}.place-card{overflow:hidden;border:1px solid rgba(90,61,122,.11);border-radius:var(--radius-lg);background:rgba(255,255,255,.78);box-shadow:var(--shadow);transition:transform .35s,box-shadow .35s}.place-card:hover{transform:translateY(-8px);box-shadow:0 30px 75px rgba(45,27,78,.19)}.place-image{aspect-ratio:1.3/1;overflow:hidden}.place-image img{width:100%;height:112%;object-fit:cover;transform:translateY(-6%);transition:transform .7s}.place-card:hover .place-image img{transform:translateY(-6%) scale(1.045)}.place-copy{position:relative;padding:29px 27px 31px}.place-index{position:absolute;top:22px;right:24px;color:rgba(90,61,122,.14);font-size:2.7rem;font-weight:800;line-height:1}.place-copy h3{position:relative;max-width:80%;margin:0 0 13px;color:var(--violet-deep);font-size:1.25rem;line-height:1.3}.place-copy p{margin:0;color:#6d5d56;font-size:.9rem}
.evolution-panel{width:min(100%,var(--content));display:grid;grid-template-columns:.78fr 1.22fr;align-items:center;gap:clamp(34px,5vw,72px);margin:clamp(66px,9vw,110px) auto 0;padding:clamp(34px,6vw,66px);border-radius:var(--radius-xl);background:radial-gradient(circle at 12% 5%,rgba(255,215,0,.15),transparent 27%),linear-gradient(135deg,#2d1b4e,#171631);color:#fff;box-shadow:var(--shadow-dark);overflow:hidden}.evolution-intro h3{margin:0 0 17px;font-size:clamp(1.8rem,3.6vw,3.2rem);letter-spacing:-.045em;line-height:1.08}.evolution-intro>p:last-child{margin:0;color:rgba(255,255,255,.72)}.evolution-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0;padding:0;list-style:none}.evolution-steps li{min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:16px 14px;border:1px solid rgba(255,255,255,.14);border-radius:24px;background:rgba(255,255,255,.055);text-align:center;transition:transform .3s,background .3s,border-color .3s}.evolution-steps li:hover{transform:translateY(-7px);border-color:rgba(255,230,138,.45);background:rgba(255,255,255,.085)}.step-picture{position:relative;width:116px;aspect-ratio:1;border-radius:26px;overflow:hidden;box-shadow:0 15px 35px rgba(0,0,0,.28)}.step-picture::after{position:absolute;inset:0;border:1px solid rgba(255,230,138,.55);border-radius:inherit;content:""}.step-picture img{width:100%;height:100%;object-fit:cover}.evolution-steps strong,.evolution-steps small{display:block}.evolution-steps strong{font-size:.84rem}.evolution-steps small{min-height:2.6em;margin-top:5px;color:rgba(255,255,255,.55);font-size:.68rem}
.characters-section{overflow:hidden;background:radial-gradient(circle at 20% 30%,rgba(103,73,147,.42),transparent 25%),radial-gradient(circle at 85% 60%,rgba(44,86,124,.35),transparent 25%),linear-gradient(145deg,#151129,#21133b 45%,#10132d);color:#fff}.stars-layer,.stars-layer::before,.stars-layer::after{position:absolute;inset:0;background-image:radial-gradient(circle,rgba(255,255,255,.8) 0 1px,transparent 1.5px),radial-gradient(circle,rgba(255,230,138,.8) 0 1px,transparent 1.5px);background-position:0 0,70px 45px;background-size:115px 115px,170px 170px;content:"";opacity:.15}.stars-layer::before{transform:translate(31px,19px) scale(.75)}.stars-layer::after{transform:translate(-18px,9px) scale(1.35);opacity:.06}.characters-grid{position:relative;z-index:2;width:min(100%,var(--content));display:grid;grid-template-columns:1fr 1fr;gap:26px;margin:0 auto}.character-card{min-height:650px;display:grid;grid-template-rows:minmax(300px,1.25fr) auto;overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-xl);background:linear-gradient(160deg,rgba(91,55,71,.86),rgba(19,13,38,.94));box-shadow:var(--shadow-dark);color:#fff;text-decoration:none;transition:transform .35s,border-color .35s}.character-card:nth-child(2){background:linear-gradient(160deg,rgba(37,65,92,.9),rgba(19,13,38,.94))}.character-card:hover{transform:translateY(-8px);border-color:rgba(255,230,138,.38)}.character-image{position:relative;display:grid;place-items:end center;overflow:hidden}.character-image::after{position:absolute;right:13%;bottom:4%;left:13%;height:15%;border-radius:50%;background:rgba(4,3,12,.36);content:"";filter:blur(22px)}.character-image img{position:relative;z-index:1;width:100%;height:110%;object-fit:cover;transform:translateY(-3%)}.character-copy{position:relative;padding:35px clamp(26px,4vw,45px) 41px;border-top:1px solid rgba(255,255,255,.09);background:rgba(10,8,24,.33);backdrop-filter:blur(12px)}.character-sign{position:absolute;top:-27px;right:35px;width:54px;height:54px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.24);border-radius:50%;background:#261a3d;color:var(--gold-soft);font-size:1.4rem;box-shadow:0 10px 35px rgba(0,0,0,.28)}.character-role{margin:0 0 8px;color:rgba(255,255,255,.52);font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.character-copy h3{margin:0;color:#fff;font-size:clamp(2.2rem,4vw,3.55rem);letter-spacing:-.05em;line-height:1}.character-traits{margin:11px 0 18px!important;color:var(--gold-soft)!important;font-size:.76rem!important;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.character-copy>p:not(.character-role):not(.character-traits){margin:0;color:rgba(255,255,255,.72);font-size:.92rem}.card-link{display:inline-block;margin-top:20px;color:var(--gold-soft);font-size:.78rem;font-weight:700}.future-characters{position:relative;z-index:2;width:min(100%,var(--content));display:flex;align-items:center;justify-content:center;gap:25px;margin:32px auto 0;padding:29px;border:1px dashed rgba(255,255,255,.24);border-radius:var(--radius-lg);background:rgba(255,255,255,.045)}.mystery-badge{flex:0 0 auto;width:68px;height:68px;display:grid;place-items:center;border:1px solid rgba(255,230,138,.32);border-radius:50%;background:radial-gradient(circle,rgba(255,215,0,.18),transparent 68%);color:var(--gold-soft);font-size:1.5rem}.future-characters h3{margin:0 0 5px;font-size:1rem}.future-characters p{margin:0;color:rgba(255,255,255,.6);font-size:.84rem}
.books-section{background:radial-gradient(circle at 75% 16%,rgba(123,92,173,.08),transparent 20%),linear-gradient(180deg,var(--paper),var(--cream))}.book-feature{width:min(100%,var(--content));display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:center;gap:clamp(48px,8vw,110px);margin:0 auto}.single-book-stage{position:relative;min-height:460px;display:grid;place-items:center;perspective:1600px;isolation:isolate}.book-shadow{position:absolute;z-index:-1;right:12%;bottom:5%;left:10%;height:13%;border-radius:50%;background:rgba(45,27,78,.2);filter:blur(30px)}.book-object{position:relative;width:min(54%,250px);transform-style:preserve-3d;transform:rotateY(calc(-8deg + var(--tilt-y,0deg))) rotateX(calc(2deg + var(--tilt-x,0deg)));animation:bookFloat 5.8s ease-in-out infinite;transition:transform .18s ease-out}.book-object img{position:relative;z-index:2;width:100%;border-radius:8px 17px 17px 8px;box-shadow:8px 12px 0 rgba(255,255,255,.55),22px 36px 70px rgba(45,27,78,.27)}.book-spine{position:absolute;z-index:1;top:2%;bottom:2%;left:-14px;width:23px;border-radius:8px 0 0 8px;background:linear-gradient(90deg,#1c1234,#5a3d7a 52%,#8a6aaa);transform:rotateY(72deg);transform-origin:right}.book-shine{position:absolute;z-index:3;inset:0;overflow:hidden;border-radius:8px 17px 17px 8px;pointer-events:none}.book-shine::before{position:absolute;top:-20%;left:-55%;width:36%;height:140%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.34),transparent);content:"";transform:rotate(12deg);animation:bookShine 5.6s ease-in-out infinite}.book-content h3{margin:20px 0 18px;color:var(--violet-deep);font-size:clamp(2.25rem,4.7vw,4.35rem);letter-spacing:-.06em;line-height:1.03}.book-content>p{margin:0;color:#665650}.status-pill{display:inline-flex;padding:7px 12px;border-radius:999px;background:rgba(90,61,122,.1);color:var(--violet);font-size:.71rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.status-pill.dark{background:rgba(255,255,255,.08);color:var(--gold-soft)}.values{display:flex;flex-wrap:wrap;gap:9px;margin:26px 0 32px}.values span{padding:7px 11px;border:1px solid rgba(90,61,122,.13);border-radius:999px;color:var(--violet-soft);font-size:.72rem;font-weight:600}.editions{display:grid;gap:13px}.edition-card{display:grid;grid-template-columns:1fr auto;align-items:center;gap:18px;padding:18px;border:1px solid rgba(90,61,122,.12);border-radius:var(--radius-md);background:#fff;box-shadow:0 12px 35px rgba(45,27,78,.07)}.edition-heading{display:flex;align-items:center;gap:12px}.edition-flag{flex:0 0 auto;width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:#f1edf6;color:var(--violet-deep);font-size:.67rem;font-weight:800}.edition-card strong,.edition-card small{display:block}.edition-card strong{color:var(--violet-deep);font-size:.88rem}.edition-card small{margin-top:3px;color:#87746b;font-size:.71rem}.edition-actions{display:grid;justify-items:end;gap:7px}.edition-card .button{min-height:44px;padding:10px 17px;font-size:.75rem}.coming-card{position:relative;width:min(100%,var(--content));min-height:390px;display:grid;align-items:center;margin:clamp(85px,11vw,145px) auto 0;padding:clamp(38px,6vw,70px);overflow:hidden;border-radius:var(--radius-xl);color:#fff;box-shadow:var(--shadow-dark);isolation:isolate}.coming-background{position:absolute;z-index:-3;inset:-8%;background:url("assets/images/coming-soon.webp") center/cover no-repeat;transform:scale(1.08) translateY(calc(var(--parallax)*-.18))}.coming-overlay{position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,rgba(18,11,38,.96),rgba(34,17,55,.75) 58%,rgba(20,13,43,.25))}.coming-content{position:relative;max-width:720px}.coming-kicker{margin:18px 0 0;color:var(--gold-soft);font-size:.82rem}.coming-content h3{max-width:650px;margin:13px 0 17px;font-size:clamp(2.1rem,5vw,4.35rem);letter-spacing:-.055em;line-height:1.05}.coming-content>p:last-of-type{max-width:590px;margin:0;color:rgba(255,255,255,.7)}.flame-symbol{position:absolute;top:10%;right:7%;bottom:auto;color:#ff9b45;font-size:3.5rem;filter:drop-shadow(0 0 30px rgba(255,112,40,.85));animation:flamePulse 2.7s ease-in-out infinite}
.treasure-teaser{background:radial-gradient(circle at 15% 20%,rgba(255,215,0,.08),transparent 22%),var(--paper)}.teaser-products{width:min(100%,var(--content));display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:0 auto}.mini-product{position:relative;overflow:hidden;border:1px solid rgba(90,61,122,.1);border-radius:28px;background:#fff;box-shadow:var(--shadow);transition:transform .3s}.mini-product:hover{transform:translateY(-7px)}.mini-product img{width:100%;aspect-ratio:1.18/1;object-fit:cover}.mini-product div{padding:22px}.mini-product span{display:inline-flex;margin-bottom:8px;padding:5px 9px;border-radius:999px;background:#f1edf6;color:var(--violet);font-size:.65rem;font-weight:700;text-transform:uppercase}.mini-product h3{margin:0;color:var(--violet-deep);font-size:1.05rem}.center-action{margin-top:38px;text-align:center}.center-action .button{width:auto}
.author-section{background:radial-gradient(circle at 83% 28%,rgba(255,215,0,.1),transparent 20%),linear-gradient(180deg,var(--paper),var(--cream))}.author-card{width:min(100%,1000px);display:grid;grid-template-columns:.95fr 1.05fr;align-items:stretch;gap:0;margin:0 auto;overflow:hidden;border:1px solid rgba(90,61,122,.1);border-radius:var(--radius-xl);background:rgba(255,255,255,.78);box-shadow:var(--shadow)}.author-image{min-height:480px;overflow:hidden}.author-image img{width:100%;height:112%;object-fit:cover;transform:translateY(-6%)}.author-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(36px,6vw,72px)}.author-copy h2{margin-bottom:20px}.author-copy>p:not(.eyebrow):not(.author-signature){margin:0;color:#665650}.author-signature{margin:22px 0 0;color:var(--violet);font-size:.9rem;font-weight:600;font-style:italic}.contact-link{display:inline-block;margin-top:22px;color:var(--violet-deep);font-size:.9rem;font-weight:700;text-decoration:none}.contact-link:hover{text-decoration:underline}.site-footer{position:relative;min-height:520px;display:flex;align-items:end;padding:80px max(5vw,22px) 38px;overflow:hidden;background:#0f1029;color:#fff;isolation:isolate}.footer-background{position:absolute;z-index:-3;inset:0;background:url("assets/images/footer.webp") center 38%/cover no-repeat}.footer-overlay{position:absolute;z-index:-2;inset:0;background:linear-gradient(to bottom,rgba(12,11,34,.1),rgba(12,11,34,.48) 42%,rgba(10,9,28,.96) 90%),radial-gradient(circle at 50% 15%,transparent,rgba(7,7,22,.3))}.footer-inner{width:min(100%,var(--content));margin:0 auto}.footer-main{display:grid;grid-template-columns:1fr auto;align-items:end;gap:30px}.footer-brand{margin-bottom:10px;font-size:1.55rem}.footer-main p{margin:0;color:rgba(255,255,255,.64);font-size:.85rem}.footer-links{display:grid;justify-items:end;gap:7px;font-size:.79rem}.footer-links a{text-decoration:none}.footer-links a:hover{color:var(--gold-soft)}.footer-links span{color:rgba(255,255,255,.5)}.footer-bottom{display:flex;justify-content:space-between;gap:25px;margin-top:28px;padding-top:24px;border-top:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.5);font-size:.73rem}.footer-bottom p{margin:0}
.butterfly-layer{position:fixed;z-index:40;inset:0;pointer-events:none;overflow:hidden}.scroll-butterfly{position:absolute;width:46px;filter:drop-shadow(0 9px 12px rgba(45,27,78,.15));opacity:.76;will-change:transform;animation:butterflyWings 1.1s ease-in-out infinite alternate}.b1{left:7%;top:25%;width:42px}.b2{right:8%;top:44%;width:50px;animation-delay:-.35s}.b3{left:13%;top:70%;width:36px;animation-delay:-.7s}.b4{right:18%;top:82%;width:32px;animation-delay:-.15s}.b5{left:47%;top:55%;width:28px;animation-delay:-.55s;opacity:.48}
.reveal{opacity:0;transform:translateY(32px) scale(.985);filter:blur(5px);transition:opacity .85s cubic-bezier(.2,.7,.2,1),transform .85s cubic-bezier(.2,.7,.2,1),filter .85s}.reveal.visible{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}.parallax-media{will-change:transform}
/* Character pages */
.character-page,.treasures-page{background:linear-gradient(180deg,#fffdf8,#fff8f0)}.character-page .site-header,.treasures-page .site-header{color:#fff}.character-follower{position:fixed;z-index:60;right:18px;top:44vh;width:105px;pointer-events:none;filter:drop-shadow(0 14px 20px rgba(45,27,78,.24));will-change:transform;transition:opacity .25s}.character-follower img{width:100%;border-radius:50%;border:2px solid rgba(255,255,255,.85)}.follower-spark{position:absolute;right:2px;top:-4px;color:var(--gold);font-size:1.3rem;animation:starPulse 2s ease-in-out infinite}.character-hero{position:relative;min-height:780px;display:grid;align-items:center;padding:calc(var(--header-h) + 70px) max(6vw,24px) 85px;overflow:hidden;isolation:isolate;color:#fff;background:#1b1436}.character-hero-bg{position:absolute;z-index:-3;inset:-6%;background:linear-gradient(90deg,rgba(15,10,35,.95),rgba(40,22,64,.67) 56%,rgba(31,17,56,.35)),url("assets/images/kiro.webp") center/cover no-repeat;filter:saturate(.8);transform:scale(1.08)}.plume-hero-bg{background:linear-gradient(90deg,rgba(12,18,38,.94),rgba(30,45,76,.68) 56%,rgba(32,38,73,.32)),url("assets/images/plume.webp") center/cover no-repeat}.character-hero::after{position:absolute;z-index:-2;inset:0;background:linear-gradient(to bottom,transparent 60%,rgba(17,16,42,.96));content:""}.character-hero-inner{width:min(100%,var(--content));display:grid;grid-template-columns:1fr .9fr;align-items:center;gap:clamp(40px,8vw,110px);margin:0 auto}.back-link{display:inline-flex;margin-bottom:24px;color:rgba(255,255,255,.7);font-size:.76rem;font-weight:600;text-decoration:none}.back-link:hover{color:var(--gold-soft)}.character-hero h1{margin:0;font-size:clamp(5rem,13vw,10rem);letter-spacing:-.08em;line-height:.86}.character-lead{max-width:590px;min-height:3.2em;margin:26px 0 0;color:rgba(255,255,255,.78);font-size:clamp(1rem,2vw,1.25rem)}.trait-pills{display:flex;flex-wrap:wrap;gap:9px;margin-top:27px}.trait-pills span{padding:8px 13px;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:rgba(255,255,255,.08);color:var(--gold-soft);font-size:.73rem;font-weight:700}.character-hero-art{position:relative;display:grid;place-items:center}.character-hero-art img{position:relative;z-index:2;width:min(100%,520px);aspect-ratio:1;object-fit:cover;border-radius:44% 56% 48% 52%/52% 40% 60% 48%;box-shadow:var(--shadow-dark);animation:blobMorph 12s ease-in-out infinite}.portrait-aura{position:absolute;z-index:1;width:78%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(255,215,0,.28),rgba(177,125,255,.08) 54%,transparent 72%);filter:blur(14px);animation:auraPulse 3.6s ease-in-out infinite}.character-story{background:var(--paper)}.character-story-grid{width:min(100%,1000px);display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,8vw,90px);align-items:start;margin:0 auto}.story-copy h2{margin-bottom:22px}.story-copy p{color:#665650}.story-panel{display:grid;gap:16px;padding:30px;border:1px solid rgba(90,61,122,.1);border-radius:32px;background:#fff;box-shadow:var(--shadow)}.info-row{display:grid;grid-template-columns:54px 1fr;gap:16px;align-items:start;padding:18px;border-radius:20px;background:#fbf8ff}.info-row>span{width:54px;height:54px;display:grid;place-items:center;border-radius:50%;background:var(--violet-deep);color:var(--gold);font-size:1.25rem}.info-row strong{display:block;color:var(--violet-deep);font-size:.9rem}.info-row p{margin:6px 0 0;color:#75645c;font-size:.82rem}.gallery-section{background:radial-gradient(circle at 10% 20%,rgba(255,215,0,.08),transparent 20%),linear-gradient(180deg,var(--cream),var(--paper))}.character-gallery{width:min(100%,var(--content));display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:0 auto}.character-gallery figure{margin:0;overflow:hidden;border:1px solid rgba(90,61,122,.1);border-radius:28px;background:#fff;box-shadow:var(--shadow);transition:transform .3s}.character-gallery figure:hover{transform:translateY(-7px)}.character-gallery img{width:100%;aspect-ratio:1;object-fit:cover}.character-gallery figcaption{padding:18px 20px 22px;color:var(--violet-deep);font-size:.8rem;font-weight:600}.evolution-mystery{background:linear-gradient(145deg,#151129,#2b1746);color:#fff}.mystery-card{width:min(100%,var(--content));display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:clamp(40px,7vw,90px);margin:0 auto}.mystery-visual{position:relative;overflow:hidden;border-radius:var(--radius-xl);box-shadow:var(--shadow-dark)}.mystery-visual img{width:100%;aspect-ratio:1.15/1;object-fit:cover}.mystery-light{position:absolute;right:26%;top:27%;width:90px;height:90px;border-radius:50%;background:radial-gradient(circle,#fff7c1,#ff9b45 35%,rgba(255,108,30,.15) 68%,transparent 72%);filter:blur(2px);animation:auraPulse 2.8s ease-in-out infinite}.mystery-copy h2{color:#fff;margin-bottom:20px}.mystery-copy>p:not(.eyebrow){color:rgba(255,255,255,.72)}.mystery-note{display:inline-flex;margin-top:16px;padding:8px 12px;border:1px solid rgba(255,255,255,.14);border-radius:999px;color:var(--gold-soft);font-size:.68rem}.moonstone-memory{background:var(--paper)}.memory-card{width:min(100%,var(--content));display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:clamp(40px,7vw,85px);margin:0 auto;padding:clamp(30px,5vw,58px);border:1px solid rgba(90,61,122,.1);border-radius:var(--radius-xl);background:#fff;box-shadow:var(--shadow)}.memory-art{overflow:hidden;border-radius:34px;box-shadow:0 20px 50px rgba(45,27,78,.16)}.memory-art img{width:100%;aspect-ratio:1;object-fit:cover}.memory-copy h2{margin-bottom:20px}.memory-copy p{color:#665650}.plume-future{background:linear-gradient(145deg,#17233f,#2d2352);color:#fff}.future-flight{position:relative;width:min(100%,930px);margin:0 auto;padding:clamp(40px,7vw,80px);overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-xl);background:radial-gradient(circle at 80% 20%,rgba(155,220,246,.22),transparent 25%),rgba(255,255,255,.04);box-shadow:var(--shadow-dark)}.future-flight h2{max-width:720px;color:#fff;margin-bottom:18px}.future-flight p:not(.eyebrow){max-width:720px;color:rgba(255,255,255,.7)}.floating-feather{position:absolute;right:8%;top:20%;color:var(--blue);font-size:5rem;filter:drop-shadow(0 0 22px rgba(155,220,246,.5));animation:featherFloat 4s ease-in-out infinite}.character-next{padding:45px max(5vw,22px);background:var(--violet-deep);color:#fff}.character-next a{width:min(100%,var(--content));display:flex;align-items:center;justify-content:space-between;gap:25px;margin:0 auto;text-decoration:none}.character-next span{color:rgba(255,255,255,.55);font-size:.76rem;text-transform:uppercase;letter-spacing:.12em}.character-next strong{color:var(--gold-soft);font-size:clamp(1.5rem,4vw,3rem)}.simple-footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:30px max(5vw,22px);background:#0f1029;color:#fff}.simple-footer p{margin:0;color:rgba(255,255,255,.55);font-size:.75rem}.simple-footer p a{color:inherit}
/* Treasures */
.treasures-hero{position:relative;min-height:620px;display:grid;align-items:center;padding:calc(var(--header-h) + 70px) max(6vw,24px) 90px;overflow:hidden;isolation:isolate;color:#fff;background:#1b1436}.treasures-sky{position:absolute;z-index:-2;inset:-6%;background:linear-gradient(90deg,rgba(18,10,38,.92),rgba(45,27,78,.62)),url("assets/images/hero-forest.webp") center/cover no-repeat;filter:hue-rotate(8deg) saturate(.82);transform:scale(1.08)}.treasures-hero::after{position:absolute;z-index:-1;inset:0;background:radial-gradient(circle at 70% 45%,rgba(255,215,0,.14),transparent 30%),linear-gradient(to bottom,transparent 55%,rgba(17,16,42,.94));content:""}.treasures-hero-inner{width:min(100%,900px);margin:0 auto;text-align:center}.light-back{justify-content:center}.treasures-hero h1{margin:0;font-size:clamp(3.4rem,9vw,7.6rem);letter-spacing:-.07em;line-height:.95}.treasures-hero p:not(.eyebrow){max-width:720px;margin:26px auto 0;color:rgba(255,255,255,.75);font-size:clamp(.98rem,2vw,1.16rem)}.concept-note{display:inline-flex;margin-top:24px;padding:8px 12px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(255,255,255,.06);color:var(--gold-soft);font-size:.68rem}.product-catalogue{background:var(--paper)}.product-grid{width:min(100%,var(--content));display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:0 auto}.product-card{overflow:hidden;border:1px solid rgba(90,61,122,.1);border-radius:30px;background:#fff;box-shadow:var(--shadow);transition:transform .3s}.product-card:hover{transform:translateY(-8px)}.product-image{position:relative;overflow:hidden}.product-image img{width:100%;aspect-ratio:1;object-fit:cover;transition:transform .6s}.product-card:hover .product-image img{transform:scale(1.035)}.product-badge{position:absolute;top:16px;left:16px;padding:6px 10px;border-radius:999px;background:rgba(255,255,248,.92);color:var(--violet-deep);font-size:.64rem;font-weight:800;text-transform:uppercase;box-shadow:0 8px 20px rgba(45,27,78,.12)}.product-badge.dream{background:rgba(255,230,138,.92)}.product-copy{padding:24px}.product-copy h3{min-height:2.8em;margin:0 0 10px;color:var(--violet-deep);font-size:1.16rem}.product-copy p{min-height:5.2em;margin:0;color:#6d5d56;font-size:.84rem}.product-meta{display:block;margin-top:16px;color:var(--violet-soft);font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.treasure-roadmap{background:linear-gradient(145deg,#17122f,#2b1747);color:#fff}.roadmap-card{width:min(100%,var(--content));display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,7vw,90px);align-items:center;margin:0 auto}.roadmap-card h2{color:#fff;margin-bottom:20px}.roadmap-card p:not(.eyebrow){color:rgba(255,255,255,.68)}.roadmap-card ol{display:grid;gap:14px;margin:0;padding:0;list-style:none}.roadmap-card li{display:grid;grid-template-columns:54px 1fr;gap:16px;align-items:center;padding:18px;border:1px solid rgba(255,255,255,.12);border-radius:20px;background:rgba(255,255,255,.05)}.roadmap-card li>span{width:54px;height:54px;display:grid;place-items:center;border-radius:50%;background:var(--gold);color:var(--violet-deep);font-weight:800}.roadmap-card strong,.roadmap-card small{display:block}.roadmap-card strong{font-size:.86rem}.roadmap-card small{margin-top:4px;color:rgba(255,255,255,.48);font-size:.7rem}.treasure-contact{background:var(--cream)}.contact-card{width:min(100%,800px);margin:0 auto;padding:clamp(40px,7vw,78px);border:1px solid rgba(90,61,122,.1);border-radius:var(--radius-xl);background:#fff;text-align:center;box-shadow:var(--shadow)}.contact-card>span{display:grid;width:68px;height:68px;place-items:center;margin:0 auto 22px;border-radius:50%;background:var(--violet-deep);color:var(--gold);font-size:1.5rem}.contact-card p{max-width:570px;margin:18px auto 28px;color:#6d5d56}.contact-card .button{width:auto}
@keyframes starPulse{0%,100%{transform:scale(1) rotate(0);opacity:.8}50%{transform:scale(1.2) rotate(14deg);opacity:1}}@keyframes floatDown{0%,100%{transform:translateY(0)}50%{transform:translateY(7px)}}@keyframes drift{0%{transform:translate(0,0) scale(.7)}30%{transform:translate(18px,-24px) scale(1)}65%{transform:translate(-14px,-42px) scale(.8)}100%{transform:translate(5px,-65px) scale(.55)}}@keyframes blink{0%,100%{opacity:.08}45%{opacity:.9}65%{opacity:.25}}@keyframes blobMorph{0%,100%{border-radius:44% 56% 48% 52%/52% 40% 60% 48%}50%{border-radius:55% 45% 58% 42%/44% 58% 42% 56%}}@keyframes orbitGlow{0%,100%{transform:scale(.9);opacity:.55}50%{transform:scale(1.14);opacity:1}}@keyframes bookFloat{0%,100%{transform:translateY(0) rotateY(calc(-8deg + var(--tilt-y,0deg))) rotateX(calc(2deg + var(--tilt-x,0deg)))}50%{transform:translateY(-8px) rotateY(calc(-4deg + var(--tilt-y,0deg))) rotateX(calc(1deg + var(--tilt-x,0deg)))}}@keyframes bookShine{0%,55%{left:-55%;opacity:0}72%{opacity:1}100%{left:125%;opacity:0}}@keyframes slowSpin{to{transform:rotate(360deg)}}@keyframes flamePulse{0%,100%{transform:scale(.9) rotate(0)}50%{transform:scale(1.08) rotate(7deg)}}@keyframes butterflyWings{from{transform:rotateY(-23deg) rotateZ(-3deg)}to{transform:rotateY(28deg) rotateZ(4deg)}}@keyframes auraPulse{0%,100%{transform:scale(.94);opacity:.65}50%{transform:scale(1.08);opacity:1}}@keyframes featherFloat{0%,100%{transform:translateY(0) rotate(-12deg)}50%{transform:translateY(20px) rotate(10deg)}}
@media(max-width:1020px){:root{--header-h:68px}.menu-button{display:block;position:relative;z-index:2002}.main-navigation{position:fixed;z-index:2001;inset:0;display:flex;flex-direction:column;justify-content:center;gap:26px;padding:90px 30px 50px;background:radial-gradient(circle at 30% 25%,rgba(103,73,147,.5),transparent 28%),rgba(16,12,38,.98);font-size:1.16rem;opacity:0;pointer-events:none;transform:translateY(-15px);transition:opacity .25s,transform .25s}.main-navigation.open{opacity:1;pointer-events:auto;transform:translateY(0)}.menu-button[aria-expanded="true"]>span:nth-of-type(2){transform:translateY(6px) rotate(45deg)}.menu-button[aria-expanded="true"]>span:nth-of-type(3){opacity:0}.menu-button[aria-expanded="true"]>span:nth-of-type(4){transform:translateY(-6px) rotate(-45deg)}.hero-inner{grid-template-columns:1fr}.hero-visual{position:absolute;z-index:-1;right:-10vw;bottom:7vh;width:min(60vw,590px);opacity:.47}.hero-copy{max-width:720px}.places-grid{grid-template-columns:1fr 1fr}.place-card:last-child{grid-column:1/-1;display:grid;grid-template-columns:.9fr 1.1fr}.evolution-panel,.book-feature,.author-card,.character-hero-inner,.memory-card,.mystery-card{grid-template-columns:1fr}.evolution-panel{gap:42px}.book-content{max-width:760px;margin:0 auto}.single-book-stage{min-height:420px}.author-image{min-height:420px}.character-hero-art{order:-1}.character-hero-art img{width:min(75vw,480px)}.character-hero-copy{text-align:center}.back-link{justify-content:center}.trait-pills{justify-content:center}.character-story-grid,.roadmap-card{grid-template-columns:1fr}.character-follower{width:84px;right:10px}.product-grid{grid-template-columns:1fr 1fr}.teaser-products{grid-template-columns:1fr 1fr}.teaser-products .mini-product:last-child{grid-column:1/-1;display:grid;grid-template-columns:.7fr 1.3fr}.treasures-hero{min-height:560px}}
@media(max-width:720px){.values{display:grid;grid-template-columns:1fr 1fr;gap:9px}.values span{min-height:36px;display:flex;align-items:center;justify-content:center;text-align:center;white-space:nowrap}.site-header{padding-inline:18px}.hero{align-content:start;min-height:790px;padding:calc(var(--header-h) + 72px) 22px 90px}.hero h1{font-size:clamp(3.6rem,18vw,5.8rem)}.hero-tagline{max-width:360px;margin-top:22px}.hero-intro{max-width:390px;font-size:.9rem}.hero-actions{align-items:stretch;flex-direction:column;max-width:355px}.button{width:100%}.hero-visual{right:-26vw;bottom:3%;width:95vw;opacity:.33}.scroll-indicator{display:none}.stable-card-title,.stable-card-copy,.stable-character-copy,.stable-book-copy,.stable-copy,.stable-line,.stable-heading{min-height:0}.places-grid,.characters-grid,.evolution-steps,.product-grid,.teaser-products,.character-gallery{grid-template-columns:1fr}.place-card:last-child{grid-column:auto;display:block}.evolution-panel{padding:36px 24px;border-radius:30px}.evolution-steps li{min-height:0;display:grid;grid-template-columns:100px 1fr;justify-items:start;text-align:left}.step-picture{width:100px}.characters-grid{gap:22px}.character-card{min-height:590px;border-radius:30px}.future-characters{align-items:center;flex-direction:column;text-align:center}.book-feature{gap:20px}.single-book-stage{min-height:380px}.book-object{width:min(52%,215px)}.edition-card{grid-template-columns:1fr}.edition-actions{width:100%;justify-items:stretch}.edition-card .button{width:100%}.edition-card .text-link{text-align:center}.coming-card{min-height:430px;padding:38px 24px}.coming-overlay{background:linear-gradient(90deg,rgba(18,11,38,.96),rgba(34,17,55,.75))}.flame-symbol{top:7%;right:8%;font-size:2.7rem}.teaser-products .mini-product:last-child{grid-column:auto;display:block}.author-card{grid-template-columns:1fr}.author-image{min-height:340px}.footer-main{grid-template-columns:1fr;justify-items:center;text-align:center}.footer-links{justify-items:center}.footer-bottom{align-items:center;flex-direction:column;text-align:center}.character-hero{min-height:760px;padding:calc(var(--header-h) + 45px) 20px 65px}.character-hero h1{font-size:clamp(4.2rem,22vw,7rem)}.character-hero-art img{width:min(78vw,390px)}.character-story-grid{gap:38px}.story-panel{padding:20px}.info-row{grid-template-columns:48px 1fr;padding:15px}.info-row>span{width:48px;height:48px}.mystery-card,.memory-card{gap:32px}.character-follower{width:65px;right:5px;top:56vh;opacity:.78}.simple-footer{align-items:center;flex-direction:column;text-align:center}.product-copy h3,.product-copy p{min-height:0}.roadmap-card{gap:35px}.contact-card .button{width:100%}.treasures-hero{min-height:610px;padding-inline:20px}.treasures-hero h1{font-size:clamp(3rem,17vw,5.2rem)}.butterfly-layer .b5{display:none}}
@media(max-width:430px){.section{padding-inline:17px}.place-copy{padding-inline:22px}.single-book-stage{min-height:340px}.character-image img{height:105%}.evolution-steps li{grid-template-columns:82px 1fr}.step-picture{width:82px}.character-gallery figcaption{font-size:.76rem}.character-follower{display:none}.scroll-butterfly{width:34px!important;opacity:.56}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none;filter:none}.hero-background{transform:scale(1.08)}.butterfly-layer,.character-follower,.leaf-layer,.falling-leaf{display:none}.book-object{transform:rotateY(-5deg)}}

.book-content,.single-book-stage,.evolution-intro,.evolution-steps,.character-copy,.place-copy{min-width:0}
.language-switching *{transition:none!important}

/* Feuilles qui tombent */
.leaf-layer{position:fixed;z-index:40;inset:0;pointer-events:none;overflow:hidden}
.falling-leaf{position:absolute;top:-6vh;width:16px;height:16px;background:linear-gradient(135deg,#e8b64c,#b98a3a);border-radius:0 62% 4px 62%;opacity:0;filter:drop-shadow(0 4px 6px rgba(45,27,78,.18));animation:leafFall var(--fall,18s) linear var(--fall-delay,0s) infinite;will-change:transform}
.falling-leaf::after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(315deg,rgba(255,255,255,.4),transparent 55%)}
.falling-leaf.l1{left:11%;--fall:17s;--fall-delay:-3s;width:14px;height:14px}
.falling-leaf.l2{left:31%;--fall:22s;--fall-delay:-10s}
.falling-leaf.l3{left:55%;--fall:15s;--fall-delay:-6s;width:12px;height:12px;background:linear-gradient(135deg,#c8a2e8,#8a63b8)}
.falling-leaf.l4{left:73%;--fall:24s;--fall-delay:-14s}
.falling-leaf.l5{left:89%;--fall:19s;--fall-delay:-1s;width:13px;height:13px;background:linear-gradient(135deg,#c8a2e8,#8a63b8)}
@keyframes leafFall{0%{transform:translate3d(0,-6vh,0) rotate(0deg)}5%{opacity:.8}50%{transform:translate3d(5vw,52vh,0) rotate(170deg);opacity:.75}95%{opacity:.6}100%{transform:translate3d(-3vw,110vh,0) rotate(330deg);opacity:0}}
@media(max-width:720px){.falling-leaf.l4,.falling-leaf.l5{display:none}}

/* Carnet secret des personnages */
.secrets-section{background:var(--cream)}

/* Livre : halo doux et presentation compacte */
.book-halo{position:absolute;z-index:-2;width:min(78%,330px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(255,215,0,.2),rgba(177,125,255,.12) 55%,transparent 74%);filter:blur(20px);animation:auraPulse 4.4s ease-in-out infinite}
.book-object img{transition:transform .45s ease}
.single-book-stage:hover .book-object img{transform:scale(1.02)}

/* Carnet secret : blocs illustres */
.secret-blocks{width:min(100%,1000px);display:grid;gap:24px;margin:0 auto}
.secret-block{display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(18px,3vw,34px);align-items:center;padding:clamp(16px,2.5vw,26px);border:1px solid rgba(90,61,122,.1);border-radius:32px;background:#fff;box-shadow:var(--shadow)}
.secret-block:nth-child(even){grid-template-columns:1.28fr .72fr}
.secret-block:nth-child(even) .secret-art{order:2}
.secret-art{margin:0;overflow:hidden;border-radius:24px}
.secret-art img{display:block;width:100%;aspect-ratio:1;object-fit:cover;transition:transform .5s}
.secret-block:hover .secret-art img{transform:scale(1.03)}
.secret-rows{display:grid;gap:14px}
@media(max-width:720px){.secret-block,.secret-block:nth-child(even){grid-template-columns:1fr}.secret-block:nth-child(even) .secret-art{order:0}}

/* Apercu produit (Tresors) */
.product-card{cursor:pointer}
.product-card:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.product-preview{width:min(92vw,760px);margin:auto;border:0;border-radius:32px;padding:0;background:#fff;box-shadow:0 40px 90px rgba(17,10,40,.4);overflow:hidden}
.product-preview::backdrop{background:rgba(15,10,35,.62);backdrop-filter:blur(6px)}
.product-preview[open]{display:grid;grid-template-columns:.9fr 1.1fr}
.preview-media{position:relative}
.preview-media img{display:block;width:100%;height:100%;aspect-ratio:1;object-fit:cover}
.preview-copy{position:relative;display:grid;align-content:center;gap:12px;padding:clamp(22px,4vw,40px)}
.preview-copy h3{margin:0;color:var(--violet-deep);font-size:1.5rem}
.preview-copy p{margin:0;color:#6d5d56;font-size:.92rem}
.preview-note{padding:12px 14px;border-radius:14px;background:#fbf6ff;color:var(--violet-soft);font-size:.8rem}
.preview-close{position:absolute;top:14px;right:14px;z-index:2;width:40px;height:40px;border:0;border-radius:50%;background:rgba(17,10,40,.55);color:#fff;font-size:1rem;cursor:pointer;transition:background .25s}
.preview-close:hover{background:rgba(17,10,40,.8)}
@media(max-width:720px){.product-preview[open]{grid-template-columns:1fr;max-height:88vh;overflow:auto}.preview-media img{aspect-ratio:1.45/1}}

/* Livre : couverture exacte, plate, plus petite et mieux equilibree */
.book-feature{grid-template-columns:minmax(190px,.62fr) minmax(0,1.38fr);gap:clamp(34px,6vw,72px)}
.single-book-stage{min-height:340px;perspective:none}
.book-halo{width:min(70%,250px)}
.book-shadow{right:18%;bottom:7%;left:18%;height:9%;filter:blur(24px)}
.book-object{width:min(68%,210px);transform:rotate(-1.2deg);transform-style:flat;animation:none;transition:transform .3s ease}
.book-object img{display:block;width:100%;height:auto;aspect-ratio:2/3;object-fit:contain;border-radius:10px;box-shadow:0 25px 55px rgba(45,27,78,.22);transition:none}
.single-book-stage:hover .book-object{transform:translateY(-4px) rotate(-.7deg)}
.single-book-stage:hover .book-object img{transform:none}

/* Pages personnages : vraies illustrations, recadrees de facon coherente */
.secret-blocks{width:min(100%,1080px)}
.secret-block{grid-template-columns:minmax(250px,340px) minmax(0,1fr)}
.secret-block:nth-child(even){grid-template-columns:minmax(0,1fr) minmax(250px,340px)}
.secret-art{width:100%;max-width:340px;justify-self:center;background:#f2edf6}
.secret-art img{aspect-ratio:4/3;object-fit:cover;object-position:center}
.secret-art--kiro img{object-position:center 55%}
.secret-art--kiro-portrait img{object-position:center 52%}
.secret-art--plume img{object-position:center 54%}
.secret-art--friends img{object-position:center 50%}
.secret-art--plume-friends img{object-position:center 52%}

/* Tresors : quatre propositions seulement, avec le coloriage disponible */
.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:900px}
.product-card--available{cursor:default}
.product-card--available:focus-visible{outline:0}
.product-badge--available{background:rgba(230,248,232,.96);color:#245c32}
.product-buy{width:100%;margin-top:20px;text-align:center}

@media(max-width:1020px){.single-book-stage{min-height:320px}}
@media(max-width:720px){
  .book-feature{gap:12px}
  .single-book-stage{min-height:285px}
  .book-object{width:min(48vw,185px)}
  .secret-block,.secret-block:nth-child(even){grid-template-columns:1fr}
  .secret-block:nth-child(even) .secret-art{order:0}
  .product-grid{grid-template-columns:1fr}
}

.kiro-hero-bg{background:linear-gradient(90deg,rgba(15,10,35,.95),rgba(40,22,64,.67) 56%,rgba(31,17,56,.35)),url("assets/images/kiro-profile-hero.webp") center/cover no-repeat}
@media(max-width:430px){.single-book-stage{min-height:255px}}
@media(prefers-reduced-motion:reduce){.book-object{transform:none}}

/* Correctifs profils : l'illustration remplit directement la forme, sans cadre insere. */
.character-hero-art .character-portrait{
  position:relative;
  z-index:2;
  width:min(100%,520px);
  aspect-ratio:1;
  overflow:hidden;
  border-radius:44% 56% 48% 52%/52% 40% 60% 48%;
  box-shadow:var(--shadow-dark);
  animation:blobMorph 12s ease-in-out infinite;
}
.character-hero-art .character-portrait img{
  position:absolute;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  max-width:none;
  aspect-ratio:auto;
  object-fit:cover;
  object-position:center;
  border-radius:0;
  box-shadow:none;
  animation:none;
}
.plume-page .character-hero-art .character-portrait img{
  object-position:center 58%;
  transform:scale(1.22);
}

/* La couverture change, mais la zone image garde exactement le format carre des autres cartes. */
.product-image--cover{
  position:relative;
  display:block;
  aspect-ratio:auto;
  min-height:0;
  padding:0;
  background:radial-gradient(circle at 50% 18%,#fff8e8 0,#f3e9f5 55%,#e9dce8 100%);
}
.product-image--cover img{
  position:static;
  display:block;
  width:100%;
  height:auto;
  max-width:none;
  aspect-ratio:1;
  object-fit:contain;
  padding:24px;
  border-radius:0;
  box-sizing:border-box;
  box-shadow:none;
}

@media(max-width:1020px){
  .character-hero-art .character-portrait{width:min(75vw,480px)}
}
@media(max-width:720px){
  .character-hero-art .character-portrait{width:min(78vw,390px)}
  .product-image--cover{padding:0}
  .product-image--cover img{
    width:100%;
    height:auto;
    padding:18px;
  }
}
