/* Front UI - Tetria Pages Builder
   Styles volontairement "namespacés" pour éviter toute régression sur le thème.
*/


/* ==========================================================
   FINALISATION 01 — Socle polices (font-face)
   Reprend les noms utilisés par tetria-font-scope.css
   ========================================================== */
@font-face{
  font-family:'Calibri Tetria';
  src:url('../../fonts/calibri.woff2') format('woff2');
  font-weight:400;
  font-style:normal;
  font-display:swap;
}
@font-face{
  font-family:'Moonbeam Tetria';
  src:url('../../fonts/moonbeam.woff2') format('woff2'),
      url('../../fonts/moonbeam.ttf') format('truetype');
  font-weight:400;
  font-style:normal;
  font-display:swap;
}

/* ==========================================================
   Typo options (pages TETRIA) — police globale par page
   Classe injectée par inc/tetria-pages.php : .tetria-font-*
   ========================================================== */
.tetria-page.tetria-font-montserrat { font-family: "Montserrat", sans-serif; }
.tetria-page.tetria-font-poppins    { font-family: "Poppins", sans-serif; }
.tetria-page.tetria-font-roboto     { font-family: "Roboto", sans-serif; }
.tetria-page.tetria-font-opensans   { font-family: "Open Sans", sans-serif; }
.tetria-page.tetria-font-calibri    { font-family: 'Calibri Tetria', Calibri, 'Carlito', sans-serif; }

/* CYB112: même pipeline "page" pour les pages WP (wrapper .tetria-page-scope) */
.tetria-page-scope.tetria-font-montserrat { font-family: "Montserrat", sans-serif; }
.tetria-page-scope.tetria-font-poppins    { font-family: "Poppins", sans-serif; }
.tetria-page-scope.tetria-font-roboto     { font-family: "Roboto", sans-serif; }
.tetria-page-scope.tetria-font-opensans   { font-family: "Open Sans", sans-serif; }
.tetria-page-scope.tetria-font-calibri    { font-family: 'Calibri Tetria', Calibri, 'Carlito', sans-serif; }

/* ==========================================================
   FINALISATION 01 — Typographie globale (titres vs contenu)
   - Contenu : classe existante .tetria-font-* sur le wrapper
   - Titres  : nouvelle classe .tetria-titlefont-*
   - Home    : classes portées par <body> (sans toucher header/footer)
   ========================================================== */
.tetria-page-scope.tetria-titlefont-moonbeam h1,
.tetria-page-scope.tetria-titlefont-moonbeam h2,
.tetria-page-scope.tetria-titlefont-moonbeam h3,
.tetria-page-scope.tetria-titlefont-moonbeam h4,
.tetria-page-scope.tetria-titlefont-moonbeam h5,
.tetria-page-scope.tetria-titlefont-moonbeam h6 { font-family: 'Moonbeam Tetria', sans-serif !important; }

.tetria-page-scope.tetria-titlefont-calibri h1,
.tetria-page-scope.tetria-titlefont-calibri h2,
.tetria-page-scope.tetria-titlefont-calibri h3,
.tetria-page-scope.tetria-titlefont-calibri h4,
.tetria-page-scope.tetria-titlefont-calibri h5,
.tetria-page-scope.tetria-titlefont-calibri h6 { font-family: Calibri, "Carlito", Arial, sans-serif !important; }

.tetria-page-scope.tetria-titlefont-opensans h1,
.tetria-page-scope.tetria-titlefont-opensans h2,
.tetria-page-scope.tetria-titlefont-opensans h3,
.tetria-page-scope.tetria-titlefont-opensans h4,
.tetria-page-scope.tetria-titlefont-opensans h5,
.tetria-page-scope.tetria-titlefont-opensans h6 { font-family: "Open Sans", Arial, sans-serif !important; }

.tetria-page-scope.tetria-titlefont-roboto h1,
.tetria-page-scope.tetria-titlefont-roboto h2,
.tetria-page-scope.tetria-titlefont-roboto h3,
.tetria-page-scope.tetria-titlefont-roboto h4,
.tetria-page-scope.tetria-titlefont-roboto h5,
.tetria-page-scope.tetria-titlefont-roboto h6 { font-family: Roboto, Arial, sans-serif !important; }

