
@font-face{font-family:'Luckiest Guy';src:url('https://fonts.gstatic.com/s/luckiestguy/v23/_gP_1RrxsjcxVyin9l9n_j2hTd52.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Outfit';src:url('https://fonts.gstatic.com/s/outfit/v14/QGYvz_MVcBeNP4NjuGObqx1XmO1I4TC1C4G-EiAou6Y.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
:root{
  --plum:#4A353D;
  --plumDark:#1b1117;
  --turq:#7BCFCA;
  --cream:#FCE5C5;
  --page:#FFF9F6;
  --ink:#4A353D;
  --muted:#6c5e67;
  --line:#efe6e1;
  --shadow:0 24px 55px rgba(31,20,26,.08);
  --max:1190px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--ink);font-family:'Outfit',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;font-size:16px;line-height:1.65}
a{text-decoration:none;color:inherit}
img{display:block;max-width:100%}
.container{width:min(var(--max),calc(100% - 34px));margin:0 auto}
h1,h2,h3,.title-font,.card-title,.eyebrow{font-family:'Luckiest Guy',cursive;font-weight:400;letter-spacing:.01em}
.btn{font-family:'Outfit',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;font-weight:800;letter-spacing:0;text-transform:none}
.page-wrap{overflow:hidden}

/* Header : état haut identique base WP */
.site-header{position:relative;z-index:1000;background:#fff;transition:all .25s ease;border-bottom:1px solid #f0e4de}
.header-logo-row{height:150px;display:flex;align-items:center;justify-content:center;background:#fff}
.header-logo-row img{width:250px;height:auto}
.header-nav-row{height:64px;background:#fff;border-top:1px solid #f1ece9;transition:all .25s ease}
.header-nav-inner{width:min(var(--max),calc(100% - 34px));margin:0 auto;height:100%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center}
.socials{display:flex;gap:22px;align-items:center}
.socials a{width:19px;height:19px;border-radius:50%;display:grid;place-items:center;font-size:14px;color:var(--plum);font-weight:800}
.nav{display:flex;gap:56px;align-items:center;justify-content:center}
.nav a{font-family:'Outfit',sans-serif;font-weight:800;font-size:15px;color:var(--plum);transition:color .2s}
.nav a.active,.nav a:hover{color:var(--turq)}
.nav-logo-small{display:flex;justify-content:flex-end;opacity:0;pointer-events:none;transition:opacity .2s}
.nav-logo-small img{height:44px;width:auto}

/* État scroll : bandeau prune compact */
.site-header.is-scrolled{position:fixed;top:0;left:0;right:0;background:var(--plum);border-bottom:0;box-shadow:0 10px 24px rgba(28,18,24,.16)}
.site-header.is-scrolled .header-logo-row{height:0;overflow:hidden}
.site-header.is-scrolled .header-nav-row{height:60px;background:var(--plum);border-top:0}
.site-header.is-scrolled .socials a,.site-header.is-scrolled .nav a{color:#fff}
.site-header.is-scrolled .nav a.active,.site-header.is-scrolled .nav a:hover{color:var(--turq)}
.site-header.is-scrolled .nav-logo-small{opacity:1;pointer-events:auto}
.header-spacer{display:none;height:214px}
.header-spacer.active{display:block}

/* Motifs dessin crayon */
.patterned{position:relative;background:var(--page);overflow:hidden}
.patterned:before,.patterned:after{content:"";position:absolute;background-repeat:no-repeat;background-size:contain;pointer-events:none;opacity:.55}
.patterned .motif{position:absolute;background-repeat:no-repeat;background-size:contain;pointer-events:none;opacity:.42}
.motif.garlic{background-image:url('../images/motif-garlic.svg');width:145px;height:145px;left:24px;top:95px}
.motif.leaf{background-image:url('../images/motif-leaf.svg');width:280px;height:210px;right:64px;bottom:-6px}
.motif.tomato{background-image:url('../images/motif-tomato.svg');width:220px;height:190px;right:310px;top:64px}
.motif.bean{background-image:url('../images/motif-bean.svg');width:150px;height:140px;left:42%;bottom:110px}

/* Homepage hero */
.home-hero{min-height:650px;padding:150px 0 105px}
.home-hero-grid{display:grid;grid-template-columns:minmax(0,520px) minmax(0,560px);gap:72px;align-items:center;position:relative;z-index:1}
.eyebrow{display:inline-block;background:#fff4ee;color:var(--plum);padding:11px 18px;font-size:15px;text-transform:uppercase;margin:0 0 24px}
.display-title{font-size:62px;line-height:1.18;color:var(--plum);margin:0 0 42px;text-transform:uppercase}
.author{display:flex;align-items:center;gap:12px;margin:0 0 42px;font-weight:800;color:var(--plum)}
.author img{width:28px;height:28px;border-radius:50%;object-fit:cover}
.home-copy p{font-size:18px;line-height:1.68;color:#382832;margin:0 0 54px}
.cta-row{display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:20px 31px;border-radius:8px;font-size:18px;line-height:1.2;color:#fff;background:var(--plum);border:2px solid var(--plum);transition:.2s}
.btn.secondary{background:#fff;color:var(--turq);border-color:var(--turq)}
.btn:hover{transform:translateY(-1px)}
.hero-image{border-radius:22px;overflow:hidden}
.hero-image img{height:560px;width:100%;object-fit:cover}

/* Sections */
.white-section{background:#fff;padding:126px 0 108px}
.section-head{text-align:center;margin-bottom:56px}
.section-title{font-size:40px;line-height:1.1;margin:0 0 12px;color:var(--plum);text-transform:uppercase}
.section-subtitle{margin:0;color:#707e8a;font-size:17px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:34px}
.recipe-card{background:#fff;border-radius:7px;overflow:hidden;box-shadow:var(--shadow)}
.recipe-card img{height:286px;width:100%;object-fit:cover}
.recipe-card-body{padding:34px 33px 36px}
.pill{display:inline-flex;background:#fff7f1;color:var(--turq);font-weight:900;text-transform:uppercase;font-size:13px;padding:5px 11px;border-radius:3px;margin-bottom:19px}
.card-title{font-size:22px;line-height:1.22;margin:0;color:var(--plum);text-transform:uppercase}
.center-cta{text-align:center;margin-top:64px}
.center-cta .btn{background:var(--turq);border-color:var(--turq);font-family:'Outfit',sans-serif;font-weight:700;border-radius:10px;font-size:16px;padding:18px 34px;box-shadow:none}

/* Page hero */
.page-hero{height:330px;display:flex;align-items:center;text-align:center}
.page-hero .container{position:relative;z-index:1}
.page-hero h1{font-size:50px;margin:0;color:var(--plum);text-transform:uppercase}
.breadcrumb{font-size:12px;font-weight:900;text-transform:uppercase;margin-top:20px}
.breadcrumb a{color:var(--turq)}
.breadcrumb span{margin:0 8px;color:#79848c}

/* Chefs */
.chefs-section{background:var(--page);padding:118px 0 90px}
.chefs-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:72px 56px;text-align:center}
.chef-card{min-width:0}
.chef-photo{width:205px;height:205px;margin:0 auto 32px;border-radius:50%;overflow:hidden;background:var(--turq)}
.chef-photo img{width:100%;height:100%;object-fit:cover}
.chef-name{font-size:29px;line-height:1.35;margin:0 0 28px;color:var(--plum);font-weight:700}
.chef-social{display:flex;justify-content:center;gap:14px}
.chef-social span{width:40px;height:40px;border-radius:50%;background:var(--plum);color:#fff;display:grid;place-items:center;font-size:14px;font-weight:900}

/* Recipes archive */
.recipe-list-section{background:#fff;padding:74px 0 95px}
.recipe-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px 34px}
.pagination{display:flex;justify-content:center;align-items:center;gap:28px;margin:68px 0 0;font-weight:900;color:#697883}
.pagination .current{background:var(--plum);color:#fff;border-radius:4px;width:42px;height:42px;display:grid;place-items:center}
.pagination .next{margin-left:auto;border:1px solid #e1e3e6;background:#fff;padding:12px 22px;text-transform:uppercase;font-size:12px;border-radius:3px}

/* Text/legal pages */
.text-section{background:#fff;padding:82px 0 96px}
.text-content{width:min(1080px,calc(100% - 34px));margin:0 auto}
.text-content h2{font-size:34px;margin:0 0 28px;text-transform:uppercase;color:var(--plum)}
.text-content p{font-size:17px;color:#60707c;margin:0 0 26px;line-height:1.7}
.text-content a{color:var(--turq);text-decoration:underline}
.text-block{margin-bottom:72px}

/* Footer */
.trend{background:#1c1218;color:#fff;padding:36px 0 33px}
.trend-title{font-family:'Outfit',sans-serif;font-size:17px;font-weight:800;margin-bottom:25px}
.trend-slider{position:relative}
.trend-viewport{overflow:hidden}
.trend-track{display:flex;gap:34px;scroll-behavior:smooth;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;padding-bottom:4px}
.trend-track::-webkit-scrollbar{display:none}
.trend-item{flex:0 0 calc((100% - 102px)/4);min-width:260px;display:grid;grid-template-columns:58px 1fr;gap:16px;align-items:center}
.trend-item img{width:58px;height:58px;border-radius:50%;object-fit:cover}
.trend-item .pill{background:var(--turq);color:#fff;margin:0 0 7px;font-size:12px;padding:4px 10px;font-family:'Outfit',sans-serif;font-weight:800;letter-spacing:0;border-radius:4px;text-transform:uppercase}
.trend-item h4{font-family:'Outfit',sans-serif;font-size:19px;line-height:1.28;margin:0;text-transform:uppercase;color:#fff;font-weight:800;letter-spacing:0}
.trend-nav{position:absolute;top:-4px;right:0;width:28px;height:22px;border:1px solid rgba(255,255,255,.12);background:transparent;color:#fff;display:grid;place-items:center;cursor:pointer;opacity:.7}
.trend-nav:hover{opacity:1}
.trend-nav.prev{right:34px}
.trend-nav.next{right:0}
.footer-main{background:#020607;color:#fff}
.footer-grid{display:grid;grid-template-columns:1fr 1.1fr 1fr;min-height:310px}
.footer-col{padding:72px 32px;border-left:1px solid rgba(255,255,255,.05)}
.footer-col:first-child{border-left:0;padding-left:0}
.footer-col h3{font-size:18px;margin:0 0 24px;color:#fff;font-weight:900}
.footer-col p,.footer-col a{color:#8a98a4;font-size:17px;line-height:1.7}
.footer-col a{display:block;margin-bottom:6px}
.store-row{display:flex;gap:24px;margin-top:28px;align-items:center}
.store-row img{height:34px;width:auto}
.footer-bottom{background:var(--cream);padding:24px 0;color:#3c2933;font-size:15px}

/* Future blocks for new requirements */
.newsletter-cta,.partners,.app-strip{display:none}

/* Responsiveness */
.mobile-menu-btn{display:none}
@media(max-width:1100px){
  .home-hero-grid{grid-template-columns:1fr;gap:38px}
  .hero-image img{height:420px}
  .chefs-grid{grid-template-columns:repeat(3,1fr)}
  .cards,.recipe-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:760px){
  .header-logo-row{height:122px}.header-logo-row img{width:206px}
  .header-nav-inner{grid-template-columns:auto 1fr auto}
  .nav{gap:18px}.nav a{font-size:14px}
  .socials{gap:10px}
  .nav-logo-small img{height:36px}
  .home-hero{padding:70px 0}.display-title{font-size:44px}.home-copy p{font-size:16px}
  .cards,.recipe-grid,.footer-grid{grid-template-columns:1fr}
  .trend-item{flex-basis:calc((100% - 34px)/2);min-width:280px}
  .chefs-grid{grid-template-columns:repeat(2,1fr);gap:50px 26px}
  .chef-photo{width:160px;height:160px}.chef-name{font-size:23px}
  .page-hero h1{font-size:40px}
}
@media(max-width:500px){
  .header-nav-inner{width:calc(100% - 20px)}
  .nav{gap:12px}.nav a{font-size:13px}
  .socials{display:none}
  .chefs-grid{grid-template-columns:1fr}
  .display-title{font-size:38px}
  .trend-item{flex-basis:88vw;min-width:88vw}
  .trend-nav{display:none}
}



/* Corrections V1.2 - bandeau tendance + bouton + favicon */
.center-cta .btn,
.btn {
  font-family: 'Outfit', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif;
}

.center-cta .btn {
  font-weight: 700;
  font-size: 16px;
  letter-spacing: 0;
  text-transform: none;
  padding: 18px 34px;
  border-radius: 9px;
}

.trend {
  background: #1b1117;
  color: #fff;
  padding: 34px 0 32px;
}

.trend-title {
  font-family: 'Outfit', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif !important;
  font-size: 16px;
  line-height: 1;
  font-weight: 800;
  letter-spacing: 0;
  margin: 0 0 25px;
  color: #fff;
}

.trend-slider {
  position: relative;
}

.trend-viewport {
  overflow: hidden;
}

.trend-track {
  display: flex;
  gap: 34px;
  overflow-x: auto;
  scroll-behavior: smooth;
  scrollbar-width: none;
  -ms-overflow-style: none;
  padding-bottom: 0;
}

.trend-track::-webkit-scrollbar {
  display: none;
}

.trend-item {
  flex: 0 0 calc((100% - 102px) / 4);
  min-width: 250px;
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 16px;
  align-items: center;
}

.trend-item img {
  width: 58px;
  height: 58px;
  border-radius: 999px;
  object-fit: cover;
}

.trend-item .pill {
  font-family: 'Outfit', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif !important;
  background: #7BCFCA;
  color: #fff;
  margin: 0 0 7px;
  font-size: 12px;
  line-height: 1;
  padding: 6px 9px;
  border-radius: 3px;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: none;
}

.trend-item h4 {
  font-family: 'Outfit', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif !important;
  color: #fff;
  font-size: 16px;
  line-height: 1.42;
  font-weight: 750;
  letter-spacing: 0;
  text-transform: uppercase;
  margin: 0;
}

.trend-nav {
  position: absolute;
  top: -8px;
  right: 0;
  width: 24px;
  height: 22px;
  border: 1px solid rgba(255,255,255,.13);
  background: transparent;
  color: rgba(255,255,255,.55);
  display: grid;
  place-items: center;
  cursor: pointer;
  font-size: 15px;
  line-height: 1;
  padding: 0;
}

.trend-nav.prev {
  right: 30px;
}

.trend-nav.next {
  right: 0;
}

.trend-nav:hover {
  color: #fff;
  border-color: rgba(255,255,255,.3);
}

@media(max-width:760px){
  .trend-item {
    flex-basis: calc((100% - 34px) / 2);
    min-width: 280px;
  }
}

@media(max-width:500px){
  .trend-item {
    flex-basis: 88vw;
    min-width: 88vw;
  }
  .trend-nav {
    display: none;
  }
}


/* Corrections V1.3 - typographie paragraphe accueil
   Objectif : caler le texte descriptif sur la police/rendu de l’ancien site. */
.home-copy p,
.text-content p,
.section-subtitle {
  font-family: 'Outfit', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif !important;
  font-weight: 400 !important;
  font-size: 16px !important;
  line-height: 1.62 !important;
  letter-spacing: 0 !important;
  color: #2f2330 !important;
}

.home-copy p {
  max-width: 455px;
  margin-bottom: 54px;
}

.author {
  font-family: 'Outfit', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  letter-spacing: 0 !important;
  color: #2f2330 !important;
}


/* Corrections V1.4 - paragraphes en Aptos uniquement
   Les titres restent inchangés. */
p,
.home-copy p,
.text-content p,
.section-subtitle,
.footer-col p,
.footer-col a,
.footer-bottom,
.author {
  font-family: Aptos, "Aptos", Calibri, Arial, sans-serif !important;
}

.home-copy p,
.text-content p,
.section-subtitle {
  font-weight: 400 !important;
  font-size: 16px !important;
  line-height: 1.62 !important;
  letter-spacing: 0 !important;
  color: #2f2330 !important;
}

.footer-col p,
.footer-col a {
  font-size: 17px;
  line-height: 1.7;
}

.author {
  font-weight: 600 !important;
  font-size: 15px !important;
}


/* V2 - blocs homepage demandés : vidéo, chef, Leslie, newsletter, partenaires, appli */
.episode-section {
  background: #fff;
  padding: 94px 0 82px;
}

.episode-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, .92fr);
  gap: 42px;
  align-items: stretch;
}

.section-label,
.mini-label {
  display: inline-flex;
  background: #fff4ee;
  color: var(--plum);
  padding: 8px 13px;
  border-radius: 3px;
  font-size: 12px;
  text-transform: uppercase;
  font-weight: 800;
  margin-bottom: 18px;
}

.episode-video-card {
  background: #fff;
  border-radius: 8px;
  box-shadow: var(--shadow);
  padding: 30px;
}

.video-frame {
  width: 100%;
  aspect-ratio: 16 / 9;
  background: #1b1117;
  border-radius: 8px;
  overflow: hidden;
  position: relative;
}

.video-frame iframe {
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
}

.video-placeholder {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  text-align: center;
  color: #fff;
}

.video-placeholder span {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background: var(--turq);
  display: grid;
  place-items: center;
  margin: 0 auto 14px;
  font-size: 24px;
}

.video-placeholder p {
  font-family: Aptos, "Aptos", Calibri, Arial, sans-serif;
  margin: 0;
  line-height: 1.45;
}

.video-placeholder small {
  color: #b9c3c9;
}

.profile-column {
  display: grid;
  gap: 24px;
}

.profile-card {
  background: var(--page);
  border-radius: 8px;
  padding: 28px;
  display: grid;
  grid-template-columns: 110px 1fr;
  gap: 24px;
  align-items: start;
  box-shadow: var(--shadow);
}

.profile-card img {
  width: 110px;
  height: 110px;
  border-radius: 999px;
  object-fit: cover;
}

.profile-card h2 {
  font-size: 30px;
  line-height: 1.05;
  margin: 0 0 12px;
  text-transform: uppercase;
  color: var(--plum);
}

.profile-card p {
  font-family: Aptos, "Aptos", Calibri, Arial, sans-serif;
  margin: 0;
  color: #2f2330;
  font-size: 16px;
  line-height: 1.58;
}

.newsletter-section {
  padding: 74px 0;
}

.newsletter-card {
  position: relative;
  z-index: 1;
  background: #fff;
  border-radius: 8px;
  box-shadow: var(--shadow);
  padding: 44px 48px;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 36px;
  align-items: center;
}

.newsletter-card p {
  font-family: Aptos, "Aptos", Calibri, Arial, sans-serif;
  margin: 0;
  max-width: 660px;
  color: #2f2330;
  font-size: 16px;
  line-height: 1.62;
}

.partners-section {
  background: #fff;
  padding: 92px 0 88px;
}

.partners-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 18px;
}

.partner-logo {
  min-height: 92px;
  border: 1px solid #efe6e1;
  border-radius: 8px;
  background: #fff;
  display: grid;
  place-items: center;
  text-align: center;
  padding: 14px;
  color: var(--plum);
  font-family: Aptos, "Aptos", Calibri, Arial, sans-serif;
  font-size: 15px;
  font-weight: 700;
  box-shadow: 0 14px 35px rgba(31,20,26,.04);
}

.partner-logo img {
  max-width: 120px;
  max-height: 54px;
  object-fit: contain;
}

.app-section {
  background: var(--page);
  padding: 72px 0;
}

.app-card {
  background: var(--plum);
  color: #fff;
  border-radius: 8px;
  padding: 38px 42px;
  display: grid;
  grid-template-columns: 110px 1fr auto;
  gap: 30px;
  align-items: center;
}

.app-logo-wrap {
  background: #fff;
  border-radius: 8px;
  padding: 16px;
}

.app-card h2 {
  font-size: 31px;
  line-height: 1.1;
  margin: 0 0 10px;
  text-transform: uppercase;
  color: #fff;
}

.app-card p {
  font-family: Aptos, "Aptos", Calibri, Arial, sans-serif;
  margin: 0;
  color: #e8dfe4;
  font-size: 16px;
  line-height: 1.55;
}

.app-store-row img {
  height: 38px;
}

@media(max-width: 1020px) {
  .episode-layout,
  .newsletter-card,
  .app-card {
    grid-template-columns: 1fr;
  }

  .partners-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media(max-width: 620px) {
  .profile-card {
    grid-template-columns: 1fr;
  }

  .partners-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .newsletter-card,
  .app-card,
  .episode-video-card {
    padding: 28px;
  }
}


/* V4 - sections saisons */
.seasons-section {
  background: var(--page);
  padding: 92px 0 86px;
}

.seasons-page-section {
  background: var(--page);
  padding: 74px 0 92px;
}

.seasons-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 22px;
}

.seasons-grid-page {
  grid-template-columns: repeat(3, 1fr);
}

.season-card {
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: var(--shadow);
  border: 1px solid #efe6e1;
  display: flex;
  flex-direction: column;
  min-height: 100%;
}

.season-card.locked {
  opacity: .82;
}

.season-card-image {
  height: 168px;
  background: #f7eee8;
  overflow: hidden;
}

.season-card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.season-card-body {
  padding: 24px 22px 26px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  flex: 1;
}

.season-status {
  align-self: flex-start;
  background: var(--turq);
  color: #fff;
  border-radius: 3px;
  padding: 5px 9px;
  font-family: Aptos, "Aptos", Calibri, Arial, sans-serif;
  font-size: 12px;
  font-weight: 700;
}

.season-card.locked .season-status {
  background: var(--plum);
}

.season-card h3 {
  margin: 4px 0 0;
  font-size: 26px;
  line-height: 1.05;
  text-transform: uppercase;
  color: var(--plum);
}

.season-card p {
  font-family: Aptos, "Aptos", Calibri, Arial, sans-serif;
  margin: 0;
  color: #2f2330;
  font-size: 15px;
  line-height: 1.52;
}

.season-tabs {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin: 0 0 34px;
  justify-content: center;
}

.season-tab {
  border: 1px solid #e8dde3;
  background: #fff;
  color: var(--plum);
  border-radius: 999px;
  padding: 10px 18px;
  font-family: Aptos, "Aptos", Calibri, Arial, sans-serif;
  font-weight: 700;
}

.season-tab.active,
.season-tab:hover {
  background: var(--plum);
  color: #fff;
}

@media(max-width: 1100px){
  .seasons-grid,
  .seasons-grid-page {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media(max-width: 620px){
  .seasons-grid,
  .seasons-grid-page {
    grid-template-columns: 1fr;
  }
}


/* V4.2 - page recette calée sur l’ancien site */
.recipe-origin-hero {
  min-height: 315px;
  display: flex;
  align-items: center;
  text-align: center;
  padding: 74px 0 68px;
}

.recipe-origin-hero .container {
  position: relative;
  z-index: 1;
}

.recipe-origin-category {
  display: inline-flex;
  background: #fff0e9;
  color: var(--turq);
  border-radius: 3px;
  padding: 5px 10px;
  font-family: Aptos, "Aptos", Calibri, Arial, sans-serif;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 28px;
}

.recipe-origin-hero h1 {
  max-width: 860px;
  margin: 0 auto 28px;
  color: var(--plum);
  font-size: 50px;
  line-height: 1.22;
  text-transform: uppercase;
}

.recipe-origin-date {
  font-family: Aptos, "Aptos", Calibri, Arial, sans-serif;
  color: #e58b6f;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
}

.recipe-origin-body {
  background: #fff;
  padding: 66px 0 72px;
}

.recipe-origin-container {
  width: min(760px, calc(100% - 34px));
  margin: 0 auto;
}

.recipe-origin-image {
  width: 100%;
  max-height: 540px;
  object-fit: cover;
  border-radius: 6px;
  box-shadow: 0 14px 38px rgba(38,25,33,.08);
  margin: 0 auto 36px;
}

.recipe-origin-card {
  background: #fff;
  border: 1px solid #e5e5e5;
  box-shadow: 0 13px 34px rgba(0,0,0,.08);
  padding: 26px 26px 34px;
}

.recipe-origin-summary p {
  font-family: Aptos, "Aptos", Calibri, Arial, sans-serif;
  color: #5b6b78;
  font-size: 16px;
  line-height: 1.68;
  margin: 0 0 24px;
}

.ingredients-origin-box {
  background: #fbf8e8;
  padding: 28px 28px 32px;
  margin: 0 0 34px;
}

.ingredients-origin-box h2,
.preparation-origin-box h2,
.notes-origin-box h2 {
  font-family: Aptos, "Aptos", Calibri, Arial, sans-serif;
  font-size: 24px;
  line-height: 1.2;
  color: #101318;
  font-weight: 700;
  margin: 0 0 22px;
  text-transform: none;
}

.ingredient-origin-group h3,
.preparation-origin-group h3 {
  font-family: Aptos, "Aptos", Calibri, Arial, sans-serif;
  font-size: 16px;
  font-weight: 700;
  color: #53616c;
  margin: 24px 0 12px;
}

.ingredient-origin-group:first-child h3,
.preparation-origin-group:first-child h3 {
  margin-top: 0;
}

.ingredient-origin-group ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.ingredient-origin-group li {
  display: grid;
  grid-template-columns: 22px 1fr;
  gap: 12px;
  align-items: center;
  border-top: 1px solid #e5dfc8;
  padding: 13px 0;
  font-family: Aptos, "Aptos", Calibri, Arial, sans-serif;
  color: #5f5360;
  font-size: 16px;
  line-height: 1.4;
}

.ingredient-origin-group li:last-child {
  border-bottom: 1px solid #e5dfc8;
}

.ingredient-dot {
  width: 17px;
  height: 17px;
  border-radius: 50%;
  border: 2px solid #d7cfaa;
  display: block;
}

.preparation-origin-box {
  padding: 0 0 20px;
}

.preparation-origin-box h2 {
  margin-top: 6px;
}

.prep-step {
  display: grid;
  grid-template-columns: 36px 1fr;
  gap: 18px;
  margin: 0 0 20px;
}

.prep-number {
  color: #101318;
  font-family: Aptos, "Aptos", Calibri, Arial, sans-serif;
  font-size: 26px;
  font-weight: 800;
  line-height: 1.2;
}

.prep-text {
  font-family: Aptos, "Aptos", Calibri, Arial, sans-serif;
  color: #53616c;
  font-size: 16px;
  line-height: 1.68;
}

.notes-origin-box {
  border-top: 1px dashed #dedede;
  padding-top: 26px;
}

.note-link {
  background: #fbf8e8;
  border-radius: 5px;
  padding: 18px;
  display: flex;
  gap: 18px;
  align-items: center;
  font-family: Aptos, "Aptos", Calibri, Arial, sans-serif;
}

.note-link span {
  width: 18px;
  height: 18px;
  background: #111827;
  color: #fff;
  border-radius: 50%;
  display: grid;
  place-items: center;
  font-size: 12px;
  font-weight: 700;
}

.note-link a {
  color: var(--turq);
  font-weight: 600;
}

@media(max-width: 760px){
  .recipe-origin-hero h1 {
    font-size: 36px;
  }
  .recipe-origin-card,
  .ingredients-origin-box {
    padding: 22px;
  }
}


/* V4.2 - admin recettes en accordéon */
.admin-help {
  background: #fbf8e8;
  border: 1px solid #eee4c8;
  color: #4a3a42;
  border-radius: 14px;
  padding: 14px 16px;
  margin: 0 0 18px;
  line-height: 1.5;
}

.recipe-accordion {
  padding: 0;
  overflow: hidden;
}

.recipe-summary-row {
  list-style: none;
  cursor: pointer;
  padding: 18px;
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: center;
}

.recipe-summary-row::-webkit-details-marker {
  display: none;
}

.recipe-summary-row strong {
  display: block;
  font-size: 18px;
  color: var(--text);
}

.recipe-summary-row small {
  display: block;
  color: var(--muted);
  margin-top: 4px;
}

.summary-badge {
  background: var(--accent);
  color: #fff;
  border-radius: 999px;
  padding: 6px 10px;
  font-weight: 700;
  font-size: 13px;
  white-space: nowrap;
}

.recipe-accordion-body {
  border-top: 1px solid var(--border);
  padding: 18px;
}

.large-textarea {
  min-height: 220px !important;
  font-family: Aptos, Arial, sans-serif !important;
  line-height: 1.5;
}


/* V4.6 - affichage images redimensionnées */
.season-card-image {
  background: #fff;
  display: grid;
  place-items: center;
}

.season-card-image img {
  width: 100%;
  height: 100%;
  object-fit: contain !important;
  padding: 12px;
}

.recipe-card img,
.hero-image img,
.recipe-origin-image {
  object-fit: cover;
}

.partner-logo img {
  object-fit: contain;
}


/* V4.8 - Matériel & Ustensiles */
.tools-origin-box {
  background: #fbf8e8;
  padding: 28px 28px 32px;
  margin: 0 0 34px;
}

.tools-origin-box h2 {
  font-family: Aptos, "Aptos", Calibri, Arial, sans-serif;
  font-size: 24px;
  line-height: 1.2;
  color: #101318;
  font-weight: 700;
  margin: 0 0 22px;
  text-transform: none;
}

.tools-origin-box ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.tools-origin-box li {
  display: grid;
  grid-template-columns: 22px 1fr;
  gap: 12px;
  align-items: center;
  border-top: 1px solid #e5dfc8;
  padding: 13px 0;
  font-family: Aptos, "Aptos", Calibri, Arial, sans-serif;
  color: #5f5360;
  font-size: 16px;
  line-height: 1.4;
}

.tools-origin-box li:last-child {
  border-bottom: 1px solid #e5dfc8;
}


/* V5.2 - page accueil : image recette + chef dynamique */
.hero-image {
  background: #fff7f2;
}

.hero-image img.week-image-contain,
.hero-image img[data-week-image] {
  object-fit: contain !important;
  background: #fff7f2;
  padding: 0;
}

.profile-card img[data-week-chef-card-photo],
.profile-card img[data-presentation-photo] {
  object-fit: cover;
  background: #fff;
}

.profile-card img[src*="logo-charte-on-mint"] {
  object-fit: contain;
  padding: 8px;
  background: #7BCFCA;
}
