/* Ajouts limités à la mise en avant des deux projets, dans la section existante. */
.pra-focus,.pra-focus * { box-sizing:border-box; }
.pra-focus { margin-top:38px; padding:28px; border:1px solid #6b42262b; border-radius:20px; background:#f6efe7; color:#111; scroll-margin-top:100px; }
.pra-focus-heading { display:flex; justify-content:space-between; align-items:end; gap:24px; margin-bottom:24px; }
.pra-kicker { color:#c8102e; font-size:10px; line-height:1.7; font-weight:800; letter-spacing:.15em; text-transform:uppercase; margin:0 0 10px; }
.pra-focus-heading h3 { margin:0; font:800 clamp(25px,3vw,35px)/1.2 'Playfair Display',Georgia,serif; }
.pra-focus-heading>p { max-width:300px; margin:0; color:#655347; font-size:12px; line-height:1.8; }
.pra-focus-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.pra-focus-card { min-width:0; display:flex; flex-direction:column; padding:26px; background:#fff; border:1px solid #6b42262b; border-top:3px solid #6b4226; border-radius:12px; }
.pra-focus-card h4 { margin:0 0 18px; font:800 clamp(23px,2.4vw,31px)/1.18 'Playfair Display',Georgia,serif; color:#111; }
.pra-focus-card>p:not(.pra-kicker) { margin:0 0 20px; font-size:13px; line-height:1.85; color:#655347; }
.pra-focus-partners { flex:1; margin-top:auto; padding-top:18px; border-top:1px solid #6b422622; }
.pra-focus-partners>span { display:block; font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.1em; color:#6b4226; }
.pra-focus-partners strong { display:block; font-size:14px; margin-top:8px; }
.pra-focus-partners p { font-size:11px; line-height:1.7; color:#655347; margin:10px 0 0; }
.pra-focus-card>a { display:flex; gap:14px; align-items:center; justify-content:space-between; margin-top:22px; padding-top:16px; border-top:1px solid #6b422622; color:#a40d25; min-height:48px; font-size:12px; line-height:1.6; font-weight:800; text-decoration:none; }
.pra-focus-card>a span { font-size:22px; transition:transform .2s; }
.pra-focus-card>a:hover span { transform:translateX(4px); }
.pra-focus a:focus-visible { outline:3px solid #c8102e; outline-offset:4px; }
.pra-focus-support { display:flex; gap:24px; justify-content:space-between; align-items:center; margin-top:24px; }
.pra-focus-support p { font-size:11px; line-height:1.8; max-width:500px; margin:0; color:#655347; }
.pra-focus-support strong { color:#4e2f1a; }
.pra-logos { display:flex; align-items:center; flex-shrink:0; gap:24px; }
.pra-logos a { display:flex; justify-content:center; align-items:center; min-height:62px; }
.pra-logos img { width:auto; height:62px; max-width:140px; object-fit:contain; }
.pra-logos .pra-program-logo { position:relative; width:166px; height:62px; min-height:0; overflow:hidden; }
.pra-logos .pra-program-logo img { position:absolute; width:332px; height:186.75px; max-width:none; left:-88px; top:-5px; object-fit:fill; }
[id^=praosim-] { scroll-margin-top:105px; }
@media(max-width:900px) { .pra-focus-heading,.pra-focus-support { flex-direction:column; align-items:start; gap:16px; } .pra-focus-heading>p { max-width:500px; } }
@media(max-width:640px) { .pra-focus { padding:20px; margin-top:30px; } .pra-focus-grid { grid-template-columns:minmax(0,1fr); gap:16px; } .pra-focus-card { padding:22px; } .pra-logos { gap:18px; max-width:100%; } .pra-logos img { height:52px; max-width:100px; } .pra-logos .pra-program-logo { width:130px; height:52px; } .pra-logos .pra-program-logo img { width:260px; height:146.25px; left:-69px; top:-4px; max-width:none; } }
@media(prefers-reduced-motion:reduce) { .pra-focus-card>a span { transition:none; } }

@media(max-width:360px) { .pra-logos { gap:12px; } .pra-logos>a:first-child img { max-width:85px; } .pra-logos .pra-program-logo { width:120px; } }
/* Empêcher l’adresse de contact d’élargir la grille sur les petits écrans. */
@media(max-width:640px) { #contact .grid>* { min-width:0; } #contact a[href^="mailto:"] { overflow-wrap:anywhere; } }

/* Identité officielle et mouvement : même palette, nouveau rythme. */
.af-brand-logo { width:64px; height:64px; flex-shrink:0; object-fit:contain; background:#fff; border-radius:6px; }
.af-brand-logo-manifesto { width:64px; height:64px; }
.pra-focus { position:relative; padding:36px; border-radius:4px; background:radial-gradient(ellipse at 0 0,#e9d9ca 0,transparent 60%),#f6efe7; overflow:hidden; }
.pra-focus-heading { margin-bottom:30px; }
.pra-focus-heading h3 { max-width:700px; font-size:clamp(28px,3.4vw,44px); letter-spacing:-.035em; }
.pra-focus-grid { gap:26px; align-items:start; }
.pra-focus-card { padding:0; overflow:hidden; border:1px solid #6b422622; border-radius:3px; background:#fdfaf6; box-shadow:0 8px 24px #4e2f1a08; transition:transform .45s cubic-bezier(.2,.65,.2,1),box-shadow .45s; }
.pra-focus-card-2 { margin-top:48px; }
.pra-card-content { display:flex; flex-direction:column; flex:1; padding:28px; }
.pra-card-content h4 { font-size:clamp(25px,2.4vw,33px); }
.pra-card-content>p:not(.pra-kicker) { margin:0 0 24px; font-size:13px; line-height:1.85; color:#655347; }
.pra-card-content>a { display:flex; align-items:center; justify-content:space-between; min-height:48px; margin-top:22px; padding-top:16px; border-top:1px solid #6b422622; color:#a40d25; font-size:12px; line-height:1.65; font-weight:800; text-decoration:none; gap:16px; }
.pra-card-content>a span { font-size:24px; transition:transform .3s; }
.pra-card-content>a:hover span { transform:translateX(6px); }
.pra-art { position:relative; height:208px; overflow:hidden; isolation:isolate; background:radial-gradient(ellipse at 90% 20%,#976c4c55,transparent 70%),#24211c; color:#f6efe7; }
.pra-focus-card-2 .pra-art { background:radial-gradient(ellipse at 85% 10%,#c8102e40,transparent 65%),#24211c; }
.pra-art svg { position:absolute; inset:0; width:100%; height:100%; overflow:visible; }
.pra-art svg path { fill:none; stroke:#b0846375; stroke-width:1; vector-effect:non-scaling-stroke; }
.pra-art svg circle { fill:none; stroke:#f6efe721; stroke-width:1; }
.pra-focus-card-2 .pra-art svg { transform:scaleX(-1); }
.pra-art-number { position:absolute; top:22px; left:26px; font:italic 54px/1 'Playfair Display',Georgia,serif; color:#f6efe745; }
.pra-art-place { position:absolute; right:26px; top:28px; font-size:9px; letter-spacing:.17em; font-weight:700; }
.pra-art-title { position:absolute; bottom:26px; left:26px; font:italic 30px/1.2 'Playfair Display',Georgia,serif; }
.pra-art-dot { position:absolute; width:9px; height:9px; right:28px; bottom:33px; border-radius:50%; background:#c8102e; box-shadow:0 0 0 7px #c8102e26; }
.pra-focus-support { padding-top:25px; border-top:1px solid #6b422633; margin-top:32px; }
@media(hover:hover) and (pointer:fine) { .pra-focus-card:hover { transform:translateY(-7px); box-shadow:0 22px 42px #4e2f1a1a; } }
@media(min-width:901px) { .pra-focus-card { height:calc(100% - 48px); } .pra-focus-card-1 { margin-bottom:48px; } }
@media(max-width:640px) { .af-brand-logo { width:52px; height:52px; } .pra-focus { padding:18px; } .pra-focus-card-2 { margin-top:0; } .pra-card-content { padding:22px; } .pra-art { height:172px; } .pra-art-title { font-size:27px; left:22px; } .pra-art-place { right:20px; letter-spacing:.1em; font-size:8px; } .pra-focus-grid { gap:24px; } }
.motion-toggle { position:fixed; z-index:70; bottom:max(16px,env(safe-area-inset-bottom)); left:16px; display:flex; align-items:center; justify-content:center; gap:9px; min-height:44px; padding:10px 14px; background:#fdfaf6f2; color:#4e2f1a; border:1px solid #6b422640; border-radius:40px; box-shadow:0 3px 12px #1111; font:600 10px Inter,sans-serif; cursor:pointer; }
.motion-toggle>span:first-child { font-size:17px; }
.motion-toggle:focus-visible { outline:3px solid #c8102e; outline-offset:4px; }
@media(max-width:640px) { .motion-toggle { padding:8px; width:44px; } .motion-toggle-label { display:none; } }
@media(prefers-reduced-motion:no-preference) {
 .af-reveal { transition:opacity .8s ease,transform .8s cubic-bezier(.16,1,.3,1); transition-delay:var(--reveal-delay,0ms); }
 .af-reveal.af-await { opacity:0; transform:translateY(24px); }
 .pra-focus-card.af-visible .pra-art svg path { stroke-dasharray:1; stroke-dashoffset:1; animation:pra-trace 1.9s ease forwards; }
 #accueil h1 { animation:af-title-in .9s cubic-bezier(.16,1,.3,1) both; }
 #accueil.radial-light { background-size:130% 130%; animation:af-warmth 14s ease-in-out infinite alternate; }
 .projet-card,.antenne-card { transition:box-shadow .3s ease,border-color .3s ease; }
 .projet-card:hover,.antenne-card:hover { border-color:#b0846390; box-shadow:0 10px 22px #4e2f1a14; }
}
@keyframes pra-trace { to { stroke-dashoffset:0; } }
@keyframes af-title-in { from { opacity:0; transform:translateY(20px); } to { opacity:1; transform:none; } }
@keyframes af-warmth { from { background-position:0% 0%; } to { background-position:100% 80%; } }
html.af-motion-paused *,html.af-motion-paused *::before,html.af-motion-paused *::after { animation-play-state:paused!important; transition:none!important; scroll-behavior:auto!important; }
html.af-motion-paused .af-await { opacity:1!important; transform:none!important; }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto!important; } .pra-focus-card,.pra-card-content>a span { transition:none; } }

html.af-motion-paused #accueil h1 { animation:none!important; }
@media(max-width:640px) {
 #partager .grid>* { min-width:0; }
 #partager a[data-share] { padding:14px 10px; gap:8px; font-size:12px; }
 header nav>a { min-width:0; gap:10px; }
 header nav>a>span { min-width:0; }
 header nav>a .tracking-\[0\.24em\] { letter-spacing:.14em; }
}