.tetria-page-scope.tetria-titlefont-poppins h1,
.tetria-page-scope.tetria-titlefont-poppins h2,
.tetria-page-scope.tetria-titlefont-poppins h3,
.tetria-page-scope.tetria-titlefont-poppins h4,
.tetria-page-scope.tetria-titlefont-poppins h5,
.tetria-page-scope.tetria-titlefont-poppins h6 { font-family: Poppins, Arial, sans-serif !important; }

.tetria-page-scope.tetria-titlefont-montserrat h1,
.tetria-page-scope.tetria-titlefont-montserrat h2,
.tetria-page-scope.tetria-titlefont-montserrat h3,
.tetria-page-scope.tetria-titlefont-montserrat h4,
.tetria-page-scope.tetria-titlefont-montserrat h5,
.tetria-page-scope.tetria-titlefont-montserrat h6 { font-family: Montserrat, Arial, sans-serif !important; }

/* Home wrappers (contenu uniquement) */
body.tetria-bodyfont-moonbeam .tetria-home-v3,
body.tetria-bodyfont-moonbeam .tetria-scope { font-family: 'Moonbeam Tetria', sans-serif; }
body.tetria-bodyfont-calibri .tetria-home-v3,
body.tetria-bodyfont-calibri .tetria-scope { font-family: Calibri, "Carlito", Arial, sans-serif; }
body.tetria-bodyfont-opensans .tetria-home-v3,
body.tetria-bodyfont-opensans .tetria-scope { font-family: "Open Sans", Arial, sans-serif; }
body.tetria-bodyfont-roboto .tetria-home-v3,
body.tetria-bodyfont-roboto .tetria-scope { font-family: Roboto, Arial, sans-serif; }
body.tetria-bodyfont-poppins .tetria-home-v3,
body.tetria-bodyfont-poppins .tetria-scope { font-family: Poppins, Arial, sans-serif; }
body.tetria-bodyfont-montserrat .tetria-home-v3,
body.tetria-bodyfont-montserrat .tetria-scope { font-family: Montserrat, Arial, sans-serif; }

body.tetria-titlefont-moonbeam .tetria-home-v3 h1,
body.tetria-titlefont-moonbeam .tetria-home-v3 h2,
body.tetria-titlefont-moonbeam .tetria-home-v3 h3,
body.tetria-titlefont-moonbeam .tetria-home-v3 h4,
body.tetria-titlefont-moonbeam .tetria-home-v3 h5,
body.tetria-titlefont-moonbeam .tetria-home-v3 h6,
body.tetria-titlefont-moonbeam .tetria-scope h1,
body.tetria-titlefont-moonbeam .tetria-scope h2,
body.tetria-titlefont-moonbeam .tetria-scope h3,
body.tetria-titlefont-moonbeam .tetria-scope h4,
body.tetria-titlefont-moonbeam .tetria-scope h5,
body.tetria-titlefont-moonbeam .tetria-scope h6 { font-family: 'Moonbeam Tetria', sans-serif !important; }

body.tetria-titlefont-calibri .tetria-home-v3 h1,
body.tetria-titlefont-calibri .tetria-home-v3 h2,
body.tetria-titlefont-calibri .tetria-home-v3 h3,
body.tetria-titlefont-calibri .tetria-home-v3 h4,
body.tetria-titlefont-calibri .tetria-home-v3 h5,
body.tetria-titlefont-calibri .tetria-home-v3 h6,
body.tetria-titlefont-calibri .tetria-scope h1,
body.tetria-titlefont-calibri .tetria-scope h2,
body.tetria-titlefont-calibri .tetria-scope h3,
body.tetria-titlefont-calibri .tetria-scope h4,
body.tetria-titlefont-calibri .tetria-scope h5,
body.tetria-titlefont-calibri .tetria-scope h6 { font-family: Calibri, "Carlito", Arial, sans-serif !important; }

body.tetria-titlefont-opensans .tetria-home-v3 h1,
body.tetria-titlefont-opensans .tetria-home-v3 h2,
body.tetria-titlefont-opensans .tetria-home-v3 h3,
body.tetria-titlefont-opensans .tetria-home-v3 h4,
body.tetria-titlefont-opensans .tetria-home-v3 h5,
body.tetria-titlefont-opensans .tetria-home-v3 h6,
body.tetria-titlefont-opensans .tetria-scope h1,
body.tetria-titlefont-opensans .tetria-scope h2,
body.tetria-titlefont-opensans .tetria-scope h3,
body.tetria-titlefont-opensans .tetria-scope h4,
body.tetria-titlefont-opensans .tetria-scope h5,
body.tetria-titlefont-opensans .tetria-scope h6 { font-family: "Open Sans", Arial, sans-serif !important; }

