/*
 * MEUBLORAMA — BLOG
 * Version 1.1.0 — 02/10/2026
 * Destination : themes/rb_davici/assets/css/blog.css
 * Charger après les feuilles du thème et custom.css.
 * Périmètre : contenu des pages HiPresta Blog (.hi-blog-page #wrapper).
 * Le bloc blog de la page d'accueil conserve ses styles #BLOG.
 * Les textes, traductions, balises SEO et comportements restent gérés par
 * HiPresta Blog / Creative Elements : cette feuille ne les remplace pas.
 */

/* 1. Palette et conteneurs */
.hi-blog-page #wrapper {
  --blog-onyx: #20201d;
  --blog-champagne: #d7bd91;
  --blog-accent: #80653b;
  --blog-paper: #f8f6f2;
  --blog-text: #363632;
  --blog-muted: #69675f;
  --blog-border: #e7e2d9;
  --blog-font: "Jost", Arial, sans-serif;
  --blog-width: 1400px;
  color: var(--blog-text);
  background: #fff;
  font-family: var(--blog-font);
  padding-bottom: clamp(40px, 5vw, 80px);
}

.hi-blog-page #wrapper > .container,
.hi-blog-page #wrapper > .breadcrumb > .container {
  width: 100%;
  max-width: var(--blog-width);
  padding-right: clamp(18px, 3vw, 40px);
  padding-left: clamp(18px, 3vw, 40px);
  margin-right: auto;
  margin-left: auto;
}

.hi-blog-page #wrapper #content-wrapper,
.hi-blog-page #wrapper #main {
  min-width: 0;
}

.hi-blog-page #wrapper #content {
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  background: transparent;
}

.hi-blog-page #wrapper .breadcrumb {
  margin: 0;
  padding: 22px 0 30px;
  background: transparent;
  border: 0;
  color: var(--blog-muted);
  font-size: 13px;
  line-height: 1.6;
}

.hi-blog-page #wrapper .breadcrumb ol {
  display: flex;
  flex-wrap: wrap;
  row-gap: 6px;
  margin: 0;
  padding: 0;
}

.hi-blog-page #wrapper .breadcrumb li {
  min-width: 0;
  overflow-wrap: anywhere;
}

.hi-blog-page #wrapper .breadcrumb a {
  color: var(--blog-muted);
  text-decoration: none;
}

.hi-blog-page #wrapper .breadcrumb a:hover {
  color: var(--blog-accent);
}

.hi-blog-page #wrapper .hi-module-hide,
.hi-blog-page #wrapper [hidden] {
  display: none !important;
}

.hi-blog-page #wrapper :is(a, button, input, textarea, select):focus-visible {
  outline: 2px solid var(--blog-accent);
  outline-offset: 4px;
}

/* 2. Liste des articles : 3 / 2 / 1 colonnes */
.hi-blog-page #blog_post_container {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 38px 28px;
  width: 100%;
  margin: 0;
  padding: 0;
}

.hi-blog-page #blog_post_container > .blog-post {
  float: none;
  width: auto;
  min-width: 0;
  max-width: none;
  margin: 0;
  padding: 0;
}

.hi-blog-page #blog_post_container .blog-post-item {
  display: flex;
  flex-direction: column;
  height: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
}

.hi-blog-page #blog_post_container .post-image-block {
  position: relative;
  margin: 0 0 22px;
  overflow: hidden;
  background: var(--blog-paper);
  border-radius: 12px;
}

.hi-blog-page #blog_post_container .hi-blog-desc-image-hover,
.hi-blog-page #blog_post_container .hi-blog-desc-image-hover > a {
  display: block;
  width: 100%;
}

.hi-blog-page #blog_post_container .post-image-block img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  object-position: center;
  margin: 0;
  transition: transform 450ms ease;
}

.hi-blog-page #blog_post_container .blog-icon-block {
  position: absolute;
  inset: auto auto 12px 12px;
  display: flex;
  align-items: center;
  gap: 8px;
  width: auto;
  margin: 0;
  padding: 0;
  background: transparent;
  transform: none;
}

.hi-blog-page #blog_post_container .blog-icon-block > :is(a, i) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  margin: 0;
  color: var(--blog-onyx);
  background: rgba(255, 255, 255, .94);
  border-radius: 50%;
  text-decoration: none;
}

.hi-blog-page #blog_post_container .post-info-block {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-width: 0;
  margin: 0;
  padding: 0;
}

