/* Ma Tribu & Moi — Bibliothèque simple, photos originales et carrousels Instagram. */
.mi-page{--mi-ink:#292622;--mi-muted:#756f68;--mi-line:#e6dfd8;--mi-paper:#f8f6f2;color:var(--mi-ink)}
.mi-page em{font-weight:400}
.mi-intro{text-align:center;padding-top:64px;padding-bottom:60px}
.mi-intro .eyebrow,.mi-detail .eyebrow{font-size:10px;letter-spacing:.17em}
.mi-intro h1,.mi-detail h1,.mi-detail h2,.mi-history h2,.mi-feature h2{font-family:'Bodoni Moda',Georgia,serif;font-weight:400;letter-spacing:-.039em}
.mi-intro h1{font-size:clamp(49px,6vw,82px);line-height:1.09;margin:15px 0 13px}
.mi-intro p{font-size:13px;color:var(--mi-muted);line-height:1.75;max-width:430px;margin:0 auto}
.mi-feature{padding-bottom:72px}
.mi-overline{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--mi-line);gap:14px;padding:16px 0 23px;font-size:10px;letter-spacing:.13em;font-weight:600;color:var(--mi-muted)}
.mi-feature-layout{display:grid;grid-template-columns:minmax(0,1.13fr) minmax(0,.87fr);gap:clamp(30px,5vw,70px);align-items:center}
.mi-feature-photo{display:block;aspect-ratio:5/3.8;overflow:hidden;background:#efe9e1}
.mi-feature-photo img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}
.mi-feature-info{min-width:0;padding:6px 0}
.mi-small-label{font-size:10px;letter-spacing:.13em;color:var(--mi-muted);font-weight:600}
.mi-feature-info h2{font-size:clamp(37px,4vw,58px);line-height:1.11;margin:14px 0 14px;max-width:12ch;text-wrap:balance}
.mi-feature-info p{font-size:13px;color:var(--mi-muted);line-height:1.7;max-width:340px}
.mi-link-primary{width:max-content;max-width:100%;display:inline-flex;align-items:center;justify-content:center;gap:15px;padding:15px 19px;margin-top:24px;background:#2f2b27;color:#fff!important;text-decoration:none!important;font:600 11px/1.4 'DM Sans',Arial,sans-serif;letter-spacing:.055em;text-align:center;min-height:47px}
.mi-link-primary:hover{background:#544b42}
.mi-link-small{display:block;width:max-content;max-width:100%;margin-top:19px;padding-bottom:7px;border-bottom:1px solid #9d9287;color:var(--mi-ink);font:500 11px/1.5 'DM Sans',Arial,sans-serif;text-decoration:none!important}
.mi-history{padding-bottom:100px}
.mi-history-heading{border-top:1px solid var(--mi-line);padding-top:27px;margin-bottom:29px}
.mi-history h2{font-size:clamp(32px,3.7vw,47px);margin:10px 0 9px;line-height:1.15}
.mi-history-heading p{font-size:12px;line-height:1.6;color:var(--mi-muted)}
.mi-history-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
.mi-archive-item{min-width:0}
.mi-archive-photo{display:block;aspect-ratio:5/3.8;overflow:hidden;background:#efe9e1}
.mi-archive-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .2s}
.mi-archive-item:hover .mi-archive-photo img{transform:scale(1.02)}
.mi-archive-info{display:block;padding:14px 0;color:var(--mi-ink);text-decoration:none!important}
.mi-archive-info strong{display:block;font:400 27px/1.14 'Bodoni Moda',Georgia,serif;letter-spacing:-.02em}
.mi-archive-info span{display:block;margin-top:6px;font-size:11px;color:var(--mi-muted);line-height:1.5}
.mi-archive-footer{display:inline-block;margin-top:8px;font-size:10px!important;font-weight:600;letter-spacing:.06em;color:var(--mi-ink)!important}
.mi-detail-wrap{max-width:950px}
.mi-back,.mi-bottom a{display:inline-block;color:var(--mi-ink);font-size:10px;letter-spacing:.08em;text-transform:uppercase;text-decoration:none!important;border-bottom:1px solid #978c80;padding-bottom:8px;font-weight:600}
.mi-back{margin-top:34px}
.mi-detail-heading{text-align:center;margin:31px auto 32px}
.mi-detail-heading h1{font-size:clamp(40px,5.6vw,66px);line-height:1.12;margin:11px auto 0;max-width:17ch;text-wrap:balance}
.mi-detail-feature{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);gap:clamp(28px,5vw,60px);align-items:center;padding-bottom:36px}
.mi-detail-photo{aspect-ratio:5/4;overflow:hidden;background:#eee7dd}
.mi-detail-photo img{width:100%;height:100%;object-fit:cover;display:block}
.mi-detail-info h2{font-size:clamp(36px,4vw,52px);line-height:1.1;margin:13px 0 14px;max-width:13ch}
.mi-detail-info p{font-size:13px;color:var(--mi-muted);line-height:1.7;max-width:360px}
.mi-details-controls{border-top:1px solid var(--mi-line);border-bottom:1px solid var(--mi-line);margin-bottom:40px}
.mi-details-controls summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;font-weight:600;font-size:12px;padding:22px 0}
.mi-details-controls summary::-webkit-details-marker{display:none}
.mi-details-controls details[open] summary span{transform:rotate(45deg)}
.mi-day-list{max-width:680px;margin:0 auto 12px}
.mi-day{border-bottom:1px solid var(--mi-line);padding:17px 0}
.mi-day:last-child{border:0}
.mi-day h3{font:400 27px/1.15 'Bodoni Moda',Georgia,serif;margin:0 0 12px}
.mi-day h3 small{font:400 11px 'DM Sans',Arial,sans-serif;color:var(--mi-muted);margin-left:10px}
.mi-meal{display:grid;grid-template-columns:88px minmax(0,1fr);gap:11px;margin:10px 0;font-size:12px;line-height:1.65}
.mi-meal-label{font-size:10px;letter-spacing:.07em;text-transform:uppercase;color:var(--mi-muted);padding-top:3px}
.mi-meal strong{font-weight:600}
.mi-meal p{font-size:12px;color:var(--mi-muted);margin:3px 0 0}
.mi-print{border:0;background:none;font:600 10px/1.5 'DM Sans',Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;padding:19px 0;color:var(--mi-ink);cursor:pointer}
.mi-bottom{text-align:center;padding:0 0 100px}
@media (max-width:720px){
 .mi-intro{padding-top:32px;padding-bottom:34px}
 .mi-intro .eyebrow{font-size:9px}
 .mi-intro h1{font-size:clamp(40px,10vw,50px);margin:8px 0 11px;line-height:1.12}
 .mi-intro p{font-size:12px;line-height:1.6;max-width:30ch}
 .mi-feature{padding-bottom:43px}
 .mi-overline{font-size:9px;padding:13px 0 14px}
 .mi-feature-layout{display:block}
 .mi-feature-photo{aspect-ratio:5/3.5}
 .mi-feature-info{padding:20px 0 0}
 .mi-small-label{font-size:9px}
 .mi-feature-info h2{font-size:clamp(31px,8.3vw,39px);max-width:none;margin:9px 0}
 .mi-feature-info p{font-size:12px}
 .mi-link-primary{margin-top:17px;width:auto;font-size:10px;padding:13px 17px;min-height:44px}
 .mi-link-small{font-size:11px;margin-top:15px}
 .mi-history{padding-bottom:65px}
 .mi-history-heading{padding-top:20px;margin-bottom:20px}
 .mi-history h2{font-size:clamp(29px,8vw,36px);margin:7px 0 9px}
 .mi-history-heading p{font-size:12px}
 .mi-history-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
 .mi-archive-photo{aspect-ratio:1/1}
 .mi-archive-info{padding:10px 0}
 .mi-archive-info strong{font-size:21px}
 .mi-archive-info span{font-size:10px;margin-top:5px}
 .mi-archive-footer{font-size:9px!important}
 .mi-back{margin-top:18px}
 .mi-detail-heading{margin:24px auto}
 .mi-detail-heading .eyebrow{font-size:9px}
 .mi-detail-heading h1{font-size:clamp(32px,8.4vw,42px);margin-top:8px}
 .mi-detail-feature{display:block;padding-bottom:22px}
 .mi-detail-photo{aspect-ratio:5/3.5}
 .mi-detail-info{padding-top:20px}
 .mi-detail-info h2{font-size:34px;margin:11px 0 9px}
 .mi-detail-info p{font-size:12px}
 .mi-details-controls summary{padding:17px 0;font-size:12px}
 .mi-day{padding:15px 0}
 .mi-day h3{font-size:26px}
 .mi-meal{grid-template-columns:75px minmax(0,1fr);gap:9px;font-size:12px}
 .mi-meal p{font-size:11px}
 .mi-bottom{padding-bottom:54px}
}
@media print{
 @page{size:A4;margin:12mm}
 body{background:#fff!important;color:#000!important}
 .instagram-topbar,.site-header,.footer,.instagram-bottom-rail,.mi-detail-feature,.mi-back,.mi-bottom,.mi-print{display:none!important}
 .mi-detail-heading{margin:0 0 5mm!important}
 .mi-detail-heading h1{font-size:23pt!important}
 .mi-details-controls{border:none!important;margin:0!important}
 .mi-details-controls summary{display:none!important}
 .mi-day-list{display:block!important;max-width:none!important}
 .mi-day{break-inside:avoid;padding:3mm 0}
 .mi-day h3{font-size:15pt}
 .mi-meal{font-size:9pt}
}


/* V9 : couverture de première page Canva en portrait et archives consécutives. */
.mi-intro h1{font-size:clamp(42px,5.3vw,68px);line-height:1.11;max-width:850px;margin-left:auto;margin-right:auto;text-wrap:balance}
.mi-feature-layout{grid-template-columns:minmax(0,.89fr) minmax(0,1fr);gap:clamp(34px,6vw,87px)}
.mi-feature-photo{aspect-ratio:4/5;max-width:415px;margin:auto;width:100%;background:#f6f3ed}
.mi-feature-photo img{object-fit:contain;object-position:center;width:100%;height:100%}
.mi-feature-info h2{max-width:14ch}
.mi-archive-photo{aspect-ratio:4/5;position:relative;background:#f6f3ed}
.mi-archive-photo img{object-fit:contain;object-position:center}
.mi-archive-photo:empty:before{content:"MA TRIBU & MOI  \a\a Qu’est-ce qu’on mange cette semaine ?  \a\a SEMAINE 42";white-space:pre-line;display:flex;align-items:center;justify-content:center;text-align:center;padding:14%;height:100%;box-sizing:border-box;border:1px solid #e3dbd0;color:#312c27;font:400 clamp(17px,2.4vw,28px)/1.35 'Bodoni Moda',Georgia,serif;background:#f7f4ee}
.mi-detail-photo{aspect-ratio:4/5;max-width:415px;margin:auto;position:relative;background:#f6f3ed}
.mi-detail-photo img{object-fit:contain;object-position:center}
.mi-detail-photo.mi-empty-cover:before{content:"QU’EST-CE QU’ON MANGE CETTE SEMAINE ?";display:flex;align-items:center;justify-content:center;text-align:center;box-sizing:border-box;padding:15%;height:100%;font:400 clamp(24px,3.5vw,40px)/1.1 'Bodoni Moda',Georgia,serif;color:#2d2823;background:#f7f4ee}
.mi-detail-period{font:400 clamp(18px,2.6vw,25px)/1.4 'Bodoni Moda',Georgia,serif;color:var(--mi-muted);margin:9px 0 0}
.mi-detail-feature{grid-template-columns:minmax(0,.9fr) minmax(0,1fr);gap:clamp(30px,6vw,75px)}
.mi-details-controls[hidden]{display:none!important}
@media(max-width:720px){
 .mi-intro h1{font-size:clamp(33px,8.7vw,42px);max-width:20ch}
 .mi-feature-layout{display:block}
 .mi-feature-photo{aspect-ratio:4/5;max-width:320px}
 .mi-feature-info{padding-top:18px}
 .mi-history-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
 .mi-archive-photo{aspect-ratio:4/5}
 .mi-detail-photo{aspect-ratio:4/5;max-width:320px}
 .mi-detail-heading h1{font-size:clamp(32px,8.5vw,42px);max-width:20ch}
 .mi-detail-period{font-size:19px}
}


/* V10 — épure mobile : une seule couverture à la une, puis les archives en lignes. */
.mi-library .mi-intro {
  padding-top: 46px;
  padding-bottom: 36px;
}
.mi-library .mi-intro h1 {
  font-size: clamp(38px, 4.7vw, 65px);
  line-height: 1.13;
  max-width: 800px;
  margin: 14px auto 12px;
}
.mi-library .mi-intro p {
  max-width: 560px;
  line-height: 1.6;
}
.mi-library .mi-feature {
  padding-bottom: 76px;
}
.mi-library .mi-overline {
  padding: 14px 0 22px;
}
.mi-library .mi-feature-layout {
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1fr);
  gap: clamp(32px, 6.5vw, 86px);
  align-items: center;
}
.mi-library .mi-feature-photo {
  display: block;
  width: 100%;
  max-width: 405px;
  margin: 0 auto;
  aspect-ratio: 4/5;
  background: #f4f1eb;
}
.mi-library .mi-feature-photo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}
.mi-library .mi-feature-info {
  min-width: 0;
  padding: 0;
}
.mi-library .mi-feature-info h2 {
  font-size: clamp(38px, 4.6vw, 58px);
  line-height: 1.11;
  max-width: 13ch;
  margin: 0 0 8px;
  text-wrap: balance;
}
.mi-library .mi-link-primary {
  margin-top: 22px;
  min-height: 48px;
  width: fit-content;
  max-width: 100%;
}
.mi-library .mi-history {
  padding-bottom: 110px;
}
.mi-library .mi-history-heading {
  padding: 24px 0 0;
  margin-bottom: 29px;
}
.mi-library .mi-history-heading h2 {
  font-size: clamp(32px, 3.8vw, 48px);
  margin-bottom: 0;
}
.mi-library .mi-history-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 28px;
}
.mi-library .mi-archive-item {
  min-width: 0;
}
.mi-library .mi-archive-photo {
  aspect-ratio: 4/5;
  width: 100%;
  background: #f6f3ed;
}
.mi-library .mi-archive-photo img {
  object-fit: contain;
  width: 100%;
  height: 100%;
}
.mi-library .mi-archive-photo:empty::before {
  content: "MA TRIBU & MOI\A\A À table cette semaine\A\A SEMAINE 42";
  font-size: clamp(15px, 2vw, 26px);
  line-height: 1.35;
  padding: 12%;
  border-color: #e9e1d8;
}
.mi-library .mi-archive-info {
  padding-top: 12px;
}
@media(max-width:720px){
  .mi-library .mi-intro {
    padding-top: 25px;
    padding-bottom: 26px;
  }
  .mi-library .mi-intro .eyebrow {
    font-size: 9px;
    letter-spacing: .11em;
  }
  .mi-library .mi-intro h1 {
    font-size: clamp(33px, 8.4vw, 41px);
    line-height: 1.12;
    max-width: 19ch;
    margin: 9px auto;
  }
  .mi-library .mi-intro p {
    font-size: 12px;
    max-width: 29ch;
    margin: 0 auto;
  }
  .mi-library .mi-feature {
    padding-bottom: 44px;
  }
  .mi-library .mi-overline {
    padding: 12px 0 14px;
    font-size: 9px;
    letter-spacing: .1em;
  }
  .mi-library .mi-feature-layout {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 18px;
  }
  .mi-library .mi-feature-photo {
    aspect-ratio: 4/5;
    max-width: 340px;
    width: 100%;
    margin: 0 auto;
  }
  .mi-library .mi-feature-info {
    width: 100%;
    max-width: 340px;
    align-self: center;
    padding: 0;
  }
  .mi-library .mi-feature-info h2 {
    font-size: clamp(29px, 7.4vw, 36px);
    max-width: 17ch;
    margin: 0;
    line-height: 1.14;
    letter-spacing: -.035em;
  }
  .mi-library .mi-link-primary {
    margin-top: 15px;
    padding: 13px 16px;
    min-height: 44px;
    width: auto;
    font-size: 10px;
    letter-spacing: .025em;
  }
  .mi-library .mi-history {
    padding-bottom: 65px;
  }
  .mi-library .mi-history-heading {
    padding-top: 22px;
    margin-bottom: 6px;
  }
  .mi-library .mi-history-heading h2 {
    font-size: clamp(29px, 7.4vw, 36px);
    line-height: 1.15;
  }
  .mi-library .mi-history-grid {
    display: grid;
    grid-template-columns: minmax(0,1fr);
    gap: 0;
  }
  .mi-library .mi-archive-item {
    display: grid;
    grid-template-columns: minmax(110px, 38%) minmax(0,1fr);
    gap: 19px;
    align-items: center;
    padding: 19px 0;
    border-bottom: 1px solid var(--mi-line);
  }
  .mi-library .mi-archive-item:last-child {
    border-bottom: 0;
  }
  .mi-library .mi-archive-photo {
    aspect-ratio: 4/5;
    align-self: stretch;
  }
  .mi-library .mi-archive-info {
    min-width: 0;
    padding: 0;
  }
  .mi-library .mi-archive-info strong {
    font-size: clamp(23px, 6.3vw, 29px);
    line-height: 1.15;
  }
  .mi-library .mi-archive-info span {
    font-size: 11px;
    line-height: 1.5;
    margin-top: 7px;
  }
  .mi-library .mi-archive-footer {
    font-size: 10px!important;
    letter-spacing: 0;
    line-height: 1.4;
    margin-top: 13px!important;
  }
  .mi-library .mi-archive-photo:empty::before {
    font-size: clamp(13px, 4.2vw, 19px);
    line-height: 1.24;
    padding: 10%;
  }
}
@media(max-width:375px){
  .mi-library .mi-archive-item {
    grid-template-columns: minmax(102px, 37%) minmax(0,1fr);
    gap: 14px;
  }
  .mi-library .mi-archive-footer {
    font-size: 9px!important;
  }
}

/* V11 — liens simples : un seul lien complet par menu archivé. */
.mi-library .mi-archive-item{display:block;text-decoration:none!important;color:var(--mi-ink)}
.mi-library .mi-archive-item:hover .mi-archive-footer{text-decoration:underline;text-underline-offset:4px}
.mi-library .mi-archive-item:focus-visible,.mi-library .mi-feature-photo:focus-visible,.mi-library .mi-link-primary:focus-visible{outline:2px solid #726658;outline-offset:4px}
@media(max-width:720px){.mi-library .mi-archive-item{display:grid;grid-template-columns:minmax(110px,38%) minmax(0,1fr);gap:19px;align-items:center}}
@media(max-width:375px){.mi-library .mi-archive-item{grid-template-columns:minmax(102px,37%) minmax(0,1fr);gap:14px}}

/* V12 — images de plats sans texte, et dates retirées de l'index. */
.mi-library .mi-feature-photo img,.mi-library .mi-archive-photo img{object-fit:cover;object-position:center}


/* V13 — finition mobile des menus, à la une plus légère. */
@media screen and (max-width:720px){
  .mi-library .mi-intro{padding-top:21px;padding-bottom:23px}
  .mi-library .mi-intro h1{font-size:clamp(32px,8.1vw,39px);line-height:1.12;margin:8px auto;max-width:19ch;text-wrap:balance}
  .mi-library .mi-intro p{font-size:12px;line-height:1.55;max-width:31ch}
  .mi-library .mi-overline{padding-top:11px;padding-bottom:12px}
  .mi-library .mi-feature{padding-bottom:33px}
  .mi-library .mi-feature-layout{gap:15px}
  .mi-library .mi-feature-photo{width:100%;max-width:296px;aspect-ratio:4/5;margin:0 auto}
  .mi-library .mi-feature-photo img{width:100%;height:100%;object-fit:cover;object-position:center}
  .mi-library .mi-feature-info{max-width:296px;padding:0;margin:0 auto}
  .mi-library .mi-feature-info h2{font-size:clamp(27px,7vw,32px);line-height:1.14;margin:0}
  .mi-library .mi-link-primary{min-height:43px;margin-top:12px;padding:12px 15px;font-size:10px;letter-spacing:.02em}
  .mi-library .mi-history-heading{padding-top:18px;margin-bottom:3px}
  .mi-library .mi-history-heading h2{font-size:clamp(27px,7.15vw,34px);line-height:1.15}
  .mi-library .mi-archive-item{grid-template-columns:minmax(105px,36%) minmax(0,1fr);gap:16px;padding:14px 0;min-height:0}
  .mi-library .mi-archive-photo{width:100%;aspect-ratio:4/5}
  .mi-library .mi-archive-info strong{font-size:clamp(23px,6.1vw,28px);line-height:1.16}
  .mi-library .mi-archive-footer{margin-top:10px!important;font-size:10px!important;line-height:1.5}
  .mi-library .mi-history{padding-bottom:52px}
}
@media screen and (max-width:375px){
  .mi-library .mi-feature-photo,.mi-library .mi-feature-info{max-width:282px}
  .mi-library .mi-archive-item{grid-template-columns:minmax(101px,36%) minmax(0,1fr);gap:13px}
}


/* V14 — Les intitulés courts des menus restent lisibles sur une seule ligne. */
.mi-library .mi-feature-info h2,
.mi-library .mi-archive-info strong{
  white-space:nowrap;
  text-wrap:nowrap;
  overflow-wrap:normal;
  max-width:none;
}
@media screen and (max-width:720px){
  .mi-library .mi-archive-info strong{
    display:block;
    font-size:clamp(19px,5.1vw,24px);
    line-height:1.2;
    letter-spacing:-.025em;
  }
  .mi-library .mi-feature-info h2{
    font-size:clamp(27px,7vw,32px);
  }
}
