/* MDC · Titre Animé — moderne épuré */
.mdc-ta{ --mdc-accent:#b8252e; display:flex; flex-direction:column; }

/* Sur-titre : 3 styles */
.mdc-ta-eyebrow{ text-transform:uppercase; letter-spacing:3px; font-size:13px; font-weight:700; color:var(--mdc-accent); margin-bottom:14px; }
.mdc-ta-eyebrow.is-line{ display:inline-flex; align-items:center; gap:10px; }
.mdc-ta-eyebrow.is-line::before{ content:''; width:32px; height:2px; background:var(--mdc-accent); }
.mdc-ta-eyebrow.is-badge{ display:inline-block; background:rgba(184,37,46,.1); padding:7px 16px; border-radius:30px; letter-spacing:2px; }
.mdc-ta-eyebrow.is-simple{ display:inline-block; }

.mdc-ta-title{ margin:0 0 16px; line-height:1.12; font-weight:800; letter-spacing:-.01em; }
.mdc-ta-hl{ color:var(--mdc-accent); }
.mdc-ta-subtitle{ margin:0; font-size:1.05rem; line-height:1.6; max-width:620px; }
.mdc-ta[style*="center"] .mdc-ta-subtitle{ margin-left:auto; margin-right:auto; }

/* reveal par mots */
.mdc-ta--reveal .mdc-ta-word{ display:inline-block; opacity:0; transform:translateY(.6em); }
.mdc-ta--reveal.is-in .mdc-ta-word{ animation:mdcTaWord var(--mdc-ta-dur,.7s) cubic-bezier(.2,.7,.2,1) forwards; animation-delay:calc(var(--mdc-ta-i) * var(--mdc-ta-stagger,.08s)); }
@keyframes mdcTaWord{ to{ opacity:1; transform:none; } }

/* fade-up */
.mdc-ta--fade-up .mdc-ta-title{ opacity:0; transform:translateY(28px); }
.mdc-ta--fade-up.is-in .mdc-ta-title{ animation:mdcTaFade var(--mdc-ta-dur,.7s) cubic-bezier(.2,.7,.2,1) forwards; }
@keyframes mdcTaFade{ to{ opacity:1; transform:none; } }

/* slide-in latéral */
.mdc-ta--slide-in .mdc-ta-title{ opacity:0; transform:translateX(-40px); }
.mdc-ta--slide-in.is-in .mdc-ta-title{ animation:mdcTaSlide var(--mdc-ta-dur,.7s) cubic-bezier(.2,.7,.2,1) forwards; }
@keyframes mdcTaSlide{ to{ opacity:1; transform:none; } }

/* dégradé animé */
.mdc-ta--gradient .mdc-ta-hl{ background:linear-gradient(90deg,var(--mdc-accent),#080a0a,var(--mdc-accent)); background-size:200% auto; -webkit-background-clip:text; background-clip:text; color:transparent; }
.mdc-ta--gradient.loop-on .mdc-ta-hl{ animation:mdcTaGrad 4s linear infinite; }
@keyframes mdcTaGrad{ to{ background-position:200% center; } }

/* machine à écrire */
.mdc-ta--typewriter .mdc-ta-title{ opacity:0; }
.mdc-ta--typewriter.is-in .mdc-ta-title{ opacity:1; }
.mdc-ta--typewriter.is-in .mdc-ta-title .mdc-ta-type{ border-right:2px solid var(--mdc-accent); white-space:nowrap; overflow:hidden; display:inline-block; vertical-align:bottom; animation:mdcTaType var(--mdc-ta-dur,2s) steps(40,end) forwards, mdcTaCaret .7s step-end infinite; }
@keyframes mdcTaType{ from{ width:0; } to{ width:100%; } }
@keyframes mdcTaCaret{ 50%{ border-color:transparent; } }

/* soulignement */
.mdc-ta--underline .mdc-ta-hl{ position:relative; display:inline-block; }
.mdc-ta--underline .mdc-ta-hl::after{ content:''; position:absolute; left:0; right:0; bottom:-2px; height:.32em; background:var(--mdc-accent); opacity:.32; transform:scaleX(0); transform-origin:left; transition:transform .6s cubic-bezier(.2,.7,.2,1) .2s; border-radius:3px; }
.mdc-ta--underline.uline-line .mdc-ta-hl::after{ height:3px; opacity:1; bottom:-1px; }
.mdc-ta--underline.uline-double .mdc-ta-hl::after{ height:6px; opacity:1; bottom:-3px; background:none; border-top:2px solid var(--mdc-accent); border-bottom:2px solid var(--mdc-accent); border-radius:0; }
.mdc-ta--underline.is-in .mdc-ta-hl::after{ transform:scaleX(1); }