.hi-blog-page #blog_post_container .post-title h2 {
  margin: 0 0 14px;
  color: var(--blog-onyx);
  font-family: var(--blog-font);
  font-size: clamp(21px, 1.8vw, 25px);
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: -.025em;
  text-transform: none;
  overflow-wrap: break-word;
}

.hi-blog-page #blog_post_container .post-title a {
  color: inherit;
  text-decoration: none;
  transition: color 180ms ease;
}

.hi-blog-page #blog_post_container .post-title a:hover {
  color: var(--blog-accent);
}

.hi-blog-page #blog_post_container .post-desc {
  margin: 0 0 20px;
  color: var(--blog-muted);
  font-size: 15px;
  line-height: 1.75;
}

.hi-blog-page #blog_post_container .post-desc:empty {
  display: none;
}

/* 3. Dates et compteurs : une ligne souple */
.hi-blog-page #wrapper .post-published {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 18px;
  margin: 0 0 22px;
  padding: 0;
  color: var(--blog-muted);
  font-family: var(--blog-font);
  font-size: 13px;
  line-height: 1.5;
}

.hi-blog-page #wrapper .post-published > *,
.hi-blog-page #wrapper .post-published .hi-blog-post-like {
  display: inline-flex;
  float: none;
  align-items: center;
  gap: 7px;
  margin: 0;
  padding: 0;
  color: inherit;
  text-decoration: none;
}

.hi-blog-page #wrapper .post-published::before,
.hi-blog-page #wrapper .post-published::after {
  content: none;
}

.hi-blog-page #wrapper .post-published .hiblog-icon {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
}

/* 4. Boutons : onyx, texte blanc, angles droits */
.hi-blog-page #wrapper .post-read-more-button,
.hi-blog-page #blog_desc_container .elementor-button,
.hi-blog-page #wrapper #blog-add-comment {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 46px;
  max-width: 100%;
  padding: 13px 22px;
  border: 0;
  border-radius: 0;
  color: #fff;
  background: var(--blog-onyx);
  box-shadow: none;
  font-family: var(--blog-font);
  font-size: 14px;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: .015em;
  text-align: center;
  text-decoration: none;
  text-transform: none;
  white-space: normal;
  cursor: pointer;
  transition: background-color 200ms ease, color 200ms ease;
}

.hi-blog-page #blog_post_container .post-read-more-button {
  align-self: flex-start;
  margin-top: auto;
}

.hi-blog-page #wrapper .post-read-more-button:hover,
.hi-blog-page #blog_desc_container .elementor-button:hover,
.hi-blog-page #wrapper #blog-add-comment:hover {
  color: var(--blog-onyx);
  background: var(--blog-champagne);
}

/* 5. Pagination */
.hi-blog-page #wrapper .hiblog-pagination {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin: 52px 0 0;
  padding: 0;
  list-style: none;
}

.hi-blog-page #wrapper .hiblog-pagination li {
  margin: 0;
  padding: 0;
}

.hi-blog-page #wrapper .hiblog-pagination a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
  padding: 8px 12px;
  border: 1px solid var(--blog-border);
  color: var(--blog-onyx);
  background: #fff;
  font-size: 15px;
  text-decoration: none;
}

.hi-blog-page #wrapper .hiblog-pagination__active a,
.hi-blog-page #wrapper .hiblog-pagination a:hover {
  border-color: var(--blog-onyx);
  color: #fff;
  background: var(--blog-onyx);
}

/* 6. Article : couverture et titre */
.hi-blog-page #blog_desc_container {
  width: 100%;
  min-width: 0;
}

.hi-blog-page #blog_desc_container .blog-desc-image-block {
  margin: 0 0 38px;
  overflow: hidden;
  background: var(--blog-paper);
  border-radius: 12px;
}

.hi-blog-page #blog_desc_container .blog-desc-image-block img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  object-position: center;
  margin: 0;
}

.hi-blog-page #blog_desc_container .blog-desc-title {
  max-width: 1040px;
  margin: 0 auto 24px;
  color: var(--blog-onyx);
  font-family: var(--blog-font);
  font-size: clamp(30px, 3.6vw, 50px);
  font-weight: 500;
  line-height: 1.15;
  letter-spacing: -.035em;
  text-transform: none;
  overflow-wrap: break-word;
}

.hi-blog-page #blog_desc_container .blog-desc-content > .post-published {
  max-width: 1040px;
  margin: 0 auto 38px;
  padding-bottom: 24px;
  border-bottom: 1px solid var(--blog-border);
}

