/* ==========================================================================
   Espace Dentaire du Forum — pages de contenu & actualités (mêmes codes que les maquettes)
   ========================================================================== */

/* Typographie éditoriale */
.edf-prose{max-width:46em;font-size:clamp(17px,1.35vw,20px);line-height:1.72;text-wrap:pretty}
.edf-prose>*:first-child{margin-top:0}
.edf-prose>*:last-child{margin-bottom:0}
.edf-prose p{margin:0 0 1.1em}
.edf-prose h2{margin:1.8em 0 .55em;font-weight:300;font-size:clamp(32px,3.6vw,60px);line-height:1;letter-spacing:-.04em;text-wrap:balance}
.edf-prose h3{margin:1.6em 0 .5em;font-weight:300;font-size:clamp(24px,2.2vw,36px);line-height:1.1;letter-spacing:-.03em}
.edf-prose h4,.edf-prose h5,.edf-prose h6{margin:1.4em 0 .4em;font-weight:500;font-size:clamp(17px,1.3vw,20px);line-height:1.3}
.edf-prose a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em;transition:color .3s}
.edf-prose a:hover{color:#1A2A5E}
.edf-prose strong,.edf-prose b{font-weight:500}
.edf-prose ul,.edf-prose ol{margin:0 0 1.2em;padding:0;list-style:none;border-top:1px solid color-mix(in srgb,currentColor 14%,transparent)}
.edf-prose li{position:relative;padding:14px 0 14px 27px;border-bottom:1px solid color-mix(in srgb,currentColor 14%,transparent)}
.edf-prose ul>li::before{content:'';position:absolute;left:0;top:calc(14px + .62em);width:9px;height:9px;border-radius:50%;background:#9AA6E8}
.edf-prose ol{counter-reset:edf}
.edf-prose ol>li{counter-increment:edf}
.edf-prose ol>li::before{content:counter(edf);position:absolute;left:0;top:14px;font-size:12px;letter-spacing:.1em;color:var(--muted);line-height:2.2}
.edf-prose li>ul,.edf-prose li>ol{margin:10px 0 0;border-top:0}
.edf-prose blockquote{margin:1.6em 0;padding:clamp(22px,3vw,36px);border-radius:18px;background:color-mix(in srgb,#9AA6E8 22%,transparent);font-weight:300;font-size:clamp(22px,2vw,30px);line-height:1.3;letter-spacing:-.02em}
.edf-prose blockquote p:last-child{margin:0}
.edf-prose blockquote cite{display:block;margin-top:14px;font-style:normal;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.edf-prose img,.edf-prose video,.edf-prose iframe{max-width:100%;height:auto;border-radius:18px}
.edf-prose figure{margin:1.6em 0}
.edf-prose figcaption{margin-top:10px;font-size:13px;color:var(--muted)}
.edf-prose hr{margin:2.4em 0;border:0;border-top:1px solid color-mix(in srgb,currentColor 14%,transparent)}
.edf-prose table{width:100%;border-collapse:collapse;font-size:15px;margin:1.4em 0}
.edf-prose th,.edf-prose td{padding:12px 10px;text-align:left;border-bottom:1px solid color-mix(in srgb,currentColor 14%,transparent)}
.edf-prose th{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:400;color:var(--muted)}
.edf-prose code{font-size:.9em;padding:.1em .35em;border-radius:6px;background:color-mix(in srgb,currentColor 7%,transparent)}
.edf-prose .wp-block-button__link,.edf-prose .wp-element-button{display:inline-flex;align-items:center;gap:14px;padding:16px 24px;border-radius:999px;background:#0E1740;color:#FBF8F2;font-size:15px;font-weight:500;text-decoration:none;transition:gap .35s,background .35s}
.edf-prose .wp-block-button__link:hover,.edf-prose .wp-element-button:hover{gap:20px;background:#1A2A5E;color:#FBF8F2}
.edf-prose .alignwide{max-width:none}
.edf-prose .aligncenter{margin-left:auto;margin-right:auto;display:block}
.edf-prose .alignleft{float:left;margin:.3em 1.4em 1em 0}
.edf-prose .alignright{float:right;margin:.3em 0 1em 1.4em}

/* Cartes d'actualités */
.edf-card .edf-card-more{transition:padding .5s cubic-bezier(.16,1,.3,1)}
.edf-card:hover .edf-card-more{padding-left:8px}

/* Pagination en pilules */
.edf-pager{display:flex;flex-wrap:wrap;gap:8px;margin-top:clamp(40px,7vh,72px)}
.edf-pager a,.edf-pager span{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:0 16px;box-sizing:border-box;border-radius:999px;border:1px solid color-mix(in srgb,currentColor 22%,transparent);font-size:14px;transition:background .35s,color .35s,border-color .35s}
.edf-pager a:hover{background:color-mix(in srgb,#9AA6E8 30%,transparent)}
.edf-pager .current{background:#0E1740;border-color:#0E1740;color:#FBF8F2}
.edf-pager .dots{border:0}

/* Pages applicatives (shortcodes de l'ancien plugin) */
.edf-app{min-height:60vh}
