/* Techniforet – design des articles de blog (inspiré de prosdesnuisibles.com/le-blog). */

/* Astra : titre/méta remplacés par le bandeau ; colonne de lecture centrée. */
.single-post .site-content>.ast-container{max-width:none;padding:0;display:block}
.single-post #primary{margin:0;padding:0;width:100%}
.single-post .site-main{max-width:80%;margin:0 auto;padding:0 20px}
.single-post .ast-article-single{padding:0 !important;margin:0 !important;background:transparent !important;border:0;box-shadow:none}
.single-post .entry-header:empty,.single-post .entry-header.ast-no-title{display:none}

/* ---------- Bandeau-titre ---------- */
.tf-phero{background:#f1efe3 url("../../uploads/techniforet-accueil/mapsec-fond2.webp") center bottom/cover no-repeat;border-bottom:1px solid #e3e2d6}
.tf-phero__inner{display:flex;flex-direction:column;align-items:center;text-align:center;padding-top:46px;padding-bottom:40px}
.tf-phero__cat{display:inline-block;background:#1f7a45;color:#fff !important;font-family:var(--tf-font-title);font-weight:700;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;padding:7px 14px;border-radius:999px;margin-bottom:18px;text-decoration:none !important}
.tf-phero__cat:hover{background:var(--tf-green)}
.tf-phero__title{font-family:var(--tf-font-title);font-weight:700;font-size:clamp(28px,3.4vw,44px);line-height:1.15;color:var(--tf-ink);max-width:920px;margin:0 0 24px;text-wrap:balance}
.tf-share{display:flex;gap:12px;list-style:none;margin:0;padding:0}
.tf-share a{display:grid;place-items:center;width:46px;height:46px;border-radius:12px;background:#9A7042;color:#fff !important;font-size:21px;transition:background-color .2s,transform .2s}
.tf-share a:hover,.tf-share a:focus-visible{background:var(--tf-green);transform:translateY(-2px)}

/* ---------- Fil d'Ariane ---------- */
.tf-crumbs{background:#fff;border-bottom:1px solid #eceee9;font-size:13.5px}
.tf-crumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:4px;list-style:none;margin:0;padding:14px 0}
.tf-crumbs li{display:flex;align-items:center;gap:4px;color:#6b746f;min-width:0}
.tf-crumbs li .tf-ico{font-size:13px;color:#9aa39d}
.tf-crumbs a{color:var(--tf-green) !important;text-decoration:none}
.tf-crumbs a:hover{text-decoration:underline}
.tf-crumbs li[aria-current] span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:60ch}

/* ---------- Infos + image ---------- */
.tf-pinfo{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px;margin:34px 0 18px;font-size:14px;color:#5b6560}
.tf-pinfo__meta{display:flex;flex-wrap:wrap;gap:6px 18px;margin:0}
.tf-pinfo__meta span{display:inline-flex;align-items:center;gap:7px}
.tf-pinfo__meta .tf-ico{font-size:16px;color:var(--tf-green-2)}
.tf-pinfo__meta a{color:var(--tf-green) !important;font-weight:600}
.tf-tag{display:inline-flex;align-items:center;gap:6px;background:#eef4ee;color:var(--tf-green) !important;border:1px solid #d7e5d8;border-radius:999px;padding:6px 14px;font-size:13.5px;font-weight:600;text-decoration:none !important;white-space:nowrap}
.tf-tag:hover{background:#e1ede2}
.tf-tag .tf-ico{font-size:14px}
.tf-tag--sm{padding:4px 11px;font-size:12.5px}
.tf-pimg{margin:0 0 30px}
.single-post .tf-pimg img{display:block;width:100%;height:auto !important;max-height:520px;object-fit:cover;border-radius:14px;box-shadow:0 8px 26px rgba(41,50,56,.12)}

/* ---------- Contenu ---------- */
.single-post .entry-content{font-family:var(--tf-font-text);font-size:17px;line-height:1.75;color:#2b3530}
.single-post .entry-content>:not(.tf-pinfo):not(.tf-pimg):not(.tf-author){margin-top:0;margin-bottom:1.15em}
.single-post .entry-content h2{font-family:var(--tf-font-title);font-weight:700;font-size:clamp(22px,2.2vw,27px);line-height:1.25;color:var(--tf-green);margin:1.9em 0 .7em;padding-left:16px;border-left:4px solid #6fae7a}
.single-post .entry-content h3{font-family:var(--tf-font-title);font-weight:700;font-size:20px;line-height:1.3;color:var(--tf-ink);margin:1.6em 0 .55em}
.single-post .entry-content>:not(.tf-pinfo):not(.tf-author) a{color:var(--tf-green);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.single-post .entry-content a:hover{color:#174a2f;text-decoration-thickness:2px}
.single-post .entry-content ul,.single-post .entry-content ol{padding-left:1.4em;margin-left:0}
.single-post .entry-content li{margin-bottom:.4em}
.single-post .entry-content ul li::marker{color:#6fae7a}
.single-post .entry-content ol li::marker{color:var(--tf-green);font-weight:700}
.single-post .entry-content table{width:100%;border-collapse:separate;border-spacing:0;font-size:15px;line-height:1.5;border:1px solid #dfe5de;border-radius:12px;overflow:hidden;margin:1.6em 0}
.single-post .entry-content th{background:var(--tf-green);color:#fff;font-family:var(--tf-font-title);font-weight:600;text-align:left;padding:12px 14px;border:0}
.single-post .entry-content td{padding:11px 14px;border:0;border-top:1px solid #e6ebe5;vertical-align:top}
.single-post .entry-content tbody tr:nth-child(odd){background:#fff}
.single-post .entry-content tbody tr:nth-child(even){background:#f5f8f4}
.single-post .entry-content blockquote{margin:1.8em 0;padding:18px 22px;background:#f4f1e8;border-left:4px solid #9A7042;border-radius:0 12px 12px 0;font-style:italic;color:#3d4642}
.single-post .entry-content blockquote p:last-child{margin-bottom:0}
.single-post .entry-content img{border-radius:12px}
.single-post .entry-content .tf-maillage{background:#f5f8f4;border:1px solid #dfe8de;border-radius:14px;padding:20px 24px;margin:2.2em 0}
.single-post .entry-content .tf-maillage h2{margin-top:0;font-size:19px;border-left:0;padding-left:0}
.single-post .entry-content .tf-maillage ul{margin-bottom:0}

/* ---------- Auteur ---------- */
.tf-author{display:grid;grid-template-columns:auto 1fr;gap:22px;align-items:start;margin:44px 0 56px;padding:26px 28px;background:#eef4ee;border:1px solid #d7e5d8;border-radius:16px}
.tf-author__mono{display:grid;place-items:center;width:74px;height:74px;border-radius:50%;background:var(--tf-green);color:#fff;font-family:var(--tf-font-title);font-weight:700;font-size:26px;letter-spacing:.02em;border:4px solid #fff;box-shadow:0 2px 8px rgba(0,0,0,.08)}
.tf-author p{margin:0}
.tf-author__kicker{font-family:var(--tf-font-title);font-size:11.5px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#5f8a70}
.tf-author__name{font-family:var(--tf-font-title);font-weight:700;font-size:22px;color:var(--tf-ink);margin-top:0 !important}
.tf-author__role{font-size:14.5px;font-weight:600;color:var(--tf-green);margin:2px 0 10px !important}
.tf-author__bio{font-size:15px;line-height:1.65;color:#3d4642}

/* ---------- Articles similaires ---------- */
.tf-similar{background:#f3efe4;padding:52px 0 60px;border-top:1px solid #e6e1d2}
.tf-similar__title{font-family:var(--tf-font-title);font-weight:700;font-size:clamp(24px,2.6vw,32px);text-transform:uppercase;letter-spacing:.04em;text-align:center;color:var(--tf-ink);margin:0 0 32px}
.tf-similar__title span{color:var(--tf-green)}
.tf-similar__list{list-style:none;margin:0 auto;padding:0;max-width:1000px;display:flex;flex-direction:column;gap:22px}
.tf-scard{display:grid;grid-template-columns:300px 1fr;gap:26px;align-items:center;background:#fff;border:1px solid #e6e3d8;border-radius:16px;padding:16px;box-shadow:0 6px 18px rgba(41,50,56,.06)}
.tf-scard__img{display:block;border-radius:12px;overflow:hidden;aspect-ratio:4/3;background:var(--tf-beige)}
.tf-scard__img img{display:block;width:100%;height:100% !important;object-fit:cover;transition:transform .4s}
.tf-scard:hover .tf-scard__img img{transform:scale(1.04)}
.tf-scard__body{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding-right:8px}
.tf-scard__title{font-family:var(--tf-font-title);font-weight:700;font-size:21px;line-height:1.28;margin:0}
.tf-scard__title a{color:var(--tf-ink) !important;text-decoration:none}
.tf-scard__title a:hover{color:var(--tf-green) !important}
.tf-scard__intro{margin:0;font-size:15px;line-height:1.6;color:#5b6560}
.tf-scard__more{display:inline-flex;align-items:center;gap:.5em;color:var(--tf-green) !important;font-weight:600;font-size:15px;text-decoration:none}
.tf-scard__more:hover{text-decoration:underline}
.tf-scard__info{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:4px 0 0;font-size:13px;color:#7a837e}

/* ---------- Responsive ---------- */
@media (max-width:760px){
	.tf-phero__inner{padding-top:32px;padding-bottom:30px}
	.single-post .site-main{max-width:100%}
	.tf-share a{width:42px;height:42px;font-size:19px}
	.single-post .entry-content{font-size:16.5px}
	.tf-author{grid-template-columns:1fr;padding:22px}
	.tf-scard{grid-template-columns:1fr;gap:14px}
	.tf-scard__title{font-size:19px}
}
@media (prefers-reduced-motion:reduce){
	.tf-share a,.tf-scard__img img{transition:none}
}