.hi-blog-page #blog_desc_container .blog-desc-info-block {
  max-width: 1040px;
  margin: 0 auto;
}

/* 7. Lecture : contenu natif et widgets texte Creative Elements */
.hi-blog-page #blog_desc_container .hiblog-content {
  color: var(--blog-text);
  font-family: var(--blog-font);
  font-size: 17px;
  line-height: 1.85;
  overflow-wrap: break-word;
}

.hi-blog-page #blog_desc_container .hiblog-content :is(h1, h2, h3, h4) {
  color: var(--blog-onyx);
  font-family: var(--blog-font);
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: -.025em;
  text-transform: none;
  scroll-margin-top: 150px;
}

.hi-blog-page #blog_desc_container .hiblog-content h1,
.hi-blog-page #blog_desc_container .hiblog-content h2 {
  margin: 38px 0 18px;
  font-size: clamp(25px, 2.5vw, 34px);
}

.hi-blog-page #blog_desc_container .hiblog-content h3 {
  margin: 28px 0 14px;
  font-size: clamp(21px, 2vw, 25px);
}

.hi-blog-page #blog_desc_container .hiblog-content h4 {
  margin: 24px 0 12px;
  font-size: 20px;
}

.hi-blog-page #blog_desc_container .hiblog-content p {
  margin-bottom: 1.2em;
}

.hi-blog-page #blog_desc_container .hiblog-content > :is(p, ul, ol, blockquote) {
  max-width: 76ch;
  margin-right: auto;
  margin-left: auto;
}

/* Corrections ciblées pour les paragraphes copiés depuis Word.
   !important est nécessaire face aux styles inline observés sur MsoNormal. */
.hi-blog-page #blog_desc_container .hiblog-content p.MsoNormal {
  margin: 0 0 1.2em !important;
  background: transparent !important;
  font-family: var(--blog-font) !important;
  font-size: 17px !important;
  line-height: 1.85 !important;
}

.hi-blog-page #blog_desc_container .hiblog-content p.MsoNormal span {
  color: inherit !important;
  font-family: inherit !important;
  font-size: inherit !important;
  line-height: inherit !important;
}

.hi-blog-page #blog_desc_container .hiblog-content :is(ul, ol) {
  padding-left: 1.4em;
}

.hi-blog-page #blog_desc_container .hiblog-content li {
  margin-bottom: .5em;
}

.hi-blog-page #blog_desc_container .hiblog-content :is(p, li) a {
  color: var(--blog-accent);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.hi-blog-page #blog_desc_container .hiblog-content img {
  max-width: 100%;
  height: auto;
}

.hi-blog-page #blog_desc_container .hiblog-content iframe,
.hi-blog-page #blog_desc_container .hiblog-content video {
  max-width: 100%;
}

.hi-blog-page #blog_desc_container .hiblog-content blockquote {
  padding: 22px 26px;
  border-left: 3px solid var(--blog-champagne);
  background: var(--blog-paper);
}

/* Conteneur de lecture seulement : aucune redéfinition de .elementor-row
   ou des largeurs de colonnes, qui restent pilotées par Creative Elements. */
.hi-blog-page #blog_desc_container .hiblog-content .elementor-section-boxed > .elementor-container {
  max-width: 100%;
}

/* 8. Sommaire embarqué */
.hi-blog-page #blog_desc_container .hi-blog-toc-embedded {
  margin: 0 0 34px;
  padding: 24px 28px;
  border: 1px solid var(--blog-border);
  border-left: 3px solid var(--blog-champagne);
  background: var(--blog-paper);
}

.hi-blog-page #blog_desc_container .hi-blog-toc-embedded h2 {
  margin: 0 0 14px;
  font-family: var(--blog-font);
  font-size: 22px;
  font-weight: 500;
}

.hi-blog-page #blog_desc_container .hi-blog-toc-embedded a {
  color: var(--blog-text);
  font-size: 15px;
  line-height: 1.6;
  text-decoration: none;
}

.hi-blog-page #blog_desc_container .hi-blog-toc-embedded a:hover {
  color: var(--blog-accent);
  text-decoration: underline;
}

/* 9. Mots-clés et catégories */
.hi-blog-page #blog_desc_container .hi-blog-tags-category-container {
  margin-top: 42px;
  padding: 26px 0;
  border-top: 1px solid var(--blog-border);
  border-bottom: 1px solid var(--blog-border);
}