body.tetria-titlefont-roboto .tetria-home-v3 h1,
body.tetria-titlefont-roboto .tetria-home-v3 h2,
body.tetria-titlefont-roboto .tetria-home-v3 h3,
body.tetria-titlefont-roboto .tetria-home-v3 h4,
body.tetria-titlefont-roboto .tetria-home-v3 h5,
body.tetria-titlefont-roboto .tetria-home-v3 h6,
body.tetria-titlefont-roboto .tetria-scope h1,
body.tetria-titlefont-roboto .tetria-scope h2,
body.tetria-titlefont-roboto .tetria-scope h3,
body.tetria-titlefont-roboto .tetria-scope h4,
body.tetria-titlefont-roboto .tetria-scope h5,
body.tetria-titlefont-roboto .tetria-scope h6 { font-family: Roboto, Arial, sans-serif !important; }

body.tetria-titlefont-poppins .tetria-home-v3 h1,
body.tetria-titlefont-poppins .tetria-home-v3 h2,
body.tetria-titlefont-poppins .tetria-home-v3 h3,
body.tetria-titlefont-poppins .tetria-home-v3 h4,
body.tetria-titlefont-poppins .tetria-home-v3 h5,
body.tetria-titlefont-poppins .tetria-home-v3 h6,
body.tetria-titlefont-poppins .tetria-scope h1,
body.tetria-titlefont-poppins .tetria-scope h2,
body.tetria-titlefont-poppins .tetria-scope h3,
body.tetria-titlefont-poppins .tetria-scope h4,
body.tetria-titlefont-poppins .tetria-scope h5,
body.tetria-titlefont-poppins .tetria-scope h6 { font-family: Poppins, Arial, sans-serif !important; }

body.tetria-titlefont-montserrat .tetria-home-v3 h1,
body.tetria-titlefont-montserrat .tetria-home-v3 h2,
body.tetria-titlefont-montserrat .tetria-home-v3 h3,
body.tetria-titlefont-montserrat .tetria-home-v3 h4,
body.tetria-titlefont-montserrat .tetria-home-v3 h5,
body.tetria-titlefont-montserrat .tetria-home-v3 h6,
body.tetria-titlefont-montserrat .tetria-scope h1,
body.tetria-titlefont-montserrat .tetria-scope h2,
body.tetria-titlefont-montserrat .tetria-scope h3,
body.tetria-titlefont-montserrat .tetria-scope h4,
body.tetria-titlefont-montserrat .tetria-scope h5,
body.tetria-titlefont-montserrat .tetria-scope h6 { font-family: Montserrat, Arial, sans-serif !important; }


/* ==========================================================
   FINALISATION 01 — HOTFIX FO
   Forcer la typographie globale (contenu) sur les descendants texte.
   Objectif : écraser les font-family inline (ex: WPBakery) sur les pages TETRIA.
   Scope strict : .tetria-page-scope uniquement.
   ========================================================== */
.tetria-page-scope.tetria-font-montserrat :where(p,span,div,li,a,td,th,label,input,textarea,select,button,small,strong,em,blockquote) { font-family: Montserrat, Arial, sans-serif !important; }
.tetria-page-scope.tetria-font-poppins    :where(p,span,div,li,a,td,th,label,input,textarea,select,button,small,strong,em,blockquote) { font-family: Poppins, Arial, sans-serif !important; }
.tetria-page-scope.tetria-font-roboto     :where(p,span,div,li,a,td,th,label,input,textarea,select,button,small,strong,em,blockquote) { font-family: Roboto, Arial, sans-serif !important; }
.tetria-page-scope.tetria-font-opensans   :where(p,span,div,li,a,td,th,label,input,textarea,select,button,small,strong,em,blockquote) { font-family: "Open Sans", Arial, sans-serif !important; }
.tetria-page-scope.tetria-font-calibri    :where(p,span,div,li,a,td,th,label,input,textarea,select,button,small,strong,em,blockquote) { font-family: 'Calibri Tetria', Calibri, 'Carlito', sans-serif !important; }



.tetria-page {
  max-width: 1400px;
  margin: 0 auto;
  padding: 40px 20px;
}

.tetria-block { margin: 0 0 24px; }

.tetria-block--narrow { max-width: 1040px; margin-left: auto; margin-right: auto; }
.tetria-block--full { max-width: none; padding-left: 0; padding-right: 0; }

