/* PERSONNALISATION : couleurs, tailles et apparence du site.
   Aucun téléchargement externe : le site fonctionne hors ligne. */
:root{--ink:#18352c;--gold:#92702e;--paper:#fff9ec;--green:#2b4b39;--line:#c9b486;--font:Georgia,'Times New Roman',serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#e9eadc;color:var(--ink);font-family:var(--font);font-size:17px;line-height:1.6}a{color:inherit}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{text-underline-offset:5px}a:hover{color:#866022}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #966920;outline-offset:5px}button:disabled{cursor:default}[hidden]{display:none!important}h1,h2,p{margin-top:0}h1,h2{font-weight:400;line-height:1.08}main:focus{outline:none}.world{container-type:inline-size;position:relative;max-width:1440px;margin:auto;background:url('assets/decor-centre.webp') center top/100% 100% no-repeat;box-shadow:0 0 80px #29413338;isolation:isolate}.masthead{height:20cqw;position:relative}.author{position:absolute;top:9.5cqw;left:36%;width:48%;font-size:4.6cqw;letter-spacing:-.055em;line-height:1.04;text-align:center;text-decoration:none;color:#142a20;text-shadow:0 2px 15px #fff9ec}.author span{white-space:nowrap}.navigation{position:relative;z-index:5;margin-left:29%;margin-right:10%;height:6cqw;display:flex;align-items:center;justify-content:space-between;gap:1.5cqw;padding:0 1cqw}#menu{display:flex;align-items:center;gap:2.5cqw;white-space:nowrap}#menu a{text-decoration:none;font-size:1.55cqw;position:relative;padding:.5cqw 0}#menu a[aria-current]{color:#8d661f}#menu a[aria-current]:after{content:'';height:1px;position:absolute;bottom:0;left:0;right:0;background:var(--gold)}#recherche{width:19cqw;display:flex;align-items:center;border:1px solid #b39b70;border-radius:99px;background:#fff9edbd;height:2.9cqw;min-height:34px}#recherche input{border:0;background:none;min-width:0;width:100%;padding:.5cqw .8cqw .5cqw 1cqw;color:var(--ink);font-size:1.12cqw;outline-offset:0}#recherche button{border:0;background:none;display:grid;place-items:center;padding:6px 10px;color:var(--ink)}#recherche svg{width:18px;fill:none;stroke:currentColor;stroke-width:1.7}.menu-toggle{display:none}
main{position:relative;min-height:49cqw;margin:0 18% 0 23%}.home{min-height:49cqw;display:flex;flex-direction:column;align-items:center;padding-top:3cqw}.welcome{text-align:center;width:100%;text-shadow:0 1px 18px #fffbeb,0 1px 4px #fffbeb}.eyebrow{font-size:.72rem;text-transform:uppercase;letter-spacing:.2em;color:#655329;margin-bottom:12px}.welcome .eyebrow{font-size:1cqw;margin-bottom:1cqw}.welcome h1{font-size:5.1cqw;letter-spacing:-.045em;margin-bottom:1cqw}.ornament{display:flex;align-items:center;justify-content:center;gap:15px;color:var(--gold);margin:12px auto;max-width:190px;line-height:1}.ornament:before,.ornament:after{content:'';width:70px;height:1px;background:linear-gradient(90deg,transparent,var(--gold))}.ornament:after{transform:rotate(180deg)}.intro{font-size:1.5cqw;line-height:1.55;margin:1.2cqw 0 1.6cqw}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;padding:11px 28px;background:linear-gradient(#617044,#324c32);color:#fff9e8;border:1px solid #ba9c51;outline:1px solid #8c702e;outline-offset:3px;border-radius:28px;text-decoration:none;box-shadow:0 3px 12px #263a251c;font-family:var(--font);font-size:1rem;text-shadow:none;transition:background .2s,transform .2s}.button:hover{background:linear-gradient(#7a804d,#455e3a);color:#fff;transform:translateY(-2px)}.welcome .button{font-size:1.45cqw;padding:.7cqw 2.2cqw}
.featured{display:flex;align-items:center;justify-content:center;gap:3.4cqw;text-decoration:none;margin:2.4cqw 0 .5cqw;min-height:20cqw;width:90%}.book-standing{position:relative;display:block;transform:rotate(-5deg);transition:transform .3s;width:12.5cqw;flex-shrink:0;filter:drop-shadow(10px 12px 9px #17241980)}.book-standing:after{content:'';position:absolute;top:0;bottom:0;left:0;width:7%;background:linear-gradient(90deg,#fff6,transparent 60%,#0004);border-right:1px solid #ffffff50}.book-standing img{display:block;width:100%;height:auto;border-radius:2px 5px 5px 2px;border-right:4px solid #d8cdac}.featured:hover .book-standing{transform:rotate(-2deg) translateY(-4px)}.featured-caption{display:flex;flex-direction:column;align-items:flex-start;gap:.5cqw;padding:1.4cqw 2cqw;border-radius:30px;background:#fff9e2d9;box-shadow:0 0 35px 14px #fff9e285}.featured-caption small{font-size:.9cqw;letter-spacing:.16em;text-transform:uppercase;color:#70572b}.featured-caption strong{font-weight:400;font-size:2.5cqw;line-height:1.1;letter-spacing:-.03em}.featured-caption>span{font-size:1.15cqw}.text-link{font-size:.95rem;color:#73541e;text-decoration:none;border-bottom:1px solid #b49c69;padding-bottom:3px;display:inline-block;margin-top:10px}.newsletter{margin:0 26% 0 31%;min-height:16cqw;display:flex;align-items:center;flex-direction:column;justify-content:center;text-align:center;padding:.6cqw 0 1cqw}.newsletter h2{font-size:2.8cqw;letter-spacing:-.03em;margin:0 0 .3cqw}.newsletter>p{font-size:1.05cqw;margin:0 0 1cqw}.newsletter form{display:flex;gap:12px;width:100%;max-width:480px;align-items:center}.newsletter input{width:100%;min-width:0;background:#fff9ecb3;border:1px solid #bca67a;border-radius:25px;color:var(--ink);padding:.6cqw 1.1cqw;font-size:1.08cqw}.newsletter .button{font-size:1.06cqw;white-space:nowrap;padding:.5cqw 1.5cqw;gap:0}.newsletter .form-note{font-size:.85cqw;line-height:1.4;margin:.8cqw 0 0;color:#6a5b3e}.footer{max-width:1440px;margin:auto;background:#243d30;color:#f2e6c9;text-align:center;padding:25px 20px 18px;font-size:12px}.footer p{margin:0 0 7px}.footer nav{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 24px}.footer a{color:#f2e6c9;text-decoration:none}.footer a:hover{text-decoration:underline}.preview-label{display:block;font-family:Arial,sans-serif;font-size:10px;opacity:.7;margin-top:16px}
.paper{padding:3cqw 2.7cqw 4cqw;min-height:49cqw;background:#fffaf0;position:relative;margin-top:1.7cqw;margin-bottom:1.7cqw;border-radius:45% 4% 5% 3%/1% 2% 1% 2%;box-shadow:0 0 27px 15px #fffaf0e6}.paper h1{font-size:3.8cqw;letter-spacing:-.04em;margin-bottom:18px}.paper>.eyebrow{text-align:center}.paper>h1,.page-intro{text-align:center}.page-intro{font-size:1.1rem;color:#5b6658;margin-bottom:30px}.catalogue{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 30px;margin-top:25px}.book-card{text-align:center}.cover-link{display:block;width:75%;max-width:200px;margin:0 auto 26px;text-decoration:none;transition:transform .2s;filter:drop-shadow(6px 10px 8px #13231b35)}.cover-link:hover{transform:translateY(-5px)}.cover-link img,.detail-cover img{display:block;width:100%;height:auto;aspect-ratio:2/3;object-fit:cover;border-radius:2px}.cover-placeholder{aspect-ratio:2/3;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:20px;border:1px solid #b8a66d;outline:1px solid #b8a66d;outline-offset:-10px;background:linear-gradient(140deg,#31493d,#142e29);color:#eadcae;text-align:center;font-size:1.4rem;line-height:1.2}.cover-placeholder small{font-size:.8rem;margin-top:20px;letter-spacing:.15em}.cover-placeholder em{font-family:Arial,sans-serif;font-size:10px;font-style:normal;opacity:.75;margin-top:25px}.book-card h2{font-size:1.5rem;margin:0 0 10px}.book-card h2 a{text-decoration:none}.book-card .eyebrow{margin-bottom:12px}.book-card>p:not(.eyebrow){font-size:.95rem;margin-bottom:10px}.book-detail{display:grid;grid-template-columns:38% 1fr;gap:35px;align-items:start;margin-top:30px}.book-detail h1{font-size:2.5rem}.book-detail h2{font-size:1.4rem}.book-detail .ornament{margin:24px 0}.byline{font-size:.9rem;color:#68664e}.availability{padding-top:20px;color:#765e30;font-style:italic;font-size:.9rem}.detail-cover{filter:drop-shadow(6px 10px 8px #13231b30)}.back-link{color:#765e30;font-size:.85rem;text-decoration:none}.notice{padding:25px;background:#efe7d9;border-left:2px solid #b9a06b;margin:35px 0;font-size:.95rem}.notice p:last-child{margin-bottom:0}.legal-tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 18px;font-size:.85rem;margin:25px 0 40px}.legal-tabs a{color:#775a29}#legal-content h2{font-size:1.7rem}.form-note{font-size:.8rem;color:#71664f}.search-status{font-style:italic;color:#6d6047;font-size:.9rem}.quiet-button{padding:8px 18px;background:transparent;border:1px solid #b29b6c;color:var(--ink);border-radius:20px;margin-top:20px}.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;left:12px;top:-80px;background:#fff;color:#123;padding:10px;z-index:20}.skip-link:focus{top:10px}.noscript{padding:25px;background:#fff}
@media(min-width:1440px){body{padding:0 24px}.world{margin-top:12px}.footer{margin-bottom:12px}}
@media(max-width:900px) and (min-width:641px){body{font-size:15px}.navigation{margin-left:25%;margin-right:9%;gap:1cqw}#menu{gap:1.7cqw}#menu a{font-size:1.9cqw}#recherche{width:22cqw}#recherche input{font-size:1.5cqw}.paper{padding:4cqw 2cqw}.paper h1{font-size:4.4cqw}.paper .book-detail{gap:20px}.book-detail h1{font-size:2rem}.newsletter .form-note{font-size:1.15cqw}.newsletter form{gap:8px}.newsletter input{font-size:1.5cqw}.newsletter .button{font-size:1.4cqw}.newsletter>p{font-size:1.4cqw}}
/* TÉLÉPHONE : les troncs restent visibles, le centre s’élargit et les menus se replient. */
@media(max-width:640px){
body{font-size:16px}.world{background-size:auto 100%;background-position:center top}.masthead{height:215px;background:url('assets/decor-centre.webp') center top/700px auto no-repeat}.author{top:107px;left:31%;width:61%;font-size:34px;line-height:1.02;text-shadow:0 0 16px #fff8d6}.author span{display:block}.navigation{margin:0 7%;height:auto;min-height:62px;background:#fff7e5f5;border:1px solid #b7a273;border-radius:16px 4px 22px 5px;padding:8px 12px;gap:12px;flex-wrap:wrap}.menu-toggle{display:block;background:none;border:0;padding:8px 0;color:var(--ink);font-size:16px}.navigation #menu{display:none;order:3;width:100%;flex-wrap:wrap;padding:12px 0 6px;border-top:1px solid #d9c9a7;gap:20px}.navigation #menu.open{display:flex}#menu a{font-size:17px;padding:5px}#recherche{width:62%;min-height:36px;height:36px}#recherche input{font-size:14px;padding:7px 10px}main{margin:0 10%;min-height:620px}.home{padding:32px 0 20px;min-height:650px;background:radial-gradient(ellipse at center,#fff9e9d9 35%,#fff9e970 65%,transparent 75%)}.welcome .eyebrow{font-size:9px;letter-spacing:.14em;margin-bottom:17px}.welcome h1{font-size:clamp(30px,8.6vw,52px);line-height:1.08}.intro{font-size:15px;line-height:1.6;margin:19px 0 24px}.welcome .button{font-size:15px;padding:10px 21px}.featured{margin:40px 0 15px;width:100%;gap:17px;min-height:210px}.book-standing{width:111px}.featured-caption{gap:8px;padding:15px 10px;box-shadow:0 0 20px 3px #fff9e285}.featured-caption small{font-size:9px}.featured-caption strong{font-size:25px}.featured-caption>span{font-size:11px}.featured-caption .text-link{font-size:12px}.newsletter{margin:0 14%;padding:30px 13px 40px;min-height:210px;background:#fff5dfe8;border-radius:35px 7px 40px 10px}.newsletter h2{font-size:30px;margin-bottom:8px}.newsletter>p{font-size:12px;margin-bottom:20px}.newsletter form{flex-direction:column;gap:14px}.newsletter input{font-size:14px;padding:10px 14px}.newsletter .button{font-size:14px;padding:7px 23px}.newsletter .form-note{font-size:11px;margin-top:16px}.world{padding-bottom:45px}.paper{padding:35px 18px 45px;min-height:600px;margin:25px 0;box-shadow:0 0 14px 7px #fffaf0de;border-radius:15px}.paper h1{font-size:36px}.paper .eyebrow{font-size:9px}.page-intro{font-size:15px}.catalogue{grid-template-columns:1fr;gap:45px}.cover-link{width:65%;max-width:180px}.book-card h2{font-size:25px}.book-detail{grid-template-columns:1fr;gap:35px}.detail-cover{width:65%;max-width:190px;margin:auto}.book-detail h1{font-size:32px}.book-detail h2{font-size:23px}.book-detail p{font-size:15px}.footer{padding:24px 22px}.footer nav{gap:10px 16px;font-size:11px}.preview-label{font-size:9px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* Ajustements de lisibilité du formulaire et du cadre sur petit écran. */
.newsletter .form-note{background:#fff5dfea;border-radius:12px;padding:3px 10px;color:#5a4a2c}
@media(max-width:640px){.world:before,.world:after{content:'';position:absolute;top:210px;bottom:0;width:8%;z-index:-1;background-image:url('assets/decor-centre.webp');background-repeat:repeat-y;background-size:680px auto;pointer-events:none}.world:before{left:0;background-position:left top}.world:after{right:0;background-position:right top}.newsletter .form-note{background:none;padding:0}}
/* ALIGNEMENT : les éléments partagent le même centre, indépendamment du décor. */
.masthead{display:flex;align-items:center;justify-content:center;padding-top:5cqw}
.author{position:static;display:block;width:74%;font-size:4.3cqw;text-align:center;margin:0 auto;line-height:1.1}
.navigation{width:68%;margin:0 auto;min-height:5.8cqw;height:auto;padding:.65cqw 1.6cqw;background:linear-gradient(110deg,#fff9e9f5,#f4e7c9f5 55%,#fff9e9f5);border:1px solid #a68b52;border-radius:36px 12px 33px 14px;box-shadow:0 0 0 4px #52633c88,0 0 0 6px #cfbd8266,0 6px 16px #283b2533}
#menu{flex:1;justify-content:center;gap:2.5cqw}
#recherche{flex:none;width:19cqw}
main{width:62%;margin-left:auto;margin-right:auto}
.newsletter{width:46%;margin:0 auto;min-height:16cqw;padding:1.5cqw 2cqw;background:linear-gradient(100deg,#fff7e7ec,#fff7e7fa,#fff7e7ec);border:1px solid #b9a36c;border-radius:42px 15px 46px 18px;box-shadow:0 0 0 4px #455c3480,0 6px 24px #283b252e}
.newsletter form{margin-left:auto;margin-right:auto}
.newsletter h2,.newsletter>p{max-width:100%;text-align:center}
.world{padding-bottom:3cqw;background-size:100% 100%}
@media(max-width:900px) and (min-width:641px){.navigation{width:74%;margin:0 auto}#menu{gap:1.6cqw}#recherche{width:22cqw}.newsletter{width:51%;min-height:19cqw}.newsletter input{font-size:1.45cqw}.newsletter .button{font-size:1.4cqw}}
@media(max-width:640px){
 .world{padding-bottom:35px;background-size:auto 100%}
 .masthead{height:210px;padding-top:70px;background-size:100% auto;background-position:center top}
 .author{position:static;width:84%;font-size:34px;margin:0 auto;text-align:center;line-height:1.05;text-shadow:0 1px 10px #fff9e9,0 0 25px #fff9e9}
 .author span{display:block}
 .navigation{width:84%;margin:0 auto;min-height:62px;padding:8px 12px;gap:12px;border-radius:25px 9px 28px 10px}
 #menu{justify-content:center}
 #recherche{width:64%}
 main{width:80%;margin-left:auto;margin-right:auto}
 .newsletter{width:72%;margin:0 auto;padding:27px 13px 30px;min-height:210px}
 .newsletter form{flex-direction:column}
}
/* Le véritable cadre illustré est indépendant du positionnement des liens. */
.navigation{background:none;border:0;box-shadow:none;border-radius:0;padding:.65cqw 4cqw;position:relative}
.navigation:before{content:'';position:absolute;left:-3cqw;top:-7cqw;width:calc(100% + 6cqw);height:22cqw;background:url('assets/cadre-vegetal.png') center/100% 100% no-repeat;z-index:-1;pointer-events:none}
@media(max-width:900px) and (min-width:641px){.navigation{padding:.65cqw 3.5cqw}#menu{gap:1.5cqw}#menu a{font-size:1.7cqw}#recherche{width:21cqw}}
@media(max-width:640px){
 .navigation{min-height:80px;padding:8px 14px;gap:10px}
 .navigation:before{left:-6%;top:-52px;width:112%;height:200px}
 #recherche{width:64%;height:32px;min-height:32px}
 .navigation #menu.open{position:absolute;top:calc(100% - 4px);left:0;width:100%;padding:18px 12px;z-index:10;background:#fff7e9;border:1px solid #aa8c4e;border-radius:8px 8px 24px 12px;box-shadow:0 9px 15px #263b2538}
}
/* Cadre de racines en neuf morceaux : le centre s’allonge sans déplacer le texte. */
.newsletter{position:relative;background:none;box-shadow:none;border-radius:0;border-style:solid;border-width:42px 62px 38px;border-image-source:url('assets/cadre-newsletter.png');border-image-slice:40% 16% 30% 16% fill;border-image-repeat:stretch;padding:8px 8px 10px;width:58%;min-height:19cqw}
.newsletter .form-note{background:none;padding:0}
@media(max-width:900px) and (min-width:641px){.newsletter{width:64%;border-width:32px 42px 30px}}
@media(max-width:640px){.newsletter{width:86%;border-width:34px 32px 30px;padding:14px 7px 20px;min-height:300px}.menu-toggle{margin-left:12px;font-size:15px}#recherche{width:60%}}
@media(max-width:640px){.newsletter{width:90%;border-width:34px 35px 30px;padding:14px 18px 20px}.newsletter h2{font-size:27px}.newsletter>p{width:100%;line-height:1.5}.newsletter form{width:100%}}
/* Page de présentation de l’auteur et quatrième onglet. */
#menu{gap:1.65cqw}#menu a{font-size:1.4cqw}
.author-bio{display:grid;grid-template-columns:30% 1fr;gap:35px;margin:40px 0 20px;align-items:start}
.author-portrait{margin:0;text-align:center}.portrait-placeholder{aspect-ratio:3/4;display:grid;place-items:center;background:linear-gradient(140deg,#e8e2ce,#d0d4bc);border:1px solid #b0aa80;outline:1px solid #c0b68d;outline-offset:-9px;color:#6a7758;font-size:3.5rem;letter-spacing:-.05em;border-radius:45% 45% 4px 4px}
.author-portrait figcaption{font-size:.75rem;color:#756b51;margin-top:12px}.author-story h2{font-size:2rem;margin-bottom:22px}.author-story p{font-size:1rem;line-height:1.8}.author-story .bio-note{font-size:.85rem;font-style:italic;color:#756b51;border-top:1px solid #d8ceb5;padding-top:20px;margin-top:25px}
@media(max-width:900px) and (min-width:641px){#menu{gap:1.3cqw}#menu a{font-size:1.65cqw}.author-bio{gap:22px}.author-story h2{font-size:1.6rem}}
@media(max-width:640px){#menu a{font-size:16px}.navigation #menu.open{gap:12px 20px}.author-bio{grid-template-columns:1fr;gap:30px;margin-top:25px}.author-portrait{width:55%;max-width:150px;margin:auto}.author-story h2{text-align:center;font-size:1.8rem}.author-story p{font-size:15px}}

@media(min-width:641px){#menu{padding-right:1.5cqw;gap:1.35cqw}#menu a{font-size:1.35cqw}}
@media(min-width:641px) and (max-width:900px){#menu{gap:1cqw}#menu a{font-size:1.5cqw}}
/* Formulaire de contact. */
.contact-form{max-width:580px;margin:35px auto 10px;display:grid;gap:20px}.contact-form label{display:block;margin-bottom:7px;font-size:.95rem}.contact-form label span{color:#846627}.contact-form input,.contact-form textarea{width:100%;border:1px solid #c4b38b;border-radius:8px;background:#fffdf7;color:var(--ink);padding:12px 14px;font-family:inherit;font-size:1rem;line-height:1.5}.contact-form textarea{resize:vertical;min-height:180px}.contact-names{display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact-help{font-size:.75rem;color:#71664f;margin:0}.contact-form>.button{justify-self:start;min-width:155px}.contact-form .form-note{margin:0;line-height:1.6}
@media(max-width:640px){.contact-names{grid-template-columns:1fr;gap:20px}.contact-form{gap:18px;margin-top:25px}.contact-form input,.contact-form textarea{font-size:16px}.contact-form>.button{justify-self:center}}

.public-portrait{display:block;width:100%;height:auto;border-radius:45% 45% 4px 4px}.custom-page-body{line-height:1.9;white-space:pre-line}.featured-caption strong{overflow-wrap:anywhere}.navigation.many-links #menu{flex-wrap:wrap}.navigation.many-links{min-height:9cqw}.navigation.many-links:before{height:27cqw;top:-8cqw}@media(max-width:640px){.navigation.many-links{min-height:80px}.navigation.many-links:before{height:200px;top:-52px}}

.contact-form .optional-label{font-size:.8rem;font-weight:400;color:#71664f}

/* DÉCOR INDÉPENDANT DU CONTENU : aucune mise à l’échelle selon la hauteur de page. */
body{isolation:isolate}
.site-decor{position:fixed;z-index:-1;inset:0 auto 0 50%;transform:translateX(-50%);width:min(100%,1440px);pointer-events:none;background:#e9eadc url('assets/decor-centre.webp') center top/cover no-repeat}
.world{background:none}
@media(min-width:1440px){.site-decor{top:12px;bottom:12px;width:min(calc(100% - 48px),1440px)}}
@media(max-width:640px){.world:before,.world:after{display:none}}


/* Navigation accessible pendant le défilement. */
#menu-anchor{display:block;height:1px;margin-bottom:-1px;pointer-events:none}
.navigation{position:sticky;top:12px;z-index:25}
.navigation.is-stuck{min-height:56px;height:56px;padding:8px 24px}
.navigation.is-stuck:before{top:-40px;height:145px;filter:drop-shadow(0 5px 7px #152e2638)}
.navigation.is-stuck #recherche{height:34px;min-height:34px}
.navigation.many-links.is-stuck{height:auto;min-height:56px}
html{scroll-padding-top:100px}
@media(max-width:640px){.navigation{top:8px}.navigation.is-stuck{height:56px;min-height:56px;padding:8px 14px}.navigation.is-stuck:before{top:-40px;height:145px}.navigation.is-stuck #menu.open{top:calc(100% - 4px)}}
/* La signature illustrée est équilibrée dans l’ouverture à droite des personnages. */
.author.author-illustrated{position:absolute;top:3cqw;left:auto;right:15.5%;width:49%;height:15cqw;display:flex;align-items:center;justify-content:center;margin:0;text-shadow:none}
.author-illustrated img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 3px 5px #17392b2b)}
@media(max-width:640px){.author.author-illustrated{top:72px;right:5%;width:72%;height:115px}}


/* Signature plus présente : uniquement le lettrage fantastique, sans cadre végétal. */
.author.author-illustrated{top:.5cqw;right:12%;width:53%;height:18cqw}
@media(max-width:640px){.author.author-illustrated{top:58px;right:2%;width:82%;height:138px}}


/* Titre plus discret, dégagé des arbres et légèrement descendu. */
.author.author-illustrated{top:3cqw;right:16.5%;width:44%;height:15cqw}
@media(max-width:640px){.author.author-illustrated{top:72px;right:5%;width:76%;height:125px}}

/* Dernier ajustement : titre un peu plus bas dans l’ouverture du décor. */
.author.author-illustrated{top:5cqw}
@media(max-width:640px){.author.author-illustrated{top:84px}}
/* Ajustement final du titre : légèrement plus bas et plus à gauche. */
.author.author-illustrated{top:5.6cqw;right:17.3%}
@media(max-width:640px){.author.author-illustrated{top:88px;right:6%}}
/* Affinage du placement du titre. */
.author.author-illustrated{top:6.2cqw;right:18.1%}
@media(max-width:640px){.author.author-illustrated{top:92px;right:7%}}
/* Fenêtre étroite : un seul décor continu derrière tout le site. */
@media(max-width:640px){.masthead{background:none}}
/* Centrage du bouton dans la partie gauche du bandeau étroit. */
@media(max-width:640px){
 .navigation .menu-toggle{flex:1;min-width:0;margin-left:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:8px 0}
}

/* Language choices stay outside the illustrated menu so its layout is preserved. */
.language-selector{position:absolute;right:22%;top:14px;z-index:3;display:flex;gap:4px;padding:4px 7px;border:1px solid #bfa46a;border-radius:20px;background:#fff9e9e8;box-shadow:0 2px 9px #233b3020;font:600 13px Georgia,serif}
.language-selector a{padding:5px 8px;border-radius:12px;color:#253e32;text-decoration:none}
.language-selector a[aria-current]{background:#4c345e;color:#fff8e8}
.language-selector a:focus-visible{outline:2px solid #4c345e;outline-offset:2px}
.translation-notice{font:italic 13px/1.5 Georgia,serif;color:#66583c;margin:14px 0}
@media(max-width:640px){.language-selector{right:12%;top:8px;font-size:12px}.language-selector a{padding:4px 7px}}

/* Discreet language dropdown in the footer. */
.footer .language-selector{position:relative;inset:auto;z-index:3;display:table;margin:8px auto 0;padding:0;border:0;border-radius:0;background:none;box-shadow:none;font:13px Georgia,serif}
.language-selector summary{display:flex;align-items:center;justify-content:center;gap:6px;min-width:44px;min-height:32px;padding:6px;cursor:pointer;list-style:none;border-radius:5px;color:#f2e6c9}
.language-selector summary::-webkit-details-marker{display:none}
.language-selector summary:hover,.language-selector summary:focus-visible{background:#ffffff12}
.language-selector summary:focus-visible{outline:2px solid #d0b879;outline-offset:2px}
.language-current-flag{display:flex}.language-flag{display:block;width:21px;height:14px;border-radius:2px;box-shadow:0 0 0 1px #ffffff30;flex-shrink:0}
.language-chevron{font-size:10px;opacity:.7}
.language-options{position:absolute;bottom:calc(100% + 5px);left:50%;transform:translateX(-50%);width:156px;padding:5px;background:#fff9eb;border:1px solid #c3af82;border-radius:8px;box-shadow:0 5px 20px #142d3030}
.footer .language-selector .language-options a{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:4px;color:#243d30;text-decoration:none;font-weight:400}
.footer .language-selector .language-options a:hover,.footer .language-selector .language-options a[aria-current]{background:#e8e5d9;color:#243d30}

.catalogue-pagination{display:flex;justify-content:center;align-items:center;gap:9px;flex-wrap:wrap;margin:40px 0 10px;font-size:15px}.catalogue-pagination a{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:38px;padding:5px 10px;border:1px solid #c5b792;border-radius:6px;text-decoration:none;background:#fffaf0}.catalogue-pagination a[aria-current]{background:#314c38;color:#fff8e6;border-color:#314c38}.pagination-status{font-size:12px;color:#6b624f;padding:4px}.excerpt-button{margin-top:16px;font-size:16px;padding:10px 24px}.reading-page{text-align:left}.reading-page h1{font-size:clamp(28px,3.8vw,48px);overflow-wrap:anywhere}.excerpt-text{max-width:680px;margin:30px auto;font-size:18px;line-height:1.9;overflow-wrap:anywhere}.excerpt-text p{white-space:pre-line;margin-bottom:1.3em}.excerpt-language{font-size:13px;color:#746449}.reading-page .eyebrow{margin-top:18px}@media(max-width:640px){.catalogue-pagination{gap:6px;font-size:13px}.catalogue-pagination a{padding:5px 8px}.excerpt-text{font-size:16px;line-height:1.85}.excerpt-button{font-size:14px}}

.excerpt-dialog{width:min(800px,92vw);max-height:86vh;max-height:86dvh;padding:30px 38px;border:1px solid #baa16c;border-radius:14px;background:#fffaf0;color:#203d30;box-shadow:0 15px 80px #10291d55;overflow:auto;overscroll-behavior:contain;text-align:left}.excerpt-dialog::backdrop{background:#10291c99;backdrop-filter:blur(3px)}.excerpt-dialog h1{font-size:clamp(26px,4vw,40px);line-height:1.15;overflow-wrap:anywhere;margin:22px 0 12px}.excerpt-dialog .excerpt-text{margin:28px 0}.excerpt-close{position:sticky;top:0;display:block;margin:0 0 12px auto;border:1px solid #cbbd9e;border-radius:18px;background:#fffaf0;color:#314b38;padding:6px 13px;font-size:13px;z-index:1}.excerpt-close:focus-visible{outline:3px solid #966920;outline-offset:3px}body:has(.excerpt-dialog[open]){overflow:hidden}@media(max-width:640px){.excerpt-dialog{width:94vw;max-height:90vh;max-height:90dvh;padding:18px 20px;border-radius:10px}.excerpt-dialog h1{font-size:27px}}

/* The excerpt action follows the cover, independently of the summary length. */
.book-detail .detail-cover{display:flex;flex-direction:column;align-items:center;gap:18px;align-self:start;filter:none}
.detail-cover>img,.detail-cover>.cover-placeholder{filter:drop-shadow(6px 10px 8px #13231b30)}
.detail-cover .excerpt-button{margin:0;max-width:100%;justify-content:center;text-align:center;font-size:15px;line-height:1.4;padding:11px 20px;white-space:normal}
.excerpt-dialog{border:18px solid transparent;border-image:url('assets/cadre-extrait.svg') 64 stretch;background-color:#fffaf0;background-clip:padding-box;padding:20px 28px;border-radius:20px;box-shadow:0 18px 75px #10291d66}
.excerpt-close{border-color:#c6b38c;background:#fffaf0}
@media(max-width:640px){.book-detail .detail-cover{gap:15px}.detail-cover .excerpt-button{font-size:14px;padding:10px 14px}.excerpt-dialog{border-width:12px;padding:14px 16px;border-radius:14px}}


/* Illustrated roots conceal the paper edges; only the clear reading area scrolls. */
.excerpt-dialog{width:min(900px,94vw);max-height:86vh;max-height:86dvh;padding:0;border:60px solid transparent;border-image-source:url('assets/cadre-extrait-racines.png');border-image-slice:22% fill;border-image-width:1;border-image-outset:0;border-image-repeat:stretch;background:none;clip-path:none;border-radius:0;box-shadow:none;filter:drop-shadow(0 14px 25px #0c211b66);overflow:visible}
.excerpt-scroll{position:relative;max-height:calc(86vh - 120px);max-height:calc(86dvh - 120px);overflow:auto;overscroll-behavior:contain;padding:8px 16px 18px;scrollbar-width:thin;scrollbar-color:#9b8e68 transparent}
.excerpt-dialog .excerpt-close{top:0}
@media(max-width:640px){.excerpt-dialog{width:96vw;border-width:27px 24px;padding:0;max-height:92vh;max-height:92dvh}.excerpt-scroll{max-height:calc(92vh - 54px);max-height:calc(92dvh - 54px);padding:8px 12px 14px}}

.excerpt-dialog .excerpt-close{border-radius:6px;border-color:#8b8060;background:#f8efd9;color:#344638}

/* Accroches brèves, sans panneau supplémentaire sur le décor. */
.book-card>p.book-tagline{max-width:29em;margin:12px auto 16px;line-height:1.55;color:#455b4d;font-size:1rem;overflow-wrap:anywhere}.detail-tagline{font-size:1.12rem;line-height:1.55;color:#435d49;font-style:italic}.book-audience{font-size:.9rem;color:#5e6556;overflow-wrap:anywhere}

/* Les effets restent confinés au décor, sans modifier le placement du titre. */
.decor-motion-defs{position:absolute;overflow:hidden;pointer-events:none}.decor-lantern-glow{position:absolute;display:block;transform:translate(-50%,-50%);border-radius:50%;pointer-events:none;opacity:0;background:radial-gradient(ellipse,#fffdf2 0%,#fff0bd 12%,#ffd26da8 30%,#ffb74b55 51%,transparent 76%);mix-blend-mode:screen;filter:blur(2px)}
.author-illustrated::after{content:'';position:absolute;inset:0;pointer-events:none;opacity:0;mask:url('assets/signature-tadeusz-v3.png') center/contain no-repeat;-webkit-mask:url('assets/signature-tadeusz-v3.png') center/contain no-repeat;background:linear-gradient(104deg,transparent 49.3%,#f9ddff80 49.65%,#fffce8 50%,#fff 50.12%,#e4c2ff77 50.4%,transparent 50.75%) 100% 0/300% 100% no-repeat;mix-blend-mode:screen}
.author-illustrated.title-glimmer::after{animation:title-glimmer-pass 3.8s ease-in-out both}
@keyframes title-glimmer-pass{0%{background-position:100% 0;opacity:0}8%{opacity:.85}88%{opacity:.85}100%{background-position:0 0;opacity:0}}
.decor-motion-toggle{display:block;margin:10px auto 0;padding:5px 9px;border:0;background:none;color:inherit;font-family:inherit;font-size:11px;line-height:1.4;opacity:.7;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.decor-motion-toggle:hover{opacity:1}.decor-motion-toggle:focus-visible{outline:2px solid #d6bf89;outline-offset:3px}.decor-motion-toggle:disabled{cursor:default;text-decoration:none}
@media(prefers-reduced-motion:reduce){.author-illustrated.title-glimmer::after{animation:none!important;opacity:0!important}.decor-lantern-glow{display:none!important}.site-decor{filter:none!important}}

/* Halloween : l’illustration d’origine reste la solution de secours tant que les deux calques ne sont pas chargés. */
body[data-season] .site-decor[data-evar-ready="true"]{background-image:var(--evar-clean-plate)}.evar-layer{position:absolute;display:none;pointer-events:none;filter:drop-shadow(2px 3px 2px #14243245)}.evar-layer>svg{display:block;width:100%;height:100%;overflow:visible}body[data-season] .site-decor[data-evar-ready="true"] .evar-layer{display:block}.evar-head{transform-box:view-box;transform-origin:510px 185px}.evar-eyelid{opacity:0}.evar-layer.is-looking .evar-head{animation:evar-head-turn 4.3s ease-in-out both}.evar-layer.is-looking .evar-eyelid{animation:evar-eye-blink 4.3s linear both}
@keyframes evar-head-turn{0%,100%{transform:rotate(0deg)}28%,46%{transform:rotate(12deg)}72%{transform:rotate(-4deg)}87%{transform:rotate(1deg)}}
@keyframes evar-eye-blink{0%,34%,40%,71%,77%,100%{opacity:0}36%,38%,73%,75%{opacity:1}}
@media(prefers-reduced-motion:reduce){.evar-layer.is-looking .evar-head,.evar-layer.is-looking .evar-eyelid{animation:none!important}.evar-eyelid{opacity:0!important}}

/* La bande basse de Pâques reprend le même fond nettoyé pour garder le raccord des lapins. */
body[data-season="paques"] .site-decor[data-evar-ready="true"]:after{background-image:var(--evar-clean-plate)}

/* Confirmation du formulaire de contact */
.contact-confirmation{box-sizing:border-box;width:min(440px,calc(100vw - 36px));max-height:calc(100dvh - 36px);overflow:auto;margin:auto;padding:30px 32px 26px;text-align:center;color:#233d31;background:radial-gradient(ellipse at 90% 0,#e5dcef88,transparent 65%),linear-gradient(145deg,#fffdf5,#f4eedc);border:1px solid #aa925c;border-radius:42px 17px 38px 19px;box-shadow:0 18px 65px #10271f66,inset 0 0 0 5px #fffaf0,inset 0 0 0 6px #b7a16b66;font-family:Georgia,serif}
.contact-confirmation::backdrop{background:#11281f80;backdrop-filter:blur(3px)}
.contact-confirmation-symbol{display:grid;place-items:center;width:52px;height:52px;margin:0 auto 16px;border:1px solid #ac9560;border-radius:50% 40% 48% 38%;background:#e5ebdb;color:#3a593c;font-size:28px;line-height:1}
.contact-confirmation h2{font-size:clamp(25px,6vw,32px);line-height:1.2;margin:0 0 14px;color:#233d31;letter-spacing:normal}
.contact-confirmation p{font-size:17px;line-height:1.6;margin:0 0 22px;color:#4c5548}
.contact-confirmation-close{display:inline-block;border:1px solid #ac9560;border-radius:22px;padding:10px 28px;background:#3c543b;color:#fffaf0;font:17px Georgia,serif;cursor:pointer;min-height:44px}
.contact-confirmation-close:hover{background:#2c452e}
.contact-confirmation-close:focus-visible{outline:3px solid #795b8b;outline-offset:4px}
body:has(.contact-confirmation[open]){overflow:hidden}
@media(max-width:400px){.contact-confirmation{padding:25px 22px}.contact-confirmation p{font-size:16px}}

.contact-form select{box-sizing:border-box;width:100%;max-width:100%;min-height:44px;padding:12px 14px;border:1px solid #c7b98f;border-radius:5px;background:#fffdf5;color:var(--ink);font:inherit}.contact-form select:focus-visible{outline:3px solid #966920;outline-offset:3px}.contact-form select:invalid{color:#71664f}

.seo-book-links{display:flex;flex-wrap:wrap;justify-content:center;gap:.35rem 1rem;font-size:.78rem;margin-top:.7rem;opacity:.85}

/* Page de partage : galerie sobre pour laisser les bannières respirer. */
.sharing-page{max-width:100%;text-align:left}.sharing-page>h1,.sharing-page>.eyebrow,.sharing-intro{text-align:center}.sharing-intro{max-width:55ch;margin:0 auto 2rem}.sharing-card{border-top:1px solid #b9ad8580;padding:1.8rem 0;min-width:0}.sharing-card h2{font-size:1.45rem;margin:0 0 .7rem}.sharing-card header{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;flex-wrap:wrap}.sharing-card header>span{font-size:.85rem;color:#5f6558}.sharing-preview{padding:1rem 0 1.4rem;text-align:center}.sharing-preview img{max-width:100%;height:auto;max-height:420px;object-fit:contain}.sharing-code-label{display:block;font-size:.9rem}.sharing-code-label textarea{display:block;box-sizing:border-box;width:100%;max-width:100%;margin:.4rem 0 1rem;border:1px solid #b6b59c;border-radius:8px;padding:.8rem;background:#fffdf5;color:#33463d;font:12px/1.6 monospace;resize:vertical;overflow-wrap:anywhere}.sharing-copy{font-size:.95rem;padding:.6rem 1.1rem}.sharing-status{display:block;min-height:1.5em;font-size:.9rem;margin-top:.5rem}.sharing-download{display:inline-block;margin-top:.4rem}