.hi-blog-page #blog_desc_container :is(.hi-blog-tags, .hi-blog-categories) {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin: 0 0 12px;
  font-size: 13px;
}

.hi-blog-page #blog_desc_container .hi-blog-categories:last-child {
  margin-bottom: 0;
}

.hi-blog-page #blog_desc_container .hi-blog-meta-label {
  margin-right: 6px;
  color: var(--blog-muted);
  font-weight: 500;
}

.hi-blog-page #blog_desc_container :is(.hi-blog-tags, .hi-blog-categories) a {
  max-width: 100%;
  padding: 8px 12px;
  border: 1px solid var(--blog-border);
  border-radius: 4px;
  color: var(--blog-text);
  background: var(--blog-paper);
  line-height: 1.4;
  text-decoration: none;
  overflow-wrap: anywhere;
}

.hi-blog-page #blog_desc_container :is(.hi-blog-tags, .hi-blog-categories) a:hover {
  border-color: var(--blog-champagne);
  color: var(--blog-onyx);
  background: #eee4d4;
}

/* 10. Commentaires */
.hi-blog-page #blog_desc_container .blog-customer-block {
  margin-top: 36px;
}

.hi-blog-page #blog_desc_container .comment-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin: 0 0 24px;
  padding: 0 0 14px;
  border-bottom: 1px solid var(--blog-border);
  list-style: none;
}

.hi-blog-page #blog_desc_container .comment-tabs a {
  color: var(--blog-onyx);
  font-size: 18px;
  text-decoration: none;
}

.hi-blog-page #blog_desc_container .customer-comments-form-block {
  padding: clamp(20px, 3vw, 32px);
  border: 1px solid var(--blog-border);
  background: var(--blog-paper);
}

.hi-blog-page #blog_desc_container .customer-comments-form-block h3 {
  margin: 0 0 22px;
  color: var(--blog-onyx);
  font-family: var(--blog-font);
  font-size: 25px;
  font-weight: 500;
}

.hi-blog-page #blog_desc_container .customer-comments-form-block :is(input[type="text"], input[type="email"], input[type="url"], textarea) {
  display: block;
  box-sizing: border-box;
  width: 100%;
  min-height: 48px;
  margin: 0 0 14px;
  padding: 13px 15px;
  border: 1px solid #bcb5a8;
  border-radius: 0;
  color: var(--blog-text);
  background: #fff;
  font-family: var(--blog-font);
  font-size: 16px;
  line-height: 1.5;
}

.hi-blog-page #blog_desc_container .customer-comments-form-block textarea {
  min-height: 160px;
  resize: vertical;
}

.hi-blog-page #blog_desc_container .comments-form-footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-top: 20px;
}

.hi-blog-page #blog_desc_container .comments-form-footer > * {
  float: none;
}

.hi-blog-page #blog_desc_container .reset-text {
  color: var(--blog-muted);
  font-size: 14px;
}

/* 11. Articles associés : grille si le carrousel n'est pas initialisé.
   Le JavaScript actuel cible #BLOG (page d'accueil). Ne pas le simuler ici. */
.hi-blog-page #wrapper .hi-blog-related-posts.hiblog-ce-list {
  width: 100%;
  max-width: none;
  margin: 58px 0 0;
  padding: 36px 0 0;
  border-top: 1px solid var(--blog-border);
}

.hi-blog-page #wrapper .hi-blog-related-posts .hiblog-ce-section-title {
  margin: 0 0 28px;
  color: var(--blog-onyx);
  font-family: var(--blog-font);
  font-size: clamp(26px, 3vw, 36px);
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: -.03em;
  text-transform: none;
}

.hi-blog-page #wrapper .hi-blog-related-posts .hiblog-ce-track {
  gap: 32px 24px;
}

.hi-blog-page #wrapper .hi-blog-related-posts .hiblog-ce-slider:not(.hiblog-ce-ready) .hiblog-ce-track {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.hi-blog-page #wrapper .hi-blog-related-posts .hiblog-ce-ready .hiblog-ce-track {
  display: flex;
  align-items: stretch;
}

.hi-blog-page #wrapper .hi-blog-related-posts .hiblog-ce-ready .hiblog-ce-viewport {
  overflow: hidden;
}

.hi-blog-page #wrapper .hi-blog-related-posts .hiblog-ce-card {
  min-width: 0;
  margin: 0;
  padding: 0;
}

