/* enseignant.css — Enseignant·e : tableau noir + craie, bois clair, salle de classe */
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:'Lora','Source Serif Pro',Georgia,serif;line-height:1.7;color:#2d2418;background:#f1ead8;background-image:linear-gradient(180deg,#ebe3cc 0%,#f1ead8 30%,#f1ead8 100%);min-height:100vh;font-size:18px}
.ens-wrap{max-width:1080px;margin:0 auto;padding:30px 24px 60px}
.back-link{display:inline-block;margin-bottom:22px;color:#5a4a30;text-decoration:none;font-style:italic;font-size:1em;border-bottom:1px solid #5a4a30;padding-bottom:1px}
.back-link:hover{color:#1f3a2a}

/* Hero = tableau noir avec craie */
.ens-hero{background:#2a3530;background-image:radial-gradient(ellipse at 30% 30%,#34403a,#2a3530 70%);border:14px solid #8b6f3a;border-radius:6px;box-shadow:inset 0 0 80px rgba(0,0,0,.3),0 16px 36px rgba(60,50,30,.25);padding:54px 48px 50px;margin-bottom:34px;position:relative}
.ens-hero::before{content:'';position:absolute;bottom:-14px;left:30px;right:30px;height:8px;background:#a8884a;border-radius:0 0 4px 4px}
.ens-hero .surtitle{font-family:'Patrick Hand','Caveat',cursive;color:#a8c4b0;font-size:1.4em;letter-spacing:2px;margin-bottom:8px;text-shadow:1px 1px 0 rgba(0,0,0,.2)}
.ens-hero h1{font-family:'Caveat','Patrick Hand',cursive;font-size:5.2em;font-weight:700;color:#f5f1d8;line-height:1;letter-spacing:1px;margin:6px 0 14px;text-shadow:2px 2px 0 rgba(0,0,0,.2)}
.ens-hero h1::after{content:' ✎';color:#e8c878;font-size:.5em;vertical-align:.4em}
.ens-hero .tagline{font-family:'Patrick Hand',cursive;font-size:1.5em;color:#e8e4cc;max-width:700px;line-height:1.5;text-shadow:1px 1px 0 rgba(0,0,0,.2)}

.section{background:#fbf6e6;border:1px solid #d4c8a0;padding:28px 36px;margin-bottom:22px;box-shadow:0 4px 12px rgba(60,50,30,.07);position:relative}
.section::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#8b6f3a,#a8884a)}
.section h2{font-size:1.7em;font-weight:700;color:#1f3a2a;margin-bottom:14px;padding-bottom:8px;border-bottom:1px dashed #8b6f3a;letter-spacing:-.4px}
.section h2::before{content:'✎ ';color:#8b6f3a}
.section h3{font-size:1.15em;color:#8b6f3a;margin:18px 0 8px;font-weight:600;font-family:'Caveat',cursive;font-size:1.4em}
.section p{margin-bottom:12px;color:#2d2418}
.section ul,.section ol{margin:10px 0 14px 26px}.section li{margin-bottom:6px;color:#2d2418}
.section strong{color:#1f3a2a;font-weight:700}.section em{color:#8b6f3a;font-style:italic}

.timeline{border-left:2px solid #8b6f3a;padding-left:22px;margin:18px 0}
.timeline-event{position:relative;padding-bottom:14px}
.timeline-event::before{content:'';position:absolute;left:-28px;top:8px;width:12px;height:12px;background:#1f3a2a;border:3px solid #fbf6e6;border-radius:50%;box-shadow:0 0 0 1px #1f3a2a}
.timeline-event .date{display:inline-block;background:#1f3a2a;color:#f5f1d8;padding:1px 9px;margin-right:8px;font-size:.78em;letter-spacing:1px;font-family:'Lora',serif;font-weight:600;border-radius:3px}

.section table{width:100%;border-collapse:collapse;margin:14px 0;font-size:.96em;background:#f5edd0;border:1px solid #8b6f3a}
.section th{background:#1f3a2a;color:#f5f1d8;padding:10px 14px;text-align:left;font-weight:600}
.section td{padding:9px 14px;border-bottom:1px solid #d4c8a0}.section tr:last-child td{border-bottom:none}

.note-craie{background:#2a3530;color:#f5f1d8;border-radius:4px;padding:18px 24px;margin:18px 0;font-family:'Caveat',cursive;font-size:1.35em;line-height:1.5;text-shadow:1px 1px 0 rgba(0,0,0,.3);box-shadow:0 4px 12px rgba(0,0,0,.15);position:relative}
.note-craie::before{content:'';position:absolute;top:-5px;left:20px;width:40px;height:5px;background:#fff;border-radius:0 0 4px 4px}

.callout{background:#fdf6dd;border-left:4px solid #8b6f3a;padding:14px 18px;margin:16px 0}.callout strong{color:#1f3a2a}

.specs{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:16px 0}
.spec{background:#f5edd0;border:1px solid #d4c8a0;border-top:3px solid #1f3a2a;padding:14px 18px;border-radius:4px}
.spec h4{color:#1f3a2a;font-size:1em;margin-bottom:4px}.spec p{font-size:.9em;color:#5a4a30;margin:0}

@media(max-width:700px){.ens-hero h1{font-size:3.3em}.ens-hero{padding:36px 24px 32px}.section{padding:22px 22px}.section h2{font-size:1.4em}}
