/* =========================================================================
 * Thème Fabre - Base (variables, polices, typographie globale)
 * Valeurs mesurées sur produitfermedesfabres.com (thème leo_koreni + custom.css)
 * ========================================================================= */

:root {
  --fabre-green: #99cd4e;        /* menu actif, titres verts */
  --fabre-green-light: #b1d978;  /* bouton Contact, accents */
  --fabre-green-dark: #7fb032;
  --fabre-orange: #f37600;       /* pastille panier, réassurance, liens actifs */
  --fabre-red: #dc3545;
  --fabre-dark: #343434;         /* textes du header / menus */
  --fabre-text: #666;            /* texte courant */
  --fabre-text-light: #999;
  --fabre-cream: #fdf9f0;        /* fond des blocs crème de la home */
  --fabre-footer-bg: #3a3a3a;
  --fabre-font: 'Martel', serif;
  --fabre-font-btn: 'Josefin Slab', serif;
  --fabre-orange-dark: #d86f0e;  /* survol des boutons orange (panier, compte) */
}

/* Police d'icônes Themify (utilisée par le header du site d'origine) */
@font-face {
  font-family: 'themify';
  src: url('../fonts/themify.woff') format('woff'), url('../fonts/themify.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

.ti {
  display: inline-block;
  font-family: 'themify';
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  line-height: 2;
  text-transform: none;
  speak: never;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.ti-user::before { content: "\e602"; }
.ti-shopping-cart::before { content: "\e60d"; }
.ti-search::before { content: "\e610"; }
.ti-eye::before { content: "\e63d"; }
.ti-timer::before { content: "\e66e"; }
.ti-lock::before { content: "\e62b"; }
.ti-close::before { content: "\e646"; }
.ti-angle-right::before { content: "\e649"; }
.ti-angle-down::before { content: "\e64b"; }
.ti-menu::before { content: "\e68e"; }
.ti-new-window::before { content: "\e732"; }
.ti-email::before { content: "\e75a"; }

/* Le site d'origine force Martel sur tous les éléments (* { font-family: Martel }) */
body {
  font-family: var(--fabre-font);
  font-size: 14px;
  line-height: 1.25;
  color: var(--fabre-text);
  background-color: #fff;
}

/* :where() = spécificité nulle : la règle prime quand même sur hummingbird (rangé dans des @layer)
   et les classes du thème peuvent la surcharger (ex. police des boutons ci-dessous). */
body :where(*:not(.material-icons):not(.ti):not([class^="ti-"])) {
  font-family: var(--fabre-font);
}

/* Boutons et badges du thème d'origine : police « Josefin Slab » (leo_koreni) */
.linov-menu-tabs__link,
.product__add-to-cart-button,
.product-flag.discount {
  font-family: var(--fabre-font-btn);
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: var(--fabre-font);
}

/* Contenus rédigés dans le BO (pages CMS, descriptions) : typographie du thème d'origine */
.rich-text h1, .rich-text h2, .rich-text h3, .rich-text h4, .rich-text h5, .rich-text h6 {
  margin: 0 0 8px;
  font-weight: 700;
  line-height: 1.1;
  color: var(--fabre-dark);
}
.rich-text h1 { font-size: 22px; }
.rich-text h2 { font-size: 20px; }
.rich-text h3 { font-size: 18px; }
.rich-text h4 { font-size: 18px; }
.rich-text h5 { font-size: 16px; }
.rich-text h6 { font-size: 15px; }
.rich-text table {
  margin-bottom: 0;
}