.hi-blog-page #wrapper .hi-blog-related-posts .hiblog-ce-card-inner {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.hi-blog-page #wrapper .hi-blog-related-posts .hiblog-ce-image {
  display: block;
  aspect-ratio: 4 / 3;
  margin: 0 0 18px;
  overflow: hidden;
  border-radius: 12px;
  background: var(--blog-paper);
}

.hi-blog-page #wrapper .hi-blog-related-posts .hiblog-ce-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.hi-blog-page #wrapper .hi-blog-related-posts .hiblog-ce-content {
  display: flex;
  flex: 1;
  flex-direction: column;
}

.hi-blog-page #wrapper .hi-blog-related-posts .hiblog-ce-title h3 {
  margin: 0 0 20px;
  color: var(--blog-onyx);
  font-family: var(--blog-font);
  font-size: 21px;
  font-weight: 500;
  line-height: 1.35;
}

.hi-blog-page #wrapper .hi-blog-related-posts .hiblog-ce-title a {
  color: inherit;
  text-decoration: none;
}

.hi-blog-page #wrapper .hi-blog-related-posts .hiblog-ce-button {
  align-self: flex-start;
  margin-top: auto;
}

/* 12. Responsive */
@media (max-width: 991px) {
  .hi-blog-page #blog_post_container,
  .hi-blog-page #wrapper .hi-blog-related-posts .hiblog-ce-slider:not(.hiblog-ce-ready) .hiblog-ce-track {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 32px 22px;
  }
}

@media (max-width: 575px) {
  .hi-blog-page #wrapper .breadcrumb {
    padding: 16px 0 22px;
  }

  .hi-blog-page #blog_post_container,
  .hi-blog-page #wrapper .hi-blog-related-posts .hiblog-ce-slider:not(.hiblog-ce-ready) .hiblog-ce-track {
    grid-template-columns: minmax(0, 1fr);
    gap: 36px;
  }

  .hi-blog-page #blog_desc_container .blog-desc-image-block {
    margin-bottom: 26px;
    border-radius: 8px;
  }

  .hi-blog-page #blog_desc_container .blog-desc-image-block img {
    aspect-ratio: 4 / 3;
  }

  .hi-blog-page #blog_desc_container .blog-desc-title {
    font-size: 30px;
  }

  .hi-blog-page #blog_desc_container .blog-desc-content > .post-published {
    margin-bottom: 28px;
  }

  .hi-blog-page #blog_desc_container .hi-blog-toc-embedded {
    padding: 20px;
  }

  .hi-blog-page #blog_desc_container .elementor-button {
    width: 100%;
    padding-right: 16px;
    padding-left: 16px;
  }
}

/* 13. Mouvement réduit */
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  .hi-blog-page #blog_post_container .blog-post:hover .post-image-block img {
    transform: scale(1.035);
  }
}

@media (prefers-reduced-motion: reduce) {
  .hi-blog-page #wrapper .post-read-more-button,
  .hi-blog-page #blog_desc_container .elementor-button,
  .hi-blog-page #wrapper #blog-add-comment,
  .hi-blog-page #blog_post_container .post-image-block img,
  .hi-blog-page #blog_post_container .post-title a {
    transition: none;
  }
}


/* 14. Article Magazine Meublorama — Creative Elements, 20/10/2026.
   HTML associé : #meublorama-article. Aucun JavaScript requis.
   Le préfixe :is assure la priorité sur le style générique HiPresta,
   y compris dans l'éditeur Creative Elements et en prévisualisation. */