.tetria-slider { border-radius: 12px; overflow: hidden; }

.tetria-video { max-width: 1040px; margin: 0 auto; }
.tetria-video__caption { margin-top: 10px; font-size: 14px; opacity: .85; }

.tetria-cards { display: grid; gap: 18px; }
.tetria-cards--3 { grid-template-columns: repeat(3, minmax(0,1fr)); }
.tetria-cards--2 { grid-template-columns: repeat(2, minmax(0,1fr)); }
.tetria-cards--4 { grid-template-columns: repeat(4, minmax(0,1fr)); }

@media (max-width: 900px){
  .tetria-cards--3, .tetria-cards--4 { grid-template-columns: 1fr; }
  .tetria-page { padding: 28px 16px; }
}

.tetria-cards-section__title {
  margin: 0 0 18px;
  text-align: center;
  font-size: 24px;
}

.tetria-card {
  border-radius: 12px;
  padding: 18px 18px;
  box-shadow: 0 8px 18px rgba(0,0,0,.10);
}

.tetria-card--blue { background: #0a1f6d; color: #fff; }
.tetria-card--white { background: #fff; color: #111; border: 1px solid rgba(10,31,109,.2); }

.tetria-card__icon img { width: 28px; height: 28px; display: block; }
.tetria-card__icon { margin-bottom: 10px; }

.tetria-card-title { margin: 0 0 8px; font-size: 16px; }
.tetria-card-text { font-size: 14px; line-height: 1.45; }


/* ==========================================================
   Notre organisation (page-notre-organisation)
   Injecté par Tétria admin (WPBakery shortcodes)
   ========================================================== */

.page-notre-organisation .tetria-org { padding: 30px 0; }

.page-notre-organisation .tetria-org .tetria-cards { display: grid; gap: 22px; }
.page-notre-organisation .tetria-org .tetria-cards--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.page-notre-organisation .tetria-org .tetria-cards--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 991px){
  .page-notre-organisation .tetria-org .tetria-cards--3 { grid-template-columns: 1fr; }
  .page-notre-organisation .tetria-org .tetria-cards--4 { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px){
  .page-notre-organisation .tetria-org .tetria-cards--4 { grid-template-columns: 1fr; }
}

.page-notre-organisation .tetria-org .tetria-block--narrow { max-width: 980px; margin: 0 auto; }
.page-notre-organisation .tetria-org .tetria-org-media { background: #f5f5f5; border-radius: 10px; padding: 18px; margin: 28px auto; }
.page-notre-organisation .tetria-org .tetria-org-media h3 { margin-top: 0; }

.page-notre-organisation .tetria-org .tetria-org-steps__wrap { border-radius: 26px; padding: 22px; max-width: 980px; margin: 28px auto; }

/* Hotfix responsive (mobile): éviter les colonnes trop étroites qui cassent les titres en vertical */
.page-notre-organisation .tetria-org .tetria-org-steps{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
  width: 100%;
}
.page-notre-organisation .tetria-org .tetria-step{ min-width: 0; }
.page-notre-organisation .tetria-org .tetria-step__title,
.page-notre-organisation .tetria-org .tetria-step__text{
  word-break: normal;
  overflow-wrap: normal;
  hyphens: auto;
}

@media (max-width: 991px){
  .page-notre-organisation .tetria-org .tetria-org-steps{ grid-template-columns: 1fr; }
}
.page-notre-organisation .tetria-org .tetria-step { text-align: center; padding: 8px 10px; }
.page-notre-organisation .tetria-org .tetria-step__icon img { width: 34px; height: 34px; display: inline-block; }
.page-notre-organisation .tetria-org .tetria-step__title { font-weight: 700; margin: 10px 0 6px; }
.page-notre-organisation .tetria-org .tetria-step__text { font-size: 13px; line-height: 1.45; opacity: .9; }

.page-notre-organisation .tetria-org .tetria-org-cta__box { background: #f5f5f5; border-radius: 10px; padding: 28px; text-align: center; max-width: 980px; margin: 28px auto; }
.page-notre-organisation .tetria-org .tetria-org-cta__box h3 { margin-top: 0; }


/* [CYB74] Exception : page Contact reste figée (canevas non élargi) */
.tetria-contact .tetria-page{ max-width: 1100px; }
.tetria-contact .tetria-block--narrow{ max-width: 820px; }

