@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Manrope:wght@400;500;600;700&display=swap');
:root{color-scheme:dark;--ink:#091622;--gold:#d8b97b;--muted:#a6b2be;--line:#d8b97b30}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--ink);color:#f4efe4;font:14px/1.8 Manrope,Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:6px}header{height:90px;display:flex;align-items:center;justify-content:space-between;padding:0 6%;border-bottom:1px solid var(--line);position:relative;z-index:5;background:#091622}.brand{font:25px Georgia,serif;letter-spacing:.18em;color:var(--gold)}.brand span{font-size:38px;vertical-align:middle;margin-right:12px}nav{display:flex;gap:35px;font-size:12px}nav a:hover,.text-link:hover{color:var(--gold)}nav span{color:var(--gold);padding-left:10px}#menu{display:none}.hero{min-height:700px;height:calc(100svh - 90px);max-height:960px;position:relative;isolation:isolate;display:flex;align-items:center}.hero-art{position:absolute;inset:0;z-index:-2;background:url('assets/couverture-2.png') 100% 37%/auto 155% no-repeat}.hero:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#091622 8%,#091622f0 31%,#09162270 58%,#09162210 85%),linear-gradient(0deg,#091622 0%,transparent 30%)}.hero-content{padding:50px 8% 95px;width:100%}.eyebrow{font-size:10px;letter-spacing:.25em;font-weight:700;color:var(--gold)}.ornament{color:var(--gold);letter-spacing:10px;margin:24px 0}h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;line-height:1.07;margin:0}h1{font-size:clamp(54px,6.7vw,100px);max-width:750px;letter-spacing:-.035em}em{font-weight:400;color:var(--gold)}.hero-content>p:not(.eyebrow):not(.ornament){color:#bec7ce;margin:26px 0 32px}.button{display:inline-flex;padding:15px 24px;align-items:center;gap:30px;color:#101e2b;background:var(--gold);font-size:12px;font-weight:700}.button:hover{background:#ecd09a}.text-link{display:inline-block;font-size:12px;border-bottom:1px solid var(--line);padding:10px 0}.hero-content>.text-link{margin-left:26px}.hero-bottom{position:absolute;bottom:25px;left:8%;right:8%;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.18em;color:#bac3ca}.section{padding:100px 8%}h2{font-size:clamp(36px,4vw,58px)}.intro{border-bottom:1px solid var(--line);text-align:center}.intro h2{margin:24px 0 32px}.intro-copy{max-width:750px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:35px;color:var(--muted);text-align:left}.themes{display:flex;justify-content:center;gap:55px;margin-top:36px;color:var(--gold);font:italic 20px Georgia,serif}.realm{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:8%;padding:90px 8%;background:#0c1c29}.realm>img{width:100%;height:540px;object-fit:cover;object-position:50% 45%;border-radius:50% 50% 0 0}.realm>div>p:not(.eyebrow){color:var(--muted);max-width:430px}.realm h2{margin:22px 0}.realm .caption{font-size:9px;letter-spacing:.15em;border-top:1px solid var(--line);padding-top:28px;margin-top:36px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:45px}.section-heading>p{color:var(--muted);font-size:12px}.characters{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}.character{border:0;text-align:left;color:inherit;background:none;padding:0;min-width:0}.portrait{width:100%;aspect-ratio:1;background-repeat:no-repeat;background-color:#192b38;border:1px solid var(--line)}.character .portrait{transition:transform .25s,border-color .25s}.character:hover .portrait{transform:translateY(-6px);border-color:var(--gold)}.character h3{font-size:29px;margin-top:19px}.character p{font-size:10px;color:var(--muted);margin:8px 0}.character .explore{color:var(--gold);font-size:10px}.originals{display:flex;gap:25px;flex-wrap:wrap;font-size:10px;border-top:1px solid var(--line);margin-top:40px;padding-top:20px;color:var(--muted)}.originals a{color:var(--gold)}.books{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:45px;align-items:center;background:#101f2d}.books>div>p:last-child{color:var(--muted);max-width:350px}.books figure{margin:0}.books img{display:block;width:100%;box-shadow:0 18px 40px #0005}.books figcaption{font-size:9px;color:var(--gold);margin-top:18px;letter-spacing:.06em}footer{padding:40px 8%;display:flex;align-items:center;gap:25px;justify-content:space-between;font-size:10px;color:var(--muted)}footer .brand{font-size:18px}summary{cursor:pointer}footer details{max-width:200px}dialog{border:1px solid #d8b97b70;background:#0d1e2c;color:#f4efe4;width:min(850px,92vw);padding:50px;max-height:90svh;overflow:auto}dialog::backdrop{background:#030b13da;backdrop-filter:blur(6px)}.close{position:absolute;top:10px;right:18px;background:none;border:0;color:var(--gold);font-size:30px;min-width:44px;min-height:44px}.profile-layout{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:35px}.profile-copy>p{color:var(--muted)}.profile-copy .eyebrow{color:var(--gold)}.ages{display:flex;flex-wrap:wrap;gap:8px}.ages button{border:1px solid var(--line);background:transparent;color:#d4dce2;padding:9px 12px;font-size:11px}.ages button[aria-pressed=true]{background:var(--gold);color:var(--ink)}.skip{position:fixed;top:-100px;background:var(--gold);color:var(--ink);z-index:20;padding:12px}.skip:focus{top:0}
@media(min-width:1500px){.hero-art{background-size:auto 180%}.hero-content{padding-left:12%}}@media(max-width:1000px){nav{gap:18px}.characters{grid-template-columns:repeat(3,minmax(0,1fr))}.hero-art{background-position:80% 35%}.hero:before{background:linear-gradient(90deg,#091622f5,#091622a0 55%,#09162240),linear-gradient(0deg,#091622,transparent 50%)}.realm{gap:6%}.realm>img{height:440px}.books{gap:25px}.section-heading{display:block}footer{flex-wrap:wrap}}
@media(max-width:640px){header{height:74px;padding:0 6%}.brand{font-size:21px}#menu{display:block;background:none;border:1px solid var(--line);color:var(--gold);padding:7px 12px}nav{display:none;position:absolute;top:74px;left:0;right:0;background:var(--ink);padding:24px 6%;border-bottom:1px solid var(--line)}nav.open{display:flex;flex-direction:column;gap:20px}.hero{height:760px;min-height:calc(100svh - 74px);max-height:none}.hero-art{background-size:auto 115%;background-position:61% 0}.hero:before{background:linear-gradient(0deg,#091622 1%,#091622da 35%,#09162220 100%)}.hero-content{padding:200px 7% 100px;align-self:end}h1{font-size:57px}.hero-content>.text-link{display:table;margin:12px 0 0}.eyebrow{font-size:9px}.ornament{margin:18px 0}.hero-bottom{left:7%;right:7%;font-size:8px}.hero-bottom>span{display:none}.section{padding:65px 7%}.intro-copy{grid-template-columns:1fr;gap:0}.themes{gap:15px;flex-wrap:wrap;font-size:16px}.realm{grid-template-columns:1fr;padding:65px 7%;gap:30px}.realm>img{height:400px}.realm>div{padding-top:10px}.characters{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 15px}.character:last-child{grid-column:1/-1;width:calc(50% - 8px)}.character h3{font-size:27px}.section-heading{margin-bottom:30px}.books{grid-template-columns:1fr 1fr;gap:20px}.books>div{grid-column:1/-1;margin-bottom:15px}.books figcaption{line-height:1.8}footer{padding:35px 7%;gap:15px}footer>p{width:100%}.profile-layout{grid-template-columns:1fr;gap:20px}.profile-layout>.portrait{max-width:280px;margin:auto}dialog{padding:45px 22px 25px}.profile-copy h2{font-size:40px}.originals{gap:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
/* Direction artistique : bibliothèque de fantasy, dorures et couvertures originales. */
:root{--ink:#08141d;--gold:#d9b775;--muted:#acb7bd}body{background:radial-gradient(ellipse at 10% 40%,#16303b55,transparent 45%),var(--ink)}header{background:#08141df5;border-bottom:1px solid #b8924c45;height:92px}.hero{min-height:760px;height:calc(100svh - 92px);max-height:1000px;overflow:hidden}.hero-art{background:url('assets/astrea.png') center 42%/cover no-repeat;opacity:.53;filter:saturate(.7)}.hero:before{background:linear-gradient(90deg,#08141df5 0%,#08141ddd 34%,#08141d60 72%,#08141d50),linear-gradient(0deg,#08141d 0%,transparent 40%,#08141d30)}.hero:after{content:'';position:absolute;inset:26px;border:1px solid #dfbb7030;pointer-events:none;z-index:-1}.hero-content{padding:60px 8% 100px;width:66%;position:relative;z-index:1}.hero h1{font-size:clamp(52px,5.3vw,84px);line-height:1.06;letter-spacing:-.025em}.hero h1 em{display:inline-block}.hero-content .eyebrow{font-size:9px;letter-spacing:.23em}.hero-content>p:not(.eyebrow):not(.ornament){font-size:14px;line-height:1.95;color:#c9cfd0}.hero .button{background:linear-gradient(125deg,#eed7a3,#bd9451);border:1px solid #f4dba0;box-shadow:0 6px 30px #0005}.hero-book{position:absolute;right:10%;top:50%;transform:translateY(-49%) rotate(3deg);width:clamp(220px,24vw,360px);perspective:1200px;transition:transform .4s}.hero-book:hover{transform:translateY(-51%) rotate(0)}.hero-book:before{content:'';position:absolute;inset:2% -4% -2% 4%;background:#bbac89;transform:rotate(1deg);border-radius:2px;box-shadow:20px 25px 60px #0009}.hero-book img{position:relative;display:block;width:100%;border-radius:2px 5px 5px 2px;border:1px solid #e9c27b60;box-shadow:inset 5px 0 10px #0009,0 20px 40px #0007}.hero-book>span{position:relative;display:flex;justify-content:space-between;font-size:8px;letter-spacing:.13em;color:#f1dfb8;padding-top:20px}.hero-book b{font-weight:400;color:var(--gold)}.section{padding-top:110px;padding-bottom:110px}.intro{background:linear-gradient(180deg,#08141d,#0d2029);position:relative}.intro:after{content:'✧';display:block;margin:48px auto -65px;color:var(--gold);font-size:28px}.intro-copy{font-size:14px;max-width:850px;gap:50px}.realm{background:#0d2029;border-bottom:1px solid var(--line)}.realm>img{box-shadow:0 0 0 10px #0d2029,0 0 0 11px #cba35c50,0 30px 70px #0005;object-position:center}.section-heading{padding-bottom:28px;border-bottom:1px solid var(--line)}.character{position:relative}.character .portrait{box-shadow:0 10px 24px #0005;border:4px solid #122733;outline:1px solid #cba35c50}.character h3{color:#eee5d5}.character .explore{display:inline-block;margin-top:3px;border-bottom:1px solid #cba35c40}.books{display:block;background:radial-gradient(ellipse at top,#1d3643,transparent 65%),#0b1923;border-top:1px solid var(--line)}.books .section-heading{margin-bottom:55px}.books .section-heading>p{max-width:320px}.books .section-heading strong{font-weight:500;color:#e5dac4}.volume-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:60px 50px}.volume{min-width:0;display:flex;flex-direction:column}.book-cover{display:block;position:relative;width:82%;margin:0 auto 28px;transition:transform .35s}.book-cover:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#0006 0%,transparent 3%,#fff2 4%,transparent 6%,transparent 95%,#0005);border:1px solid #d9b77550;box-shadow:12px 18px 30px #0007}.books .book-cover img{width:100%;height:auto;aspect-ratio:2/3;object-fit:cover;border-radius:2px 4px 4px 2px;display:block}.book-cover>span{position:absolute;bottom:15px;left:10%;right:10%;padding:8px;background:#08141de8;text-align:center;color:#e8ce98;font-size:10px;opacity:0;transition:opacity .3s;z-index:1}.book-cover:hover{transform:translateY(-8px) rotate(-1deg)}.book-cover:hover>span,.book-cover:focus-visible>span{opacity:1}.volume-copy{border-top:1px solid #d9b77538;padding-top:16px}.volume-copy h3{font-size:30px;line-height:1.15;min-height:70px}.volume-copy>p:last-child{font-size:12px;color:var(--muted);line-height:1.85;max-width:320px}.volume-copy .eyebrow{margin:0 0 10px}.library-end{text-align:center;color:var(--gold);margin:75px 0 0;display:flex;justify-content:center;gap:25px;align-items:center}.library-end span{font:italic 23px 'Cormorant Garamond',Georgia,serif}.back-to-top{position:fixed;bottom:24px;right:24px;z-index:8;display:grid;place-items:center;width:52px;height:52px;border:1px solid #ebcc8b;background:linear-gradient(145deg,#e8c990,#bc914c);color:#0b1923;border-radius:50%;box-shadow:0 6px 24px #0008;font-size:25px;transition:transform .25s}.back-to-top:hover{transform:translateY(-4px)}footer{padding-right:95px}.hero-bottom{bottom:42px}.books .section-heading>div{grid-column:auto}
@media(min-width:1500px){.hero-content{padding-left:10%}.hero-art{background-size:cover}.hero-book{right:12%}}
@media(max-width:1000px){.hero-content{width:68%;padding-left:7%;padding-right:3%}.hero h1{font-size:57px}.hero-book{right:6%;width:25vw}.hero-content>.text-link{display:table;margin:12px 0 0}.hero:before{background:linear-gradient(90deg,#08141df5,#08141dc0 55%,#08141d50),linear-gradient(0deg,#08141d,transparent)}.volume-grid{gap:45px 28px}.volume-copy h3{font-size:26px}.hero-content .eyebrow{max-width:300px}.section{padding-top:80px;padding-bottom:80px}}
@media(max-width:640px){header{height:74px}.hero{height:auto;min-height:1000px;display:flex;flex-direction:column;justify-content:start;padding-bottom:85px}.hero-art{background-size:cover;background-position:55% center;opacity:.45}.hero:before{background:linear-gradient(180deg,#08141d80,#08141ddd 50%,#08141d)}.hero:after{inset:14px}.hero-content{padding:56px 8% 30px;width:100%;align-self:auto}.hero h1{font-size:49px}.hero-content .eyebrow{font-size:8px;max-width:100%;letter-spacing:.15em}.hero-content>p:not(.eyebrow):not(.ornament){font-size:12px;margin:22px 0}.hero-book{position:relative;right:auto;top:auto;transform:rotate(2deg);width:205px;margin:15px auto 15px}.hero-book:hover{transform:rotate(0)}.hero-book>span{font-size:6px}.hero-bottom{bottom:30px}.hero-content>.text-link{display:inline-block;margin-left:0}.section{padding-top:65px;padding-bottom:65px}.intro-copy{gap:0}.intro:after{margin-bottom:-47px}.volume-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 20px}.books .book-cover{width:94%;margin-bottom:20px}.volume-copy h3{font-size:24px;min-height:80px}.volume-copy>p:last-child{font-size:11px}.volume-copy .eyebrow{font-size:8px}.books .section-heading{margin-bottom:35px}.library-end{gap:12px;margin-top:45px}.library-end span{font-size:20px}.back-to-top{bottom:calc(18px + env(safe-area-inset-bottom));right:18px;width:48px;height:48px}.section-heading{padding-bottom:20px}.books .section-heading>div{margin-bottom:15px}}
@media(prefers-reduced-motion:reduce){.hero-book,.book-cover{transition:none}.hero-book:hover{transform:translateY(-49%) rotate(3deg)}@media(max-width:640px){.hero-book:hover{transform:rotate(2deg)}}}
/* Portraits peints : fond d’Astréa, ovale au bord brossé et cadrage sur les visages. */
.portrait-filters{position:absolute;pointer-events:none}.portrait,.character .portrait{position:relative;isolation:isolate;overflow:visible;border:0;outline:0;box-shadow:none;background:none;aspect-ratio:4/5!important}.portrait:before{content:'';position:absolute;inset:1% -2%;background:radial-gradient(ellipse at 50% 22%,#ebcb8c44,transparent 58%),url('assets/astrea.png') 50% 35%/cover;filter:saturate(.45);mask:url('assets/brush-oval.svg') center/100% 100% no-repeat;-webkit-mask:url('assets/brush-oval.svg') center/100% 100% no-repeat;opacity:.6;z-index:-1}.portrait:after{content:'';position:absolute;inset:0;pointer-events:none;border-radius:49% 51% 47% 53% / 47% 48% 52% 53%;border:1px solid #d8b97b45;transform:rotate(-7deg);box-shadow:0 0 30px #d8b97b0c,inset 0 0 30px #d8b97b0a}.portrait-paint{display:block;position:absolute;inset:0;overflow:hidden;mask:url('assets/brush-oval.svg') center/100% 100% no-repeat;-webkit-mask:url('assets/brush-oval.svg') center/100% 100% no-repeat;background:linear-gradient(0deg,#091b28c0,transparent 65%)}.portrait-sprite{display:block;position:absolute;width:152%;left:-26%;top:8%;background-repeat:no-repeat;mask-image:linear-gradient(#000 0%,#000 65%,transparent 87%);-webkit-mask-image:linear-gradient(#000 0%,#000 65%,transparent 87%)}.portrait-sprite.portrait-tall{width:100%;left:0;top:3%;mask-image:linear-gradient(#000 0%,#000 34%,transparent 47%);-webkit-mask-image:linear-gradient(#000 0%,#000 34%,transparent 47%)}.portrait-keyed{filter:url('#portrait-paper')}.character{text-align:center;padding:10px 4px 0}.character .portrait{transition:transform .3s,filter .3s}.character:hover .portrait{transform:translateY(-5px);filter:drop-shadow(0 0 14px #d8b97b22)}.character h3{margin-top:25px}.character p{min-height:2em}.character .explore{padding-bottom:4px}.characters{gap:25px}#profile-portrait{max-width:310px;margin:auto}.profile-layout{grid-template-columns:.95fr 1.05fr;gap:45px}dialog{background:radial-gradient(ellipse at 10% 45%,#29404b88,transparent 65%),#0d1e2c}.originals{margin-top:50px}@media(max-width:1000px){.characters{gap:30px}}@media(max-width:640px){.characters{gap:32px 20px}.character{padding:0}.character h3{margin-top:18px}.profile-layout{grid-template-columns:1fr;gap:20px}#profile-portrait{width:230px}.character .portrait{max-width:210px;margin:auto}.character p{font-size:9px}}
.portrait-sprite:not(.portrait-tall){top:5%}.portrait-sprite.portrait-tall{top:-4%}.portrait:before{opacity:.4;filter:saturate(.4) brightness(.8)}
