/* Présentation progressive : contenus et liens restent disponibles sans JS. */
.pc-community #main{min-width:0;color:#16222e}
.pc-community #main p,.pc-community #main li{line-height:1.75;overflow-wrap:anywhere}
.pc-community #main .view-title{line-height:1.25;margin:22px 0;font-size:clamp(1.8rem,4vw,2.6rem);letter-spacing:-.035em}
.pc-community #main h1,.pc-community #main h2,.pc-community #main h3{line-height:1.35;overflow-wrap:anywhere;text-transform:none;color:#16222e;font-weight:700}
.pc-community #main table{display:block;max-width:100%;overflow-x:auto;margin-left:0!important;margin-right:0!important}
.pc-community #main img{max-width:100%;height:auto}
.pc-community #main pre{max-width:100%;overflow-x:auto;white-space:pre}
.pc-community #main a:focus-visible,.pc-community #main button:focus-visible,.pc-community #main input:focus-visible,.pc-community #main textarea:focus-visible{outline:3px solid #1b7e3c;outline-offset:4px}
.pc-skip{position:fixed;top:-100px;left:12px;background:#16222e;color:white;padding:12px 20px;z-index:99999}
.pc-skip:focus{top:10px;color:white}
.pc-hub{padding:clamp(20px,4vw,34px);margin:22px 0 30px;border:1px solid rgba(0,0,0,.13);border-radius:12px;background:#fff8f3;position:relative}
.pc-hub .pc-kicker{font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#94350d;margin:0 0 10px}
.pc-hub h2{font-size:clamp(1.35rem,3vw,1.9rem);margin:0 0 12px}
.pc-hub p{max-width:70ch;margin:10px 0 18px}
.pc-hub-links{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0 0}
.pc-hub-links a,.pc-action{display:inline-flex;align-items:center;padding:10px 15px;border:1px solid #e2571e;border-radius:9px;background:white;color:#94350d;font-weight:700;text-decoration:none;cursor:pointer;line-height:1.4}
.pc-hub-links a:hover,.pc-action:hover{background:#fff0e6;color:#772a09}
.pc-community #main .blog-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:22px 0}
.pc-community #main .blog-items .blog-item{width:auto;min-width:0;margin:0;border:1px solid rgba(0,0,0,.13);border-radius:12px;overflow:hidden;box-shadow:0 5px 18px rgba(0,0,0,.04);background:white;display:flex;flex-direction:column}
.pc-community #main .blog-items .card-object{display:block;aspect-ratio:16/9;overflow:hidden;background:#f4f4f4}
.pc-community #main .blog-items .card-object img{width:100%!important;height:100%!important;object-fit:cover}
.pc-community #main .blog-items .card-body{padding:20px;flex:1}
.pc-community #main .blog-items .media-heading{font-size:1.12rem;font-weight:700;line-height:1.45;margin-bottom:12px}
.pc-community #main .blog-items .media-heading a{color:#16222e;text-decoration:none}
.pc-community #main .blog-items .media-heading a:hover{color:#94350d;text-decoration:underline}
.pc-community #main .blog-items .card-footer{padding:0 20px 20px;background:white;border:0}
.pc-community #main .meta{font-size:.86rem;color:#595959}
.pc-community #main .forum-categories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:0}
.pc-community #main .forum-categories>.media{border:1px solid rgba(0,0,0,.13);border-radius:12px;padding:20px;margin:0;background:white;display:block}
.pc-community #main .forum-categories>.media .media-object{float:right;max-width:70px;margin:0 0 12px 12px}
.pc-community #main .forum-categories .d-md-flex{display:block!important}
.pc-community #main .forum-categories h3{font-size:1.15rem;margin:0 0 12px}
.pc-community #main .forum-topics>.media{padding:20px;border:1px solid rgba(0,0,0,.13);border-radius:12px;margin:15px 0;min-width:0}
.pc-community #main .forum-topics .media-body{min-width:0}
.pc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:20px 0 32px}
.pc-card{display:flex;flex-direction:column;gap:10px;padding:22px;border:1px solid rgba(0,0,0,.13);border-radius:12px;background:white;min-width:0}
.pc-card h3{font-size:1.15rem;margin:0}.pc-card p{margin:0}.pc-card>a:last-child{margin-top:auto;font-weight:700;color:#94350d}
.pc-chip{display:inline-block;font-size:.76rem;line-height:1.5;padding:4px 9px;border-radius:20px;background:#f4f4f4;color:#424242;margin-right:4px}
.pc-filter{padding:20px;border:1px solid rgba(0,0,0,.13);border-radius:12px;background:#f7f8f7;margin:24px 0}
.pc-filter label{display:block;font-weight:700;margin-bottom:8px}.pc-filter input{display:block;width:100%;padding:12px;border:1px solid #767676;border-radius:8px;font:inherit;background:white}
.pc-filter p{font-size:.9rem;margin:10px 0 0}.pc-filter[hidden],.pc-card[hidden],.pc-community #main .blog-item[hidden]{display:none!important}
.pc-notice{padding:16px 20px;border-left:4px solid #e2571e;background:#fff8f3;border-radius:0 9px 9px 0;margin:22px 0}
.pc-guide{max-width:76ch;margin:22px auto}.pc-guide h2{margin-top:34px}.pc-guide details{border:1px solid rgba(0,0,0,.13);padding:16px;border-radius:10px;margin:14px 0}.pc-guide summary{font-weight:700;cursor:pointer}.pc-guide details p{margin:15px 0 0}
.pc-draft{padding:22px;border:1px solid rgba(0,0,0,.13);border-radius:12px;margin:24px 0;background:#f7f8f7}
.pc-draft label{display:block;margin:18px 0 6px;font-weight:700}.pc-draft input,.pc-draft textarea{display:block;width:100%;max-width:100%;padding:12px;border:1px solid #767676;border-radius:8px;font:inherit;background:white}.pc-draft textarea{min-height:100px}.pc-draft output{display:block;margin:14px 0;line-height:1.6}.pc-draft .pc-hub-links{margin-top:20px}
.pc-reading{margin:20px 0;padding:18px 22px;background:#f7f8f7;border-radius:10px;border:1px solid rgba(0,0,0,.13)}.pc-reading summary{font-weight:700;cursor:pointer}.pc-reading ol{padding-left:22px;margin:12px 0 0}
.pc-new-quiz .pc-quiz fieldset{border:0;margin:0;padding:0;min-width:0}.pc-new-quiz .pc-quiz legend{float:none;width:100%;font-size:1.05rem;font-weight:700;margin-bottom:15px;line-height:1.6}.pc-new-quiz .pc-quiz .media-body{min-width:0}
.pc-new-quiz .pc-quiz .custom-control-label{line-height:1.6}.pc-new-quiz .pc-quiz .custom-control-input:focus+label{outline:2px solid #1b7e3c;outline-offset:4px}
@media(max-width:650px){.pc-community #main .blog-items,.pc-community #main .forum-categories,.pc-grid{grid-template-columns:1fr}.pc-hub{padding:20px}.pc-community #main .forum-topics>.media{padding:14px}.pc-community #main .forum-topics .media-object{max-width:45px}.pc-card{padding:18px}.pc-draft{padding:16px}.pc-community #main .introduction img{max-width:40%;height:auto!important}.pc-new-quiz .pc-quiz li.media{padding:14px 10px}}
@media(prefers-reduced-motion:reduce){.pc-community *{scroll-behavior:auto!important;transition:none!important}}
@media print{.pc-filter,.pc-skip,.pc-draft{display:none}.pc-community #main .blog-items,.pc-grid{display:block}}


/* ------------------------------------------------------------------
   Blog : une seule forme de carte.
   La page melangeait trois formats herites (carte E-monsite, carte
   horizontale ancienne, carte sans image) et laissait une publicite
   s'inserer dans une carte. Les hauteurs allaient de 117 a 1134 px.
   ------------------------------------------------------------------ */

.pc-blog #main .blog-items {
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  gap: 20px;
  margin: 18px 0 0;
}

.pc-blog #main .blog-items .blog-item {
  display: grid;
  grid-template-rows: auto 1fr auto;   /* image, corps, pied alignes */
  align-content: start;
  /* Le theme pose flex et max-width:calc(33.33% - 16px) sur .card-deck.
     Dans une grille, ces 33 % se calculent sur la cellule et reduisent la
     carte au tiers de sa place. On rend la main a la grille. */
  width: auto;
  max-width: none;
  min-width: 0;
  flex: none;
  margin: 0;
}

/* bandeau d'illustration, toujours au meme format */
.pc-blog #main .blog-items .card-object {
  display: block;
  height: auto;
  aspect-ratio: 16 / 9;
  background: #f1f3f5;
}
.pc-blog #main .blog-items .card-object img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
}

.pc-blog #main .blog-items .card-body { padding: 16px 18px 12px; }

/* titre sur deux lignes au plus : c'est lui qui deformait les rangees */
.pc-blog #main .blog-items .media-heading {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-size: 1.02rem;
  line-height: 1.4;
  margin-bottom: 8px;
  min-height: 2.8em;
}

/* chapeau eventuel : trois lignes au plus */
.pc-blog #main .blog-items .description,
.pc-blog #main .blog-items .card-body > p:not(.media-heading):not(.meta) {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-size: .89rem;
  line-height: 1.6;
  margin: 0 0 8px;
  color: #4a5a6a;
}

.pc-blog #main .blog-items .meta,
.pc-blog #main .blog-items .meta-date {
  font-size: .8rem;
  color: #6b7f92;
  margin: 0;
}

.pc-blog #main .blog-items .card-footer { padding: 0 18px 16px; }
.pc-blog #main .blog-items .card-footer .btn { font-size: .84rem; }

/* aucune publicite a l'interieur d'une carte */
.pc-blog #main .blog-items .blog-item [class*="gc-ad"] { display: none !important; }

/* ancien format horizontal (div.row.no-gutters) ramene au format carte :
   la colonne image devient le bandeau, la colonne texte devient le corps */
.pc-blog #main .blog-items .row.no-gutters {
  display: grid;
  grid-template-rows: auto 1fr;
  flex-wrap: nowrap;
  margin: 0;
  height: 100%;
}
.pc-blog #main .blog-items .row.no-gutters > [class*="col"] {
  max-width: 100%;
  flex: none;
  padding: 0;
  display: block;
}
.pc-blog #main .blog-items .item-img-col .card-object {
  aspect-ratio: 16 / 9;
  height: auto;
}
.pc-blog #main .blog-items .metas { font-size: .8rem; color: #6b7f92; margin: 0 0 6px; }

/* carte sans illustration, quel que soit le format : bandeau de
   remplacement pour que la rangee garde sa hauteur */
.pc-blog #main .blog-items .blog-item:not(:has(img))::before {
  content: "";
  display: block;
  aspect-ratio: 16 / 9;
  background: linear-gradient(135deg, #fff2ea 0%, #ffe3d2 100%);
  border-bottom: 1px solid rgba(0, 0, 0, .08);
}

/* en-tete allege : la recherche se rapproche des articles */
.pc-blog #main .pc-hub { padding: 20px 24px; margin-bottom: 18px; }
.pc-blog #main .pc-hub h2 { font-size: clamp(1.25rem, 2.6vw, 1.6rem); }
.pc-blog #main .pc-hub p { margin-bottom: 12px; }
.pc-blog #main .pc-filter { margin: 0 0 6px; }

@media (max-width: 575.98px) {
  .pc-blog #main .blog-items { grid-template-columns: 1fr; gap: 16px; }
  .pc-blog #main .blog-items .media-heading { min-height: 0; }
}