:is(#blog_desc_container, body) #meublorama-article {
  --mb-ink:#20201d; --mb-champagne:#d7bd91; --mb-accent:#80653b;
  --mb-paper:#f8f6f2; --mb-border:#e7e2d9; --mb-text:#363632;
  display:block; width:100%; max-width:1040px; min-width:0; margin:0 auto;
  padding:0 0 50px; background:#fff; color:var(--mb-ink);
  font-family:"Jost",Arial,sans-serif; text-align:left;
  font-size:17px; line-height:1.85; overflow-wrap:break-word;
}
:is(#blog_desc_container, body) #meublorama-article *,
:is(#blog_desc_container, body) #meublorama-article *::before,
:is(#blog_desc_container, body) #meublorama-article *::after {box-sizing:border-box;min-width:0;}
:is(#blog_desc_container, body) #meublorama-article :is(h1,h2,h3) {
  color:var(--mb-ink); font-family:inherit; font-weight:500;
  text-transform:none; overflow-wrap:break-word; scroll-margin-top:150px;
}
:is(#blog_desc_container, body) #meublorama-article h1 {font-size:44px;line-height:1.12;letter-spacing:-1.5px;margin:0 0 20px;}
:is(#blog_desc_container, body) #meublorama-article h2 {font-size:31px;line-height:1.3;letter-spacing:-.6px;margin:13px 0 24px;}
:is(#blog_desc_container, body) #meublorama-article h3 {font-size:23px;line-height:1.4;letter-spacing:-.3px;margin:32px 0 16px;}
:is(#blog_desc_container, body) #meublorama-article p {font-size:17px;line-height:1.85;color:var(--mb-text);margin:0 0 22px;}
:is(#blog_desc_container, body) #meublorama-article strong {font-weight:500;}
:is(#blog_desc_container, body) #meublorama-article a {color:var(--mb-accent);text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere;}
:is(#blog_desc_container, body) #meublorama-article a:hover {color:var(--mb-ink);}
:is(#blog_desc_container, body) #meublorama-article :is(a,summary):focus-visible {outline:2px solid var(--mb-accent);outline-offset:4px;}
:is(#blog_desc_container, body) #meublorama-article img {display:block;width:100%;max-width:100%;height:auto;margin:0;object-fit:cover;border:0;border-radius:0;}
:is(#blog_desc_container, body) #meublorama-article .mb-eyebrow {font-size:11px;line-height:1.5;letter-spacing:2px;text-transform:uppercase;color:var(--mb-accent);margin:0 0 16px;}
:is(#blog_desc_container, body) #meublorama-article .mb-hero {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:var(--mb-paper);align-items:stretch;}
:is(#blog_desc_container, body) #meublorama-article .mb-hero>div {padding:55px 11%;align-self:center;}
:is(#blog_desc_container, body) #meublorama-article .mb-hero img {height:450px;object-fit:cover;}
:is(#blog_desc_container, body) #meublorama-article .mb-body {max-width:800px;margin:0 auto;padding:36px 35px;}
:is(#blog_desc_container, body) #meublorama-article .mb-full-toc {margin:0 0 32px;padding:24px;background:var(--mb-paper);border-bottom:2px solid var(--mb-champagne);}
:is(#blog_desc_container, body) #meublorama-article .mb-full-toc>div:last-child {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px 24px;}
:is(#blog_desc_container, body) #meublorama-article .mb-full-toc a {display:flex;align-items:center;min-height:44px;font-size:13px;line-height:1.5;text-decoration:none;color:#65573f;}
:is(#blog_desc_container, body) #meublorama-article .mb-full-toc a:hover {text-decoration:underline;}
:is(#blog_desc_container, body) #meublorama-article .mb-chapter {border:0;padding:28px 0 0;margin:48px 0 0;scroll-margin-top:150px;}
:is(#blog_desc_container, body) #meublorama-article .mb-chapter>h2 {max-width:640px;font-size:34px;margin-bottom:25px;}
:is(#blog_desc_container, body) #meublorama-article .mb-chapter:not(.mb-note)>h2::before {content:"";display:block;width:42px;height:3px;background:var(--mb-champagne);margin-bottom:20px;}
:is(#blog_desc_container, body) #meublorama-article .mb-note {padding:28px 32px;border-left:3px solid var(--mb-champagne);margin:32px 0;background:var(--mb-paper);}
:is(#blog_desc_container, body) #meublorama-article .mb-note h2 {font-size:25px;margin-top:0;}
:is(#blog_desc_container, body) #meublorama-article .mb-note p {margin:0;}
:is(#blog_desc_container, body) #meublorama-article .mb-material-notes {background:var(--mb-paper);padding:26px 30px;margin:30px 0;}
:is(#blog_desc_container, body) #meublorama-article .mb-material-notes h3 {margin-top:0;}
:is(#blog_desc_container, body) #meublorama-article .mb-editor-tip {border-left:3px solid var(--mb-champagne);padding:8px 0 8px 24px;margin:26px 0;}
:is(#blog_desc_container, body) #meublorama-article .mb-editor-tip p {margin:0;}
:is(#blog_desc_container, body) #meublorama-article .mb-feature-row {display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:25px;align-items:center;margin-top:35px;}
:is(#blog_desc_container, body) #meublorama-article .mb-feature-row img {object-fit:contain;}
:is(#blog_desc_container, body) #meublorama-article .mb-wood-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:30px;}
:is(#blog_desc_container, body) #meublorama-article .mb-wood-portrait {background:var(--mb-paper);overflow:hidden;border-radius:3px;}
:is(#blog_desc_container, body) #meublorama-article .mb-wood-portrait img {height:210px;object-fit:contain;background:white;}
:is(#blog_desc_container, body) #meublorama-article .mb-wood-copy {padding:8px 24px 22px;border-top:2px solid var(--mb-champagne);}
:is(#blog_desc_container, body) #meublorama-article .mb-wood-copy h3 {font-size:22px;margin-top:18px;}
:is(#blog_desc_container, body) #meublorama-article .mb-wood-copy p {font-size:16px;line-height:1.75;margin-bottom:0;}
:is(#blog_desc_container, body) #meublorama-article .mb-shape-row {display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:28px;align-items:start;margin:38px -45px;padding:28px;background:var(--mb-paper);}
:is(#blog_desc_container, body) #meublorama-article .mb-shape-row.mb-reverse {grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);background:white;}
:is(#blog_desc_container, body) #meublorama-article .mb-shape-row img {height:410px;object-fit:cover;margin-top:8px;}
:is(#blog_desc_container, body) #meublorama-article .mb-shape-row.mb-reverse img {height:310px;object-fit:contain;}
:is(#blog_desc_container, body) #meublorama-article .mb-shape-row h3 {margin-top:0;}
:is(#blog_desc_container, body) #meublorama-article .mb-shape-row p {font-size:16px;line-height:1.8;}
:is(#blog_desc_container, body) #meublorama-article .mb-shape-row p:last-child {margin-bottom:0;}
:is(#blog_desc_container, body) #meublorama-article .mb-space-note {padding:28px;border:1px solid var(--mb-champagne);margin:28px 0;}
:is(#blog_desc_container, body) #meublorama-article .mb-space-note h3 {margin-top:0;}
:is(#blog_desc_container, body) #meublorama-article .mb-space-note p {margin-bottom:0;}
:is(#blog_desc_container, body) #meublorama-article .mb-try-note {padding:30px;background:#eee4d4;margin:30px 0;}
:is(#blog_desc_container, body) #meublorama-article .mb-try-note h3 {margin-top:0;}
:is(#blog_desc_container, body) #meublorama-article .mb-try-note p:last-child {margin-bottom:0;}
:is(#blog_desc_container, body) #meublorama-article .mb-dark-note {background:var(--mb-ink);padding:30px 34px;margin:28px 0;border-top:3px solid var(--mb-champagne);}
:is(#blog_desc_container, body) #meublorama-article .mb-dark-note p {color:var(--mb-paper);font-size:20px;line-height:1.7;margin:0;}
:is(#blog_desc_container, body) #meublorama-article .mb-checklist {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;list-style:none;background:transparent;padding:0;margin:20px 0;}
:is(#blog_desc_container, body) #meublorama-article .mb-checklist li {background:var(--mb-paper);border-top:2px solid var(--mb-champagne);padding:20px;margin:0;font-size:16px;line-height:1.7;color:var(--mb-text);}
:is(#blog_desc_container, body) #meublorama-article .mb-checklist li::before {content:"✓";display:block;color:var(--mb-accent);font-size:22px;margin-bottom:8px;}
:is(#blog_desc_container, body) #meublorama-article .mb-faq-item {padding:20px 0;border-bottom:1px solid var(--mb-border);}
:is(#blog_desc_container, body) #meublorama-article .mb-faq-item summary {display:list-item;min-height:44px;padding:10px 0;cursor:pointer;color:var(--mb-ink);}
:is(#blog_desc_container, body) #meublorama-article .mb-faq-item summary h3 {display:inline;font-size:19px;margin:0;}
:is(#blog_desc_container, body) #meublorama-article .mb-faq-item p {padding:18px 0 0;margin:0;font-size:16px;}
:is(#blog_desc_container, body) #meublorama-article .mb-closing-note {padding:30px;background:#eee4d4;margin-top:35px;text-align:center;}
:is(#blog_desc_container, body) #meublorama-article .mb-closing-note p {margin:0;}
/* Tablettes : conserver les cartes par deux ; éviter les textes trop étroits. */
@media (min-width:621px) and (max-width:900px) {
  :is(#blog_desc_container, body) #meublorama-article .mb-hero>div {padding:32px 25px;}
  :is(#blog_desc_container, body) #meublorama-article h1 {font-size:36px;line-height:1.15;}
  :is(#blog_desc_container, body) #meublorama-article .mb-hero img {height:390px;}
  :is(#blog_desc_container, body) #meublorama-article .mb-body {padding:32px 28px;}
  :is(#blog_desc_container, body) #meublorama-article .mb-wood-grid {gap:20px;}
  :is(#blog_desc_container, body) #meublorama-article .mb-wood-copy {padding:8px 20px 22px;}
}
@media (max-width:900px) {
  :is(#blog_desc_container, body) #meublorama-article .mb-shape-row {margin-left:0;margin-right:0;grid-template-columns:1fr;padding:24px;}
  :is(#blog_desc_container, body) #meublorama-article .mb-shape-row.mb-reverse {grid-template-columns:1fr;padding:0;}
  :is(#blog_desc_container, body) #meublorama-article .mb-shape-row img {height:320px;object-position:center;}
  :is(#blog_desc_container, body) #meublorama-article .mb-shape-row.mb-reverse img {height:280px;}
}
/* Téléphones : une seule colonne et corps de texte lisible. */
@media (max-width:620px) {
  :is(#blog_desc_container, body) #meublorama-article .mb-hero {grid-template-columns:1fr;}
  :is(#blog_desc_container, body) #meublorama-article .mb-hero>div {padding:30px 22px 24px;}
  :is(#blog_desc_container, body) #meublorama-article h1 {font-size:32px;line-height:1.18;letter-spacing:-.8px;}
  :is(#blog_desc_container, body) #meublorama-article .mb-hero img {height:auto;aspect-ratio:4/3;object-fit:cover;}
  :is(#blog_desc_container, body) #meublorama-article .mb-body {padding:26px 20px;}
  :is(#blog_desc_container, body) #meublorama-article p {font-size:16px;}
  :is(#blog_desc_container, body) #meublorama-article :is(.mb-wood-grid,.mb-feature-row,.mb-checklist) {grid-template-columns:1fr;}
  :is(#blog_desc_container, body) #meublorama-article .mb-wood-portrait img {height:auto;aspect-ratio:4/3;object-fit:contain;}
  :is(#blog_desc_container, body) #meublorama-article .mb-full-toc {padding:20px;}
  :is(#blog_desc_container, body) #meublorama-article .mb-full-toc>div:last-child {grid-template-columns:1fr;gap:4px;}
  :is(#blog_desc_container, body) #meublorama-article .mb-full-toc a {font-size:14px;}
  :is(#blog_desc_container, body) #meublorama-article .mb-chapter:not(.mb-note) {margin-top:32px;padding-top:20px;}
  :is(#blog_desc_container, body) #meublorama-article .mb-chapter:not(.mb-note)>h2 {font-size:27px;line-height:1.3;}
  :is(#blog_desc_container, body) #meublorama-article :is(.mb-note,.mb-material-notes,.mb-try-note,.mb-space-note,.mb-dark-note,.mb-closing-note) {padding:22px;}
  :is(#blog_desc_container, body) #meublorama-article .mb-shape-row {padding:20px;}
  :is(#blog_desc_container, body) #meublorama-article .mb-shape-row img {height:auto;aspect-ratio:4/3;}
  :is(#blog_desc_container, body) #meublorama-article .mb-shape-row.mb-reverse img {height:auto;aspect-ratio:4/3;}
  :is(#blog_desc_container, body) #meublorama-article .mb-feature-row img {max-height:260px;object-fit:contain;}
  :is(#blog_desc_container, body) #meublorama-article .mb-dark-note p {font-size:18px;}
}
/* Ces ajustements ne s'activent que sur la page contenant cet article.
   Préférer désactiver les sorties natives en double dans le modèle du module.
   Ce repli CSS ne retire pas leurs balises du HTML envoyé par le serveur. */
@supports selector(:has(*)) {
  .hi-blog-page #blog_desc_container:has(#meublorama-article) .blog-desc-info-block {max-width:1040px;}
  .hi-blog-page #blog_desc_container:has(#meublorama-article) .blog-desc-title,
  .hi-blog-page #blog_desc_container:has(#meublorama-article) .blog-desc-image-block,
  .hi-blog-page #blog_desc_container:has(#meublorama-article) .hi-blog-toc-embedded {display:none;}
}
