/* Encadré de présentation, harmonisé avec Histoire et Géographie. */
body.page-personnage .personnage-hero { position:relative; isolation:isolate; width:100%; max-width:none; box-sizing:border-box; padding:76px 64px 104px; margin:0 0 94px; border-radius:28px; background:linear-gradient(120deg,#352117,#70462e); box-shadow:0 24px 50px rgba(53,33,23,.15); }
body.page-personnage .personnage-hero::before { content:""; position:absolute; inset:25px 17% 25px 35%; border:1px solid rgba(246,201,151,.17); border-radius:50%; z-index:-1; pointer-events:none; }
body.page-personnage .personnage-hero-copy { position:relative; z-index:1; max-width:780px; }
body.page-personnage .personnage-hero .personnage-kicker { margin:0 0 20px; color:#f4c68e; font-size:13px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
body.page-personnage .personnage-hero #personnage-page-title { margin:0 0 28px; color:#fffaf3; font-family:Georgia,'Times New Roman',serif; font-size:clamp(36px,5vw,72px); line-height:1.06; letter-spacing:-.035em; font-weight:700; }
body.page-personnage .personnage-hero .personnage-intro { max-width:58ch; margin:0; color:#f1e4d6; font-size:18px; line-height:1.75; }
body.page-personnage .personnage-hero-button { display:inline-flex; align-items:center; gap:18px; min-height:50px; box-sizing:border-box; margin-top:30px; padding:14px 22px; border:1px solid #b5967d; border-radius:999px; background:rgba(255,255,255,.09); color:#fff; text-decoration:none; font-weight:700; }
body.page-personnage .personnage-hero-button:hover { background:rgba(255,255,255,.18); }
body.page-personnage .personnage-hero-button:focus-visible { outline:3px solid #f4c68e; outline-offset:4px; }
body.page-personnage .personnage-hero-art { position:absolute; top:75px; right:40px; color:rgba(246,201,151,.13); font-size:260px; line-height:1; pointer-events:none; z-index:0; }
body.page-personnage .personnage-hero-landmarks { position:absolute; bottom:-48px; left:8%; right:8%; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border:1px solid #e6d8c8; border-radius:18px; background:#fffbf7; box-shadow:0 16px 35px rgba(53,33,23,.12); overflow:hidden; }
body.page-personnage .personnage-hero-landmarks > div { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; padding:22px 14px; text-align:center; }
body.page-personnage .personnage-hero-landmarks > div + div { border-left:1px solid #e6d8c8; }
body.page-personnage .personnage-hero-landmarks strong { font-family:Georgia,serif; font-size:26px; color:#985d32; }
body.page-personnage .personnage-hero-landmarks span { font-size:13px; line-height:1.4; color:#756052; }
body.page-personnage #personnage-exploration { scroll-margin-top:20px; }
@media(max-width:760px) {
 body.page-personnage .personnage-hero { padding:32px 24px; margin-bottom:26px; border-radius:20px; }
 body.page-personnage .personnage-hero #personnage-page-title { font-size:38px; }
 body.page-personnage .personnage-hero .personnage-intro { font-size:16px; }
 body.page-personnage .personnage-hero-art { font-size:150px; top:28px; right:14px; opacity:.6; }
 body.page-personnage .personnage-hero-landmarks { position:relative; left:auto; right:auto; bottom:auto; grid-template-columns:1fr; margin-top:28px; box-shadow:none; }
 body.page-personnage .personnage-hero-landmarks > div { padding:14px; }
 body.page-personnage .personnage-hero-landmarks > div + div { border-left:0; border-top:1px solid #e6d8c8; }
 body.page-personnage .personnage-hero-landmarks strong { font-size:23px; }
}
body.page-personnage .personnage-heading h2 { color:#fff; font-size:clamp(22px,3vw,30px); line-height:1.3; }
@media(max-width:760px) { body.page-personnage .personnage-container { box-sizing:border-box; width:100%; padding:24px 16px; } body.page-personnage .film-search input { font-size:16px; min-width:0; } }