/* Home VFO (SPEC-HOME 16/08) — chargé uniquement sur la front page.
   Alternance de fonds : bg → linen → brun (une fois) → bg → linen. */

/* le gabarit gère sa largeur : neutraliser le conteneur Astra sur la home */
.home #content .ast-container{max-width:none;padding:0}
.home .site-content{padding:0}
.vfo-home{background:var(--vfo-bg)}
.vfo-home section{padding:52px 44px}
.vfo-home h2{font:600 32px/1.2 var(--vfo-serif);color:var(--vfo-ink);margin:0}

/* placeholders photos (en attendant les vraies : jamais de stock générique) */
.vfo-ph{display:block;width:100%;height:100%;min-height:180px;background:
  linear-gradient(135deg,var(--vfo-linen) 0%,#E7DED2 100%);border-radius:6px;position:relative}
.vfo-ph::after{content:"";position:absolute;inset:0;background:
  repeating-linear-gradient(115deg,transparent 0 26px,rgba(200,169,126,.14) 26px 28px);border-radius:6px}

/* 1. Hero (compact : sans boutons, les collections passent au-dessus de la waterline) */
.vfo-hero{display:grid;grid-template-columns:1.05fr 1fr;min-height:320px;padding:0!important}
.vfo-hero-txt{background:var(--vfo-linen);padding:40px 44px;display:flex;flex-direction:column;justify-content:center}
.vfo-hero-eyebrow{font:600 11.5px/1 var(--vfo-sans);letter-spacing:.14em;text-transform:uppercase;color:var(--vfo-jade);margin-bottom:16px}
.vfo-hero-txt h1{font:600 clamp(34px,4vw,52px)/1.12 var(--vfo-serif);color:var(--vfo-ink);margin:0 0 18px}
.vfo-hero-txt p{font:400 17px/1.6 var(--vfo-sans);color:var(--vfo-body);max-width:46ch;margin:0}
.vfo-hero-media .vfo-ph{border-radius:0;height:100%}

/* 2. Trust bar */
.vfo-trust{display:flex;justify-content:center;gap:34px;flex-wrap:wrap;border-top:1px solid var(--vfo-line);border-bottom:1px solid var(--vfo-line);padding:16px 44px!important}
.vfo-trust span{font:500 13.5px/1 var(--vfo-sans);color:var(--vfo-body);display:inline-flex;align-items:center}
.vfo-trust span::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--vfo-oak);margin-right:9px}

/* têtes de section */
.vfo-sect{max-width:1240px;margin:0 auto}
.vfo-sect-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:24px}
.vfo-sect-more{font:600 14px/1 var(--vfo-sans);color:var(--vfo-jade)!important;text-decoration:none}
.vfo-sect-note{font:400 13.5px/1.4 var(--vfo-sans);color:var(--vfo-muted)}
.vfo-sect-linen{background:var(--vfo-linen);max-width:none}
.vfo-sect-linen .vfo-sect-head,.vfo-sect-linen .vfo-hp-grid{max-width:1240px;margin-left:auto;margin-right:auto}
.vfo-sect-linen .vfo-sect-head{margin-bottom:24px}

/* 3. Collections */
.vfo-cols-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.vfo-col-card{display:flex;flex-direction:column;text-decoration:none;background:#fff;border:1px solid var(--vfo-line);border-radius:8px;overflow:hidden}
.vfo-col-card:hover{border-color:var(--vfo-oak)}
.vfo-col-img{display:block;aspect-ratio:4/3}
.vfo-col-img .vfo-ph{border-radius:0;height:100%}
.vfo-col-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:14px 16px 4px}
.vfo-col-row b{font:600 16px/1.3 var(--vfo-sans);color:var(--vfo-ink)}
.vfo-col-row em{font:600 13.5px/1 var(--vfo-sans);font-style:normal;color:var(--vfo-jade);white-space:nowrap}
.vfo-col-meta{font:400 13px/1.4 var(--vfo-sans);color:var(--vfo-muted);padding:0 16px 14px}

/* 4. Best sellers */
.vfo-hp-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.vfo-hp-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--vfo-line);border-radius:8px;overflow:hidden;text-decoration:none;padding-bottom:14px}
.vfo-hp-card:hover{border-color:var(--vfo-oak)}
.vfo-hp-img{display:block;position:relative;aspect-ratio:4/5;background:var(--vfo-linen)}
.vfo-hp-img img{width:100%;height:100%;object-fit:cover;display:block}
.vfo-hp-card .vfo-card-chip{margin:12px 16px 0}
.vfo-hp-name{font:500 14.5px/1.4 var(--vfo-sans);color:var(--vfo-ink);padding:8px 16px 6px}
.vfo-hp-price{font:700 24px/1 var(--vfo-sans);color:var(--vfo-ink);padding:0 16px}
.vfo-hp-price i{font:500 12px/1 var(--vfo-sans);font-style:normal;color:var(--vfo-muted);margin-left:4px}

/* 5. Étapes */
.vfo-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;margin-top:26px}
.vfo-step{position:relative}
.vfo-step-n{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:var(--vfo-jade);color:#fff;font:600 14px/1 var(--vfo-sans);margin-bottom:12px}
.vfo-step:not(:last-child)::after{content:"";position:absolute;top:15px;left:44px;right:-12px;height:1px;background:var(--vfo-line)}
.vfo-step h3{font:600 17px/1.3 var(--vfo-serif);color:var(--vfo-ink);margin:0 0 7px}
.vfo-step p{font:400 14px/1.55 var(--vfo-sans);color:var(--vfo-body);max-width:30ch;margin:0}

/* 6. Sourcing & qualité */
.vfo-sourcing{background:var(--vfo-ink)}
.vfo-sourcing-inner{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:1.15fr 1fr;gap:40px;align-items:center}
.vfo-sourcing h2{color:#F1EAE0}
.vfo-sourcing-txt p{font:400 15px/1.65 var(--vfo-sans);color:rgba(241,234,224,.78);max-width:52ch;margin:16px 0 26px}
.vfo-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:18px 26px;margin-bottom:26px}
.vfo-stats span{font:400 12.5px/1.4 var(--vfo-sans);color:rgba(241,234,224,.6)}
.vfo-stats b{display:block;font:600 27px/1.1 var(--vfo-serif);color:var(--vfo-oak);margin-bottom:3px}
.vfo-sourcing-link{font:600 14px/1 var(--vfo-sans);color:var(--vfo-oak)!important;text-decoration:none}
.vfo-sourcing-pics{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-self:stretch}
.vfo-sourcing-pics .vfo-ph{min-height:150px}
.vfo-sourcing-pics .vfo-ph:first-child{grid-column:1/-1;min-height:190px}


/* 9. Bandeau customisation */
.vfo-custom-band{background:var(--vfo-linen);text-align:center;padding:52px 44px}
.vfo-custom-band p{font:400 15.5px/1.6 var(--vfo-sans);color:var(--vfo-body);margin:12px auto 24px;max-width:52ch}
.vfo-custom-btns{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}
.vfo-custom-cta{display:inline-block;padding:13px 22px;border:1.5px solid var(--vfo-jade);border-radius:6px;font:600 14.5px/1 var(--vfo-sans);color:var(--vfo-jade)!important;text-decoration:none}
.vfo-custom-cta:hover{background:var(--vfo-jade);color:#fff!important}
.vfo-custom-wa{display:inline-flex;align-items:center;gap:8px;font:600 14px/1 var(--vfo-sans);color:var(--vfo-jade)!important;text-decoration:none;padding:13px 0}
.vfo-custom-wa i{width:8px;height:8px;border-radius:50%;background:#25D366}

/* Responsive */
@media (max-width:1023px){
  .vfo-hp-grid{grid-template-columns:repeat(2,1fr)}
  .vfo-steps{grid-template-columns:repeat(2,1fr)}
  .vfo-step:not(:last-child)::after{display:none}
  .vfo-sourcing-inner{grid-template-columns:1fr}
}
@media (max-width:767px){
  .vfo-home section{padding:36px 16px}
  .vfo-hero{grid-template-columns:1fr}
  .vfo-hero-txt{padding:44px 20px}
  .vfo-hero-media .vfo-ph{min-height:240px}
  .vfo-cols-grid{grid-template-columns:repeat(2,1fr);gap:14px}
  .vfo-col-row{padding:11px 12px 2px}
  .vfo-col-meta{padding:0 12px 11px}
  .vfo-trust{gap:14px 22px;padding:14px 16px!important}
}
@media (max-width:520px){
  .vfo-hp-grid,.vfo-steps{grid-template-columns:1fr}
  .vfo-stats{grid-template-columns:1fr 1fr}
}
