/*
Theme Name: FARM Madagascar Modern
Theme URI: https://www.farm-madagascar.org/
Description: Thème WordPress autonome moderne pour FARM – Femmes en Action Rurale de Madagascar. Conserve les contenus, menus, widgets et réglages du site tout en modernisant l'identité visuelle.
Author: FARM Madagascar / Feon'ny Demokrasia
Author URI: https://feonydemokrasia.mg/
Version: 23.0
Text Domain: farm-modern
Requires at least: 5.0
Requires PHP: 5.6
License: GPLv3 or later
License URI: https://www.gnu.org/licenses/gpl-3.0.html
*/

/* ==========================================================
   FARM MADAGASCAR — BRAND SYSTEM
   Palette inspirée du logo: vert, violet et orange.
   ========================================================== */
:root {
  --farm-green: #33a83b;
  --farm-green-dark: #1f7a2b;
  --farm-green-soft: #f5f8df;
  --farm-purple: #6f2b7f;
  --farm-purple-dark: #50205d;
  --farm-orange: #eda735;
  --farm-ink: #202522;
  --farm-muted: #66706a;
  --farm-surface: #ffffff;
  --farm-surface-alt: #fff9e8;
  --farm-border: #e3e9e4;
  --farm-shadow: 0 14px 42px rgba(31, 70, 38, .10);
  --farm-radius: 18px;

  /* Compatibilité avec le parent Corpiva/FARM */
  --dt-main-color: var(--farm-green);
  --dt-main-rgb: 51, 168, 59;
  --dt-primary-color: var(--farm-purple);
  --dt-secondary-color: var(--farm-ink);
}

html { scroll-behavior: smooth; }
body {
  color: var(--farm-ink);
  background: var(--farm-surface);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

body, button, input, select, textarea { font-family: "Segoe UI", Arial, sans-serif; }

::selection { background: var(--farm-purple); color: #fff; }
a { transition: color .2s ease, background-color .2s ease, opacity .2s ease, transform .2s ease; }
a:hover { color: var(--farm-green-dark); }

/* Layout */
.dt-container { width: 95%; max-width: 1824px; }
.site-content { overflow: hidden; }

/* ==========================================================
   HEADER & NAVIGATION
   ========================================================== */
.header--seven { background: #fff; }
.header--seven .dt_header-topbar {
  color: #fff;
  background: linear-gradient(90deg, var(--farm-purple-dark), var(--farm-purple));
  border-bottom: 3px solid var(--farm-orange);
}
.header--seven .dt_header-topbar .widget--left,
.header--seven .dt_header-topbar::before { background: var(--farm-purple-dark); }
.header--seven .dt_header-topbar .widget--left::before { border-right-color: var(--farm-orange); }
.header--seven .dt_header-topbar a { color: #fff; }
.header--seven .dt_header-topbar a:hover { color: #fff3d4; }

.header--seven .dt_navbar-wrapper {
  background: rgba(255,255,255,.97);
  border-bottom: 1px solid var(--farm-border);
  box-shadow: 0 7px 24px rgba(32, 37, 34, .06);
}
.header--seven .site--logo img,
.dt_mobilenav .site--logo img {
  max-height: 82px;
  width: auto;
  object-fit: contain;
}

.dt_navbar-nav .menu-item > a {
  color: var(--farm-ink);
  font-weight: 700;
  letter-spacing: .01em;
  position: relative;
}
.dt_navbar-nav .menu-item > a::after {
  content: "";
  position: absolute;
  left: 50%;
  right: 50%;
  bottom: 8px;
  height: 3px;
  background: linear-gradient(90deg, var(--farm-green), var(--farm-orange));
  border-radius: 10px;
  transition: left .25s ease, right .25s ease;
}
.dt_navbar-nav .menu-item:hover > a::after,
.dt_navbar-nav .current-menu-item > a::after,
.dt_navbar-nav .current-menu-ancestor > a::after { left: 14px; right: 14px; }
.dt_navbar-nav .current-menu-item > a,
.dt_navbar-nav .current-menu-ancestor > a { color: var(--farm-purple); }

.dt_navbar-nav .sub-menu {
  border: 1px solid var(--farm-border);
  border-top: 3px solid var(--farm-green);
  border-radius: 0 0 14px 14px;
  box-shadow: var(--farm-shadow);
  overflow: hidden;
}
.dt_navbar-nav .sub-menu a:hover { background: var(--farm-green-soft); color: var(--farm-green-dark); }

/* Search / header buttons */
.dt_navbar-list-right a,
.dt_navbar-list-right button { border-radius: 999px; }

/* Mobile */
.dt_mobilenav { background: #fff; border-bottom: 1px solid var(--farm-border); }
.dt_mobilenav-topbar { background: var(--farm-purple); color: #fff; }
.hamburger span { background: var(--farm-purple); }
.dt_mobilenav-mainmenu-content { border-left: 4px solid var(--farm-green); }

/* ==========================================================
   HERO / SLIDER
   ========================================================== */
.dt_slider--one .dt_slider-item { min-height: clamp(520px, 70vh, 760px); }
.dt_slider--one .dt_slider-item::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(19,30,22,.78) 0%, rgba(30,35,31,.48) 48%, rgba(30,35,31,.14) 100%);
  pointer-events: none;
}
.dt_slider--one .dt_slider-content { position: relative; z-index: 2; max-width: 820px; }
.header--seven + #content .dt_slider--one .dt_slider-content .subtitle {
  color: #fff;
  background: rgba(51,168,59,.92);
  display: inline-flex;
  padding: .55rem 1rem;
  border-radius: 999px;
  font-weight: 800;
  letter-spacing: .04em;
}
.header--seven + #content .dt_slider--one .dt_slider-content .title {
  color: #fff;
  text-shadow: 0 3px 20px rgba(0,0,0,.22);
  border-bottom-color: rgba(255,255,255,.28);
}
.header--seven + #content .dt_slider--one .dt_slider-content .title::before {
  background: linear-gradient(90deg, var(--farm-green), var(--farm-orange));
  height: 4px;
  border-radius: 4px;
}
.dt_slider--one .dt_slider-content p { color: rgba(255,255,255,.93); font-size: 1.08em; }
.dt_slider--one .dt-btn,
.dt_slider--one .btn,
.dt_slider--one a[class*="btn"] {
  border-radius: 999px;
  box-shadow: 0 10px 24px rgba(0,0,0,.16);
}

/* ==========================================================
   TYPOGRAPHY & SECTION TITLES
   ========================================================== */
h1, h2, h3, h4, h5, h6 { color: var(--farm-ink); line-height: 1.2; }
.section-title h2,
.section-title-two h2,
.dt-section-title h2 { font-weight: 800; letter-spacing: -.025em; }
.section-title .subtitle,
.section-title-two .subtitle,
.dt-section-title .subtitle { color: var(--farm-purple); font-weight: 800; }

/* Universal accent under common headings */
.entry-content h2,
.widget-title {
  position: relative;
}
.entry-content h2::after {
  content: "";
  display: block;
  width: 66px;
  height: 4px;
  margin-top: 10px;
  border-radius: 5px;
  background: linear-gradient(90deg, var(--farm-green), var(--farm-orange));
}

/* ==========================================================
   CARDS / SERVICES / ACTIVITIES
   ========================================================== */
.services-item,
.infohover,
.dt_service--twelve .item-inner,
.dt_service--thirteen .services-item,
.post,
.type-post,
.wp-block-group.has-background {
  border-radius: var(--farm-radius);
}

.dt_service--twelve .item-inner,
.dt_service--thirteen .services-item,
.infohover {
  border: 1px solid var(--farm-border);
  box-shadow: var(--farm-shadow);
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}
.dt_service--twelve .item-inner:hover,
.dt_service--thirteen .services-item:hover,
.infohover:hover {
  transform: translateY(-7px);
  border-color: rgba(51,168,59,.35);
  box-shadow: 0 22px 48px rgba(31,70,38,.15);
}

.dt_service--thirteen .services-item .services-icon { background: var(--farm-purple); }
.dt_service--thirteen .services-item:hover .services-icon { background: var(--farm-green); }
.dt_service--thirteen .services-item .services-content .count { color: var(--farm-green); }
.dt_service--thirteen .services-item .title a:hover,
.dt_service--thirteen .services-item .link-btn:hover { color: var(--farm-purple); }

/* Alternate section backgrounds */
.home .site-content > section:nth-of-type(even),
.home .site-content > div:nth-of-type(even).dt-section { background-color: var(--farm-surface-alt); }

/* ==========================================================
   BUTTONS
   ========================================================== */
button,
input[type="button"],
input[type="submit"],
.dt-btn,
.btn,
a.button,
.wp-block-button__link {
  border-radius: 999px !important;
}
.dt-btn-primary,
.btn-primary,
input[type="submit"],
.wp-block-button__link {
  background: linear-gradient(135deg, var(--farm-green), var(--farm-green-dark));
  border-color: var(--farm-green-dark);
  color: #fff;
  box-shadow: 0 8px 20px rgba(51,168,59,.20);
}
.dt-btn-primary:hover,
.btn-primary:hover,
input[type="submit"]:hover,
.wp-block-button__link:hover {
  background: linear-gradient(135deg, var(--farm-purple), var(--farm-purple-dark));
  border-color: var(--farm-purple-dark);
  color: #fff;
  transform: translateY(-2px);
}

/* ==========================================================
   POSTS / NEWS
   ========================================================== */
.blog .post,
.archive .post,
.dt_posts .post,
[class*="post-carousel"] article {
  background: #fff;
  border: 1px solid var(--farm-border);
  box-shadow: 0 12px 34px rgba(32,37,34,.08);
  overflow: hidden;
  transition: transform .25s ease, box-shadow .25s ease;
}
.blog .post:hover,
.archive .post:hover,
.dt_posts .post:hover { transform: translateY(-5px); box-shadow: var(--farm-shadow); }
.entry-title a:hover { color: var(--farm-purple); }

/* ==========================================================
   PAGE TITLE / BREADCRUMB
   ========================================================== */
.dt_pagetitle {
  position: relative;
  background-color: var(--farm-purple-dark);
}
.dt_pagetitle::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(80,32,93,.90), rgba(31,122,43,.68));
  pointer-events: none;
}
.dt_pagetitle .dt-container { position: relative; z-index: 1; }
.dt_pagetitle h1, .dt_pagetitle a, .dt_pagetitle li { color: #fff; }

/* ==========================================================
   FORMS
   ========================================================== */
input[type="text"], input[type="email"], input[type="tel"], input[type="url"],
input[type="number"], input[type="date"], select, textarea {
  border: 1px solid #d9e2da;
  border-radius: 12px;
  background: #fff;
  min-height: 48px;
  padding: 11px 14px;
}
textarea { min-height: 140px; }
input:focus, select:focus, textarea:focus {
  border-color: var(--farm-green);
  box-shadow: 0 0 0 3px rgba(51,168,59,.12);
  outline: none;
}

/* ==========================================================
   SIDEBAR / WIDGETS
   ========================================================== */
.widget {
  border-radius: 16px;
}
.widget-title { color: var(--farm-purple); font-weight: 800; }
.widget-title::after {
  content: "";
  display: block;
  width: 42px;
  height: 3px;
  margin-top: 8px;
  background: var(--farm-orange);
  border-radius: 3px;
}

/* ==========================================================
   FOOTER
   ========================================================== */
footer,
.dt_footer {
  background: #172019;
  color: rgba(255,255,255,.82);
}
footer a, .dt_footer a { color: rgba(255,255,255,.86); }
footer a:hover, .dt_footer a:hover { color: #aee7b3; }
footer .widget-title, .dt_footer .widget-title { color: #fff; }
footer .widget-title::after, .dt_footer .widget-title::after {
  background: linear-gradient(90deg, var(--farm-green), var(--farm-orange));
}
.footer-copyright,
.dt_footer_copyright { border-top: 1px solid rgba(255,255,255,.10); }

/* ==========================================================
   ACCESSIBILITY / PERFORMANCE-FRIENDLY MOTION
   ========================================================== */
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible {
  outline: 3px solid var(--farm-orange);
  outline-offset: 3px;
}
img { max-width: 100%; height: auto; }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* ==========================================================
   RESPONSIVE
   ========================================================== */
@media (max-width: 991.98px) {
  .dt-container { width: min(92%, 760px); }
  .dt_mobilenav .site--logo img { max-height: 66px; }
  .dt_slider--one .dt_slider-item { min-height: 540px; }
  .dt_slider--one .dt_slider-content { max-width: 92%; }
}

@media (max-width: 575.98px) {
  .dt-container { width: 92%; }
  .dt_slider--one .dt_slider-item { min-height: 500px; }
  .dt_slider--one .dt_slider-content .title { font-size: clamp(2rem, 10vw, 3rem); }
  .header--seven + #content .dt_slider--one .dt_slider-content .title { padding-bottom: 1.3rem; margin-bottom: 1.3rem; }
  .entry-content h2::after { width: 52px; }
}

/* Sticky compact state injected by farm-modern.js */
#dt_header.farm-header-scrolled .dt_navbar-wrapper {
  box-shadow: 0 10px 34px rgba(32,37,34,.12);
}
#dt_header.farm-header-scrolled .site--logo img {
  max-height: 68px;
}


/* ==========================================================
   AUDIT 2026 — HOMEPAGE HIERARCHY & INSTITUTIONAL POLISH
   These rules style existing content only; no WordPress data is replaced.
   ========================================================== */

:root {
  --farm-section-space: clamp(68px, 7vw, 112px);
  --farm-card-radius: 20px;
  --farm-title-max: 760px;
}

/* Cleaner institutional rhythm */
.home .site-content > section,
.home .site-content > .dt-section,
.home .site-content > .elementor-section,
.home .site-content > .vc_section {
  position: relative;
}

.home .section-title,
.home .section-title-two,
.home .dt-section-title {
  max-width: var(--farm-title-max);
  margin-left: auto;
  margin-right: auto;
}

.home .section-title h2,
.home .section-title-two h2,
.home .dt-section-title h2 {
  font-size: clamp(1.85rem, 3vw, 2.8rem);
}

.home .section-title p,
.home .section-title-two p,
.home .dt-section-title p {
  color: var(--farm-muted);
  line-height: 1.8;
}

/* About / president section */
.farm-section-about {
  background:
    radial-gradient(circle at 8% 12%, rgba(51,168,59,.08), transparent 30%),
    radial-gradient(circle at 92% 80%, rgba(111,43,127,.07), transparent 28%),
    #fff;
}
.farm-section-about img {
  border-radius: 24px;
  box-shadow: 0 22px 55px rgba(25,58,31,.14);
}

/* Strategic activity axes */
.farm-section-activities {
  background: var(--farm-surface-alt);
}
.farm-section-activities .services-item,
.farm-section-activities .item-inner,
.farm-section-activities .infohover,
.farm-section-activities article {
  background: #fff;
}

/* Impact/chiffres area: strong but factual — values remain whatever WP provides */
.farm-section-impact {
  background: linear-gradient(135deg, var(--farm-green-dark), #185d22);
  color: #fff;
}
.farm-section-impact h1,
.farm-section-impact h2,
.farm-section-impact h3,
.farm-section-impact h4,
.farm-section-impact p,
.farm-section-impact .title,
.farm-section-impact .count,
.farm-section-impact .counter {
  color: #fff !important;
}
.farm-section-impact .counter,
.farm-section-impact [class*="counter"],
.farm-section-impact [class*="count"] {
  font-weight: 900;
}
.farm-section-impact .item,
.farm-section-impact .counter-item,
.farm-section-impact [class*="counter-box"] {
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 18px;
  background: rgba(255,255,255,.08);
  backdrop-filter: blur(5px);
}

/* Intervention zones */
.farm-section-zones {
  background:
    linear-gradient(rgba(255,255,255,.95), rgba(255,255,255,.95)),
    radial-gradient(circle at center, var(--farm-green-soft), #fff);
}
.farm-section-zones .services-item,
.farm-section-zones .item,
.farm-section-zones article,
.farm-section-zones [class*="card"] {
  border-radius: 18px;
}

/* News: stronger newsroom hierarchy */
.farm-section-news {
  background: #fff;
}
.farm-section-news article,
.farm-section-news .post,
.farm-section-news [class*="blog-item"] {
  overflow: hidden;
  border: 1px solid var(--farm-border);
  border-radius: var(--farm-card-radius);
  box-shadow: 0 13px 35px rgba(32,37,34,.08);
}
.farm-section-news article img,
.farm-section-news .post img,
.farm-section-news [class*="blog-item"] img {
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
}
.farm-section-news .entry-title,
.farm-section-news [class*="title"] {
  line-height: 1.3;
}

/* Partners are intentionally quiet so logos stay legible */
.farm-section-partners {
  background: #fff;
  border-top: 1px solid var(--farm-border);
}
.farm-section-partners img {
  max-height: 82px;
  width: auto;
  object-fit: contain;
  filter: grayscale(1);
  opacity: .78;
  transition: filter .2s ease, opacity .2s ease, transform .2s ease;
}
.farm-section-partners img:hover {
  filter: grayscale(0);
  opacity: 1;
  transform: translateY(-2px);
}

/* Slider audit improvements */
.dt_slider--one .dt_slider-item,
[class*="slider"] .dt_slider-item {
  background-position: center center;
  background-size: cover;
}
.dt_slider--one .dt_slider-content .title {
  max-width: 760px;
  font-size: clamp(2.25rem, 5vw, 4.6rem);
  line-height: 1.04;
  letter-spacing: -.035em;
}
.dt_slider--one .dt_slider-content p {
  max-width: 680px;
  line-height: 1.75;
}
.dt_slider--one .owl-dots .owl-dot span,
.dt_slider--one .slick-dots button {
  border-radius: 999px;
}

/* Header: NGO identity, logo-first */
.header--seven .dt_navbar-wrapper,
#dt_header .dt_navbar-wrapper {
  min-height: 86px;
}
#dt_header .site--logo {
  display: flex;
  align-items: center;
}
#dt_header .site--logo img {
  transition: max-height .22s ease;
}
.dt_navbar-nav > li > a {
  min-height: 72px;
  display: flex;
  align-items: center;
}

/* Footer audit: stronger readability and institutional contact feel */
.dt_footer,
footer {
  background:
    radial-gradient(circle at 82% 8%, rgba(111,43,127,.20), transparent 28%),
    linear-gradient(145deg, #132117, #172019 60%, #121915);
}
.dt_footer .widget,
footer .widget {
  background: transparent;
  box-shadow: none;
}
.dt_footer p,
.dt_footer li,
footer p,
footer li {
  line-height: 1.75;
}

/* Tables and project/budget content */
.entry-content table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
  border: 1px solid var(--farm-border);
  border-radius: 14px;
}
.entry-content table th {
  background: var(--farm-green-dark);
  color: #fff;
  font-weight: 800;
}
.entry-content table th,
.entry-content table td {
  padding: 12px 14px;
  border-bottom: 1px solid var(--farm-border);
}
.entry-content table tr:last-child td { border-bottom: 0; }

/* Accessibility: carousel clones should not create visual focus artifacts */
.owl-item.cloned:focus,
.slick-cloned:focus { outline: none; }

/* Back to top */
#farm-back-to-top {
  position: fixed;
  right: 22px;
  bottom: 22px;
  z-index: 999;
  width: 46px;
  height: 46px;
  padding: 0;
  border: 0;
  border-radius: 50% !important;
  background: var(--farm-purple);
  color: #fff;
  font-size: 22px;
  font-weight: 900;
  line-height: 46px;
  text-align: center;
  cursor: pointer;
  box-shadow: 0 10px 25px rgba(80,32,93,.25);
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: opacity .2s ease, transform .2s ease, visibility .2s ease, background .2s ease;
}
#farm-back-to-top:hover { background: var(--farm-green-dark); }
#farm-back-to-top.is-visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

/* Mobile audit: no crushed menus/cards, more compact hero */
@media (max-width: 991.98px) {
  .dt_slider--one .dt_slider-content .title {
    font-size: clamp(2.1rem, 8vw, 3.5rem);
  }
  .dt_navbar-nav > li > a { min-height: auto; }
}

@media (max-width: 575.98px) {
  .dt_slider--one .dt_slider-item { min-height: 540px; }
  .dt_slider--one .dt_slider-content p { font-size: 1rem; line-height: 1.6; }
  #farm-back-to-top { right: 14px; bottom: 14px; width: 42px; height: 42px; line-height: 42px; }
  .entry-content table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }
}

/* Standalone core layout */
.farm-site-header{background:#fff;position:relative;z-index:100;box-shadow:0 3px 18px rgba(0,0,0,.06)}
.farm-topbar{background:var(--farm-green-dark);color:#fff;font-size:14px}.farm-wrap{width:95%;max-width:1824px;margin:auto}.farm-topbar .farm-wrap{display:flex;justify-content:space-between;gap:20px;padding:8px 0}.farm-brandnav{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:14px 0}.farm-logo img,.custom-logo{max-height:78px;width:auto}.farm-logo a{font-weight:800;font-size:24px;color:var(--farm-green-dark);text-decoration:none}.farm-menu{display:flex;gap:8px;align-items:center;list-style:none;margin:0;padding:0;flex-wrap:wrap}.farm-menu a{display:block;padding:10px 12px;color:var(--farm-ink);text-decoration:none;font-weight:650;border-radius:10px}.farm-menu a:hover,.farm-menu .current-menu-item>a{background:var(--farm-green-soft);color:var(--farm-green-dark)}
.farm-hero{background:linear-gradient(120deg,var(--farm-green-dark),var(--farm-purple));color:#fff;padding:76px 0}.farm-hero h1{color:#fff;font-size:clamp(34px,5vw,62px);line-height:1.08;max-width:850px;margin:0 0 18px}.farm-hero p{font-size:19px;max-width:760px}.farm-btn{display:inline-block;background:var(--farm-orange);color:#241b0c!important;padding:13px 20px;border-radius:12px;text-decoration:none;font-weight:800;margin-top:12px}.farm-section{padding:62px 0}.farm-section.alt{background:var(--farm-surface-alt)}.farm-section-title{text-align:center;margin:0 0 34px}.farm-section-title h2{font-size:clamp(28px,4vw,42px);margin-bottom:8px;color:var(--farm-green-dark)}.farm-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.farm-card{background:#fff;border:1px solid var(--farm-border);border-radius:var(--farm-radius);overflow:hidden;box-shadow:var(--farm-shadow)}.farm-card img{width:100%;height:220px;object-fit:cover}.farm-card-body{padding:22px}.farm-card h3{margin:0 0 10px;font-size:21px}.farm-card a{text-decoration:none}.farm-main{padding:48px 0}.farm-content-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:38px}.farm-entry{background:#fff;border:1px solid var(--farm-border);border-radius:var(--farm-radius);padding:30px}.farm-entry img{max-width:100%;height:auto}.farm-footer{background:#17351e;color:#dfe9e1;padding:52px 0 18px}.farm-footer a{color:#fff}.farm-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:35px}.farm-footer h3{color:#fff}.farm-copy{border-top:1px solid rgba(255,255,255,.15);margin-top:35px;padding-top:18px;font-size:14px}.farm-mobile-toggle{display:none;border:0;background:var(--farm-green-dark);color:#fff;padding:10px 13px;border-radius:8px;font-size:18px}.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden}.farm-pagination{margin-top:30px}.farm-pagination .page-numbers{padding:8px 12px;background:#fff;border:1px solid var(--farm-border);border-radius:8px;text-decoration:none}
@media(max-width:900px){.farm-mobile-toggle{display:block}.farm-nav{display:none;width:100%}.farm-nav.open{display:block}.farm-brandnav{flex-wrap:wrap}.farm-menu{display:block}.farm-menu a{padding:12px}.farm-grid{grid-template-columns:1fr 1fr}.farm-content-layout{grid-template-columns:1fr}.farm-footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.farm-grid,.farm-footer-grid{grid-template-columns:1fr}.farm-topbar .farm-wrap{display:block}.farm-hero{padding:54px 0}.farm-section{padding:45px 0}}

/* FARM v9 — header/navigation and editorial slider */
.farm-site-header{position:sticky;top:0;background:#fff;z-index:9999;box-shadow:0 5px 24px rgba(18,60,31,.09)}
.farm-brandnav{min-height:92px;padding:8px 0;gap:34px}.farm-logo{flex:0 0 auto}.farm-logo img,.custom-logo{max-height:72px;max-width:190px;width:auto}
.farm-nav{margin-left:auto}.farm-menu{display:flex;align-items:center;gap:3px;flex-wrap:nowrap}.farm-menu>li{position:relative;list-style:none}.farm-menu>li>a{padding:35px 13px 32px;border-radius:0;font-size:14px;font-weight:750;white-space:nowrap;border-bottom:3px solid transparent;transition:.2s}.farm-menu>li>a:hover,.farm-menu>li:hover>a{background:transparent;color:var(--farm-green-dark);border-bottom-color:var(--farm-orange)}
.farm-chevron{font-size:15px;margin-left:4px}.farm-menu .sub-menu{position:absolute;top:calc(100% - 2px);left:0;width:285px;margin:0;padding:9px;background:#fff;border-top:3px solid var(--farm-orange);border-radius:0 0 14px 14px;box-shadow:0 18px 45px rgba(0,0,0,.15);list-style:none;opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s;z-index:10000}.farm-menu li:hover>.sub-menu,.farm-menu li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}.farm-menu .sub-menu li{margin:0}.farm-menu .sub-menu a{padding:12px 14px;border-radius:8px;font-size:14px;font-weight:650;border:0}.farm-menu .sub-menu a:hover{background:var(--farm-green-soft);color:var(--farm-green-dark);padding-left:18px}.farm-contact-link>a{background:var(--farm-green-dark)!important;color:#fff!important;border-radius:999px!important;padding:11px 18px!important;margin-left:7px;border:0!important}.farm-contact-link>a:hover{background:var(--farm-purple)!important}
.farm-home-slider{position:relative;height:clamp(500px,68vh,690px);overflow:hidden;background:var(--farm-green-dark)}.farm-slides,.farm-slide{height:100%}.farm-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;visibility:hidden;transition:opacity .75s ease;display:flex;align-items:center}.farm-slide.is-active{opacity:1;visibility:visible;z-index:2}.farm-slide-fallback{background:linear-gradient(120deg,var(--farm-green-dark),var(--farm-purple))}.farm-slide-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,47,25,.88) 0%,rgba(23,53,30,.66) 48%,rgba(64,32,74,.22) 100%)}.farm-slide-content{position:relative;z-index:2;color:#fff;padding-right:35%;text-shadow:0 2px 14px rgba(0,0,0,.2)}.farm-kicker,.farm-eyebrow{display:inline-block;text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:850}.farm-kicker{background:var(--farm-orange);color:#27200f;padding:7px 11px;border-radius:999px;margin-bottom:18px;text-shadow:none}.farm-slide h1{color:#fff;font-size:clamp(38px,5.4vw,70px);line-height:1.04;margin:0 0 18px;max-width:880px}.farm-slide p{font-size:clamp(16px,1.5vw,20px);line-height:1.65;max-width:720px;margin:0 0 24px}.farm-slide .farm-btn{margin:0;border-radius:999px;padding:14px 22px}.farm-slide-arrow{position:absolute;top:50%;z-index:5;transform:translateY(-50%);width:50px;height:50px;border:1px solid rgba(255,255,255,.45);border-radius:50%;background:rgba(0,0,0,.22);color:#fff;font-size:34px;cursor:pointer;backdrop-filter:blur(4px)}.farm-slide-arrow:hover{background:var(--farm-orange);color:#222}.farm-slide-arrow.prev{left:24px}.farm-slide-arrow.next{right:24px}.farm-slide-dots{position:absolute;z-index:5;bottom:24px;left:50%;transform:translateX(-50%);display:flex;gap:9px}.farm-dot{width:10px;height:10px;padding:0;border:2px solid #fff;border-radius:50%;background:transparent;cursor:pointer}.farm-dot.is-active{background:var(--farm-orange);border-color:var(--farm-orange);transform:scale(1.25)}.farm-eyebrow{color:var(--farm-purple);margin-bottom:7px}.farm-readmore{font-weight:750;color:var(--farm-purple)}
@media(max-width:900px){.farm-site-header{position:relative}.farm-brandnav{min-height:78px}.farm-nav{width:100%;margin:0}.farm-menu{display:block;padding:8px 0}.farm-menu>li>a{padding:12px 10px;border-bottom:0}.farm-menu .sub-menu{position:static;width:auto;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;border-left:3px solid var(--farm-orange);border-radius:0;margin:0 0 5px 16px;display:block}.farm-contact-link>a{display:inline-block;margin:8px 0}.farm-home-slider{height:560px}.farm-slide-content{padding-right:8%}.farm-slide-arrow{width:42px;height:42px}.farm-slide-arrow.prev{left:10px}.farm-slide-arrow.next{right:10px}}
@media(max-width:600px){.farm-logo img,.custom-logo{max-height:58px}.farm-home-slider{height:520px}.farm-slide-content{padding:0 12%;text-align:left}.farm-slide h1{font-size:36px}.farm-slide p{font-size:15px}.farm-slide-arrow{display:none}}

/* FARM v10 — Homepage intervention regions carousel */
.farm-zones-home{position:relative;overflow:hidden;background:linear-gradient(180deg,#fff 0%,#f4f8f3 100%)}
.farm-zones-home:before{content:"";position:absolute;width:440px;height:440px;border-radius:50%;right:-210px;top:-210px;background:rgba(111,43,127,.055);pointer-events:none}
.farm-zones-heading{position:relative;margin-bottom:30px}.farm-zones-heading p{max-width:700px;margin:0 auto 8px;color:var(--farm-muted)}
.farm-zones-all{display:inline-block;margin-top:7px;color:var(--farm-green-dark);font-weight:800;text-decoration:none}.farm-zones-all:hover{color:var(--farm-purple)}
.farm-region-carousel{position:relative;padding:0 58px}.farm-region-viewport{overflow:hidden;border-radius:20px}.farm-region-track{display:flex;gap:20px;transition:transform .55s cubic-bezier(.22,.61,.36,1);will-change:transform}
.farm-region-card{flex:0 0 470px;width:470px;min-width:470px;border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 14px 34px rgba(20,61,31,.13)}
.farm-region-card>a{display:block;text-decoration:none;color:#fff}.farm-region-media{height:280px;position:relative;background-size:cover;background-position:center;background-color:var(--farm-green-dark);overflow:hidden;transform:translateZ(0)}
.farm-region-media:before{content:"";position:absolute;inset:0;background:linear-gradient(145deg,rgba(23,53,30,.4),rgba(111,43,127,.22));transition:transform .5s ease,opacity .35s ease}.farm-region-card:hover .farm-region-media:before{transform:scale(1.05);opacity:.72}
.farm-region-shade{position:absolute;inset:30% 0 0;background:linear-gradient(to bottom,transparent,rgba(10,33,17,.92))}.farm-region-content{position:absolute;z-index:2;left:22px;right:22px;bottom:21px}.farm-region-index{display:inline-block;font-size:10px;line-height:1;text-transform:uppercase;letter-spacing:.14em;font-weight:850;color:#fff;background:var(--farm-orange);padding:7px 9px;border-radius:999px;margin-bottom:10px}.farm-region-content h3{color:#fff;font-size:25px;line-height:1.15;margin:0 0 9px;text-shadow:0 2px 8px rgba(0,0,0,.28)}.farm-region-more{font-size:13px;font-weight:700;color:rgba(255,255,255,.9)}.farm-region-more b{display:inline-block;margin-left:4px;transition:transform .2s}.farm-region-card:hover .farm-region-more b{transform:translateX(5px)}
.farm-region-placeholder{position:absolute;left:50%;top:42%;transform:translate(-50%,-50%);font-size:44px;font-weight:900;letter-spacing:.08em;color:rgba(255,255,255,.13)}
.farm-region-arrow{position:absolute;z-index:4;top:50%;transform:translateY(-50%);width:46px;height:46px;padding:0;border:0;border-radius:50%;background:#fff;color:var(--farm-green-dark);font-size:30px;line-height:44px;box-shadow:0 10px 28px rgba(20,61,31,.17);cursor:pointer;transition:.2s}.farm-region-arrow:hover{background:var(--farm-orange);color:#222;transform:translateY(-50%) scale(1.06)}.farm-region-arrow.prev{left:0}.farm-region-arrow.next{right:0}.farm-region-arrow:disabled{opacity:.35;cursor:default;transform:translateY(-50%)}
@media(max-width:1000px){.farm-region-card{flex:0 0 420px;width:420px;min-width:420px}.farm-region-media{height:280px}}
@media(max-width:620px){.farm-region-carousel{padding:0 38px}.farm-region-track{gap:14px}.farm-region-card{flex:0 0 100%;width:100%;min-width:100%}.farm-region-media{height:280px}.farm-region-arrow{width:36px;height:36px;line-height:34px;font-size:25px}.farm-region-content h3{font-size:27px}}

/* ==========================================================
   FARM v11 — Coviant-inspired premium homepage
   Architecture inspired by modern consulting/NGO landing pages,
   redesigned around FARM Madagascar's identity and content.
   ========================================================== */
.farm-coviant-hero{height:690px;min-height:690px}.farm-coviant-hero .farm-slide{min-height:690px}.farm-coviant-hero .farm-slide-overlay{background:linear-gradient(90deg,rgba(15,42,23,.88) 0%,rgba(15,42,23,.68) 46%,rgba(80,32,93,.25) 100%)}
.farm-coviant-hero .farm-slide-content{max-width:760px;margin-left:max(4%,calc((100% - 1180px)/2));padding-left:0}.farm-coviant-hero .farm-kicker{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);backdrop-filter:blur(4px)}
.farm-coviant-hero .farm-slide h1{font-size:clamp(42px,5.7vw,76px);line-height:1.02;letter-spacing:-.04em;max-width:820px}.farm-coviant-hero .farm-slide p{font-size:18px;max-width:680px}.farm-hero-actions{display:flex;gap:12px;flex-wrap:wrap}.farm-btn-outline{background:transparent!important;border:2px solid rgba(255,255,255,.85);color:#fff!important}.farm-btn-outline:hover{background:#fff!important;color:var(--farm-green-dark)!important}
.farm-focus-wrap{position:relative;z-index:15;margin-top:-62px}.farm-focus-grid{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border-radius:20px;box-shadow:0 20px 55px rgba(25,60,32,.16);overflow:hidden}.farm-focus-card{display:flex;gap:15px;min-height:155px;padding:28px 24px;text-decoration:none;color:var(--farm-ink);border-right:1px solid var(--farm-border);position:relative;overflow:hidden}.farm-focus-card:last-child{border-right:0}.farm-focus-card:after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:linear-gradient(90deg,var(--farm-green),var(--farm-orange));transform:scaleX(0);transform-origin:left;transition:.3s}.farm-focus-card:hover:after{transform:scaleX(1)}.farm-focus-card:hover{color:var(--farm-green-dark);transform:translateY(-3px)}.farm-focus-no{font-size:13px;font-weight:900;color:var(--farm-purple);padding-top:4px}.farm-focus-card h3{font-size:19px;margin:0 0 8px}.farm-focus-card p{font-size:13px;line-height:1.55;color:var(--farm-muted);margin:0}
.farm-coviant-about{padding-top:105px}.farm-about-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:70px;align-items:center}.farm-about-visual{position:relative;min-height:520px}.farm-about-img-main{width:82%;height:500px;object-fit:cover;border-radius:6px 70px 6px 6px;box-shadow:var(--farm-shadow)}.farm-about-img-small{position:absolute;right:0;bottom:-28px;width:48%;height:245px;object-fit:cover;border:10px solid #fff;border-radius:6px;box-shadow:0 16px 45px rgba(20,50,26,.2)}.farm-about-badge{position:absolute;left:-20px;bottom:38px;background:var(--farm-purple);color:#fff;width:150px;height:150px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:8px solid #fff;box-shadow:0 12px 35px rgba(80,32,93,.23)}.farm-about-badge strong{font-size:42px;line-height:1}.farm-about-badge span{font-size:12px;max-width:90px;margin-top:5px}.farm-about-copy h2,.farm-heading-row h2{font-size:clamp(34px,4.5vw,54px);line-height:1.08;letter-spacing:-.035em;color:var(--farm-green-dark);margin:10px 0 20px}.farm-about-copy>p{font-size:17px;line-height:1.8;color:var(--farm-muted)}.farm-about-points{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px;margin:24px 0}.farm-about-points span{font-weight:750;color:#314136}.farm-about-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.farm-text-link{font-weight:850;color:var(--farm-purple);text-decoration:none}.farm-text-link:hover{color:var(--farm-green-dark)}
.farm-services-section{background:#17351e;color:#fff;position:relative;overflow:hidden}.farm-services-section:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% 15%,rgba(111,43,127,.35),transparent 28%),radial-gradient(circle at 5% 90%,rgba(237,167,53,.12),transparent 25%)}.farm-services-section .farm-wrap{position:relative}.farm-heading-row{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:35px}.farm-services-section .farm-heading-row h2{color:#fff}.farm-services-section .farm-eyebrow{color:#ffd58b}.farm-btn-light{background:#fff!important;color:var(--farm-green-dark)!important}.farm-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.farm-service-card{position:relative;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.13);padding:30px;border-radius:16px;min-height:260px;overflow:hidden;transition:.25s}.farm-service-card:hover{background:#fff;transform:translateY(-6px);box-shadow:0 20px 45px rgba(0,0,0,.2)}.farm-service-number{position:absolute;right:22px;top:16px;font-size:52px;font-weight:900;color:rgba(255,255,255,.08)}.farm-service-card h3{color:#fff;font-size:22px;max-width:80%;margin:24px 0 14px}.farm-service-card p{color:rgba(255,255,255,.72);line-height:1.7}.farm-service-card a{color:#ffd58b;text-decoration:none;font-weight:800}.farm-service-card:hover h3{color:var(--farm-green-dark)}.farm-service-card:hover p{color:var(--farm-muted)}.farm-service-card:hover a{color:var(--farm-purple)}.farm-service-card:hover .farm-service-number{color:rgba(51,168,59,.09)}
.farm-impact-band{background:linear-gradient(95deg,var(--farm-purple-dark),var(--farm-purple));color:#fff;padding:48px 0}.farm-impact-grid{display:flex;align-items:center;justify-content:space-between;gap:35px}.farm-impact-lead{max-width:470px}.farm-impact-lead .farm-eyebrow{color:#ffd58b}.farm-impact-lead h2{color:#fff;font-size:32px;line-height:1.15;margin:8px 0}.farm-impact-stat{min-width:150px;border-left:1px solid rgba(255,255,255,.25);padding-left:28px}.farm-impact-stat strong{display:block;color:#fff;font-size:48px;line-height:1}.farm-impact-stat span{display:block;color:rgba(255,255,255,.78);margin-top:8px;font-size:13px;text-transform:uppercase;letter-spacing:.08em;font-weight:700}
.farm-projects-section{background:#fff}.farm-project-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.farm-project-card{height:430px;overflow:hidden;border-radius:14px;position:relative}.farm-project-card>a{display:block;height:100%;position:relative;color:#fff;text-decoration:none}.farm-project-card img{width:100%;height:100%;object-fit:cover;transition:transform .55s}.farm-project-card:hover img{transform:scale(1.07)}.farm-project-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(12,38,20,.94),rgba(12,38,20,.1) 67%)}.farm-project-copy{position:absolute;left:24px;right:24px;bottom:24px;z-index:2}.farm-project-copy small{color:#ffd58b}.farm-project-copy h3{color:#fff;font-size:21px;line-height:1.28;margin:8px 0 12px}.farm-project-copy span{font-weight:800;font-size:13px}
.farm-approach-section{background:#f4f8f3}.farm-process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.farm-process-grid article{position:relative;background:#fff;border-radius:18px;padding:34px 30px;border:1px solid var(--farm-border);box-shadow:0 12px 35px rgba(32,70,38,.06)}.farm-process-grid article span{display:inline-grid;place-items:center;width:58px;height:58px;border-radius:50%;background:var(--farm-green-soft);color:var(--farm-green-dark);font-size:19px;font-weight:900;border:1px dashed var(--farm-green)}.farm-process-grid article:not(:last-child):after{content:"→";position:absolute;right:-23px;top:52px;color:var(--farm-orange);font-size:30px;font-weight:900}.farm-process-grid h3{font-size:22px;margin:20px 0 9px}.farm-process-grid p{color:var(--farm-muted);line-height:1.7;margin:0}
.farm-people-section{background:#fff}.farm-people-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.farm-people-card{border:1px solid var(--farm-border);border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 13px 38px rgba(29,65,35,.08)}.farm-people-card img{width:100%;height:260px;object-fit:cover}.farm-people-card>div{padding:26px}.farm-people-card h3{font-size:24px;color:var(--farm-green-dark);margin:0 0 10px}.farm-people-card p{color:var(--farm-muted);line-height:1.7}.farm-people-card a{color:var(--farm-purple);font-weight:850;text-decoration:none}
.farm-news-premium .farm-heading-row{align-items:end}.farm-news-card{transition:.25s}.farm-news-card:hover{transform:translateY(-7px)}.farm-news-card small{color:var(--farm-purple);font-weight:750}.farm-home-cta{background:linear-gradient(100deg,#17351e,#1f7a2b);padding:58px 0;color:#fff;position:relative;overflow:hidden}.farm-home-cta:after{content:"";position:absolute;width:330px;height:330px;border-radius:50%;right:-100px;top:-150px;background:rgba(237,167,53,.16)}.farm-cta-inner{display:flex;justify-content:space-between;align-items:center;gap:40px;position:relative;z-index:1}.farm-cta-inner span{color:#ffd58b;text-transform:uppercase;letter-spacing:.11em;font-size:12px;font-weight:850}.farm-cta-inner h2{color:#fff;font-size:clamp(28px,4vw,44px);line-height:1.12;max-width:820px;margin:8px 0 0}
@media(max-width:1050px){.farm-focus-grid{grid-template-columns:repeat(2,1fr)}.farm-focus-card:nth-child(2){border-right:0}.farm-about-grid{grid-template-columns:1fr;gap:40px}.farm-about-visual{max-width:700px;margin:auto;width:100%}.farm-service-grid{grid-template-columns:repeat(2,1fr)}.farm-project-grid{grid-template-columns:repeat(2,1fr)}.farm-impact-grid{flex-wrap:wrap}.farm-people-grid{grid-template-columns:1fr 1fr}.farm-coviant-hero .farm-slide-content{margin-left:4%;}}
@media(max-width:700px){.farm-coviant-hero,.farm-coviant-hero .farm-slide{height:590px;min-height:590px}.farm-coviant-hero .farm-slide h1{font-size:40px}.farm-focus-wrap{margin-top:-35px}.farm-focus-grid{grid-template-columns:1fr}.farm-focus-card{border-right:0;border-bottom:1px solid var(--farm-border);min-height:auto}.farm-coviant-about{padding-top:70px}.farm-about-visual{min-height:390px}.farm-about-img-main{height:370px;width:88%}.farm-about-img-small{height:170px}.farm-about-badge{width:118px;height:118px;left:-5px;bottom:20px}.farm-about-badge strong{font-size:34px}.farm-about-points{grid-template-columns:1fr}.farm-heading-row{align-items:flex-start;flex-direction:column}.farm-service-grid,.farm-project-grid,.farm-process-grid,.farm-people-grid{grid-template-columns:1fr}.farm-project-card{height:390px}.farm-process-grid article:not(:last-child):after{display:none}.farm-impact-grid{display:grid;grid-template-columns:1fr 1fr}.farm-impact-lead{grid-column:1/-1}.farm-impact-stat{border-left:0;border-top:1px solid rgba(255,255,255,.2);padding:20px 0 0}.farm-cta-inner{flex-direction:column;align-items:flex-start}}


/* ==========================================================
   FARM V12 — WIDTH, WARM BRAND TONE & QUICK DISCOVERY
   ========================================================== */
body{background:#fffdf7}
.farm-section.alt,.farm-news-premium{background:#fff9e8}
.farm-coviant-about{background:linear-gradient(180deg,#fff 0%,#fffdf4 100%)}
.farm-zones-home{background:linear-gradient(180deg,#fffdf7 0%,#fff6d8 100%)}
.farm-focus-card:nth-child(3n+1){border-top:3px solid var(--farm-orange)}
.farm-focus-card:nth-child(3n+2){border-top:3px solid var(--farm-green)}
.farm-focus-card:nth-child(3n+3){border-top:3px solid var(--farm-purple)}
.farm-sensibilisation-title h2 a{color:var(--farm-ink);text-decoration:none}
.farm-sensibilisation-title h2 a:hover{color:var(--farm-green-dark)}

.farm-explore-strip{padding:24px 0;background:linear-gradient(110deg,#fff3bf 0%,#fff9e9 35%,#f4fae9 100%);border-top:1px solid rgba(237,167,53,.24);border-bottom:1px solid rgba(237,167,53,.24)}
.farm-explore-grid{display:grid;grid-template-columns:1.35fr repeat(4,1fr);gap:12px;align-items:stretch}
.farm-explore-intro{display:flex;flex-direction:column;justify-content:center;padding:12px 18px 12px 0}
.farm-explore-intro span{font-size:12px;text-transform:uppercase;letter-spacing:.15em;font-weight:900;color:var(--farm-purple)}
.farm-explore-intro strong{font-size:20px;line-height:1.25;margin-top:5px;color:var(--farm-ink)}
.farm-explore-grid>a{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:17px 18px;background:rgba(255,255,255,.83);border:1px solid rgba(237,167,53,.24);border-radius:14px;text-decoration:none;color:var(--farm-ink);box-shadow:0 9px 24px rgba(115,88,22,.06)}
.farm-explore-grid>a b{font-size:12px;color:var(--farm-orange);font-weight:900}.farm-explore-grid>a span{font-weight:800}.farm-explore-grid>a i{font-style:normal;font-weight:900;color:var(--farm-green-dark);transition:transform .2s}.farm-explore-grid>a:hover{transform:translateY(-3px);border-color:var(--farm-orange);background:#fff}.farm-explore-grid>a:hover i{transform:translateX(4px)}
@media(max-width:1100px){.farm-explore-grid{grid-template-columns:repeat(2,1fr)}.farm-explore-intro{grid-column:1/-1;padding-right:0}}
@media(max-width:620px){.dt-container,.farm-wrap{width:92%}.farm-explore-grid{grid-template-columns:1fr}.farm-explore-intro{grid-column:auto}.farm-region-card{flex:0 0 100%;width:100%;min-width:100%}}

/* FARM V13 — VISUAL FINISHING */
.farm-brandnav{min-height:92px;padding:10px 0;gap:36px}.farm-logo img,.custom-logo{max-height:86px;max-width:190px;width:auto}.farm-menu{gap:11px}.farm-menu>li>a{font-size:15px;padding:12px 14px;font-weight:750}.farm-contact-link>a{padding:11px 20px!important}
.farm-coviant-hero,.farm-coviant-hero .farm-slide{height:650px;min-height:650px}.farm-coviant-hero .farm-slide-overlay{background:linear-gradient(90deg,rgba(10,39,20,.92) 0%,rgba(13,48,25,.78) 43%,rgba(60,31,70,.34) 72%,rgba(60,31,70,.16) 100%)}.farm-coviant-hero .farm-slide-content{max-width:880px;margin-left:2.5%;padding-right:30px}.farm-coviant-hero .farm-slide h1{max-width:850px;font-size:clamp(42px,5.2vw,72px);text-wrap:balance}.farm-coviant-hero .farm-slide p{max-width:760px;font-size:18px;line-height:1.65}
.farm-focus-card{min-height:132px;padding:25px 24px}.farm-focus-card h3{font-size:18px;margin-bottom:7px}.farm-focus-card p{font-size:13.5px;line-height:1.55}
.farm-section{padding:54px 0}.farm-section-title{margin-bottom:28px}.farm-heading-row{margin-bottom:29px}.farm-coviant-about{padding-top:72px;padding-bottom:62px}.farm-services-section{padding-top:58px;padding-bottom:58px}.farm-zones-home,.farm-projects-section,.farm-approach-section,.farm-people-section,.farm-news-premium{padding-top:52px;padding-bottom:52px}.farm-impact-band{padding:40px 0}.farm-explore-strip{padding:18px 0}
.farm-region-card{flex:0 0 470px;width:470px;min-width:470px}.farm-region-media{height:280px;background-position:center}.farm-region-placeholder{opacity:.25}
.farm-project-card{height:400px;border-radius:16px;box-shadow:0 12px 34px rgba(25,62,32,.10)}.farm-project-copy h3{font-size:20px}
.farm-people-card{min-height:245px;display:flex;flex-direction:column}.farm-people-card img{height:245px}.farm-people-card>div{flex:1;padding:25px}
.farm-news-premium .farm-grid{align-items:stretch}.farm-news-card{height:100%;display:flex;flex-direction:column}.farm-news-card>a img,.farm-news-card img{height:235px;object-fit:cover}.farm-news-card .farm-card-body{display:flex;flex:1;flex-direction:column}.farm-news-card .farm-readmore{margin-top:auto}
.farm-footer{padding:46px 0 18px;background:linear-gradient(120deg,#12331b,#173f22)}.farm-footer-grid{grid-template-columns:1.35fr .8fr 1fr;gap:55px}.farm-footer-logo{background:#fff;display:inline-flex;padding:8px 12px;border-radius:12px;margin-bottom:14px}.farm-footer-logo img{max-height:62px;width:auto}.farm-footer-brand p{max-width:430px;line-height:1.75;color:rgba(255,255,255,.78)}.farm-footer-contact{display:inline-block;margin-top:8px;font-weight:800;color:#ffd58b!important;text-decoration:none}.farm-footer h3{font-size:18px;margin-bottom:16px}
@media(max-width:1050px){.farm-brandnav{min-height:82px}.farm-logo img,.custom-logo{max-height:72px}.farm-coviant-hero .farm-slide-content{margin-left:4%}.farm-footer-grid{gap:30px}}
@media(max-width:700px){.farm-section{padding:42px 0}.farm-coviant-about{padding-top:58px;padding-bottom:48px}.farm-coviant-hero,.farm-coviant-hero .farm-slide{height:570px;min-height:570px}.farm-coviant-hero .farm-slide-content{padding-right:8%;margin-left:4%}.farm-coviant-hero .farm-slide h1{font-size:38px}.farm-coviant-hero .farm-slide p{font-size:16px}.farm-region-card{flex:0 0 100%;width:100%;min-width:100%}.farm-region-media{height:280px}.farm-project-card{height:360px}.farm-footer-grid{grid-template-columns:1fr;gap:28px}}


/* ==========================================================
   FARM V14 — NAVIGATION, ACTIVITIES CONTRAST, REGION PAGES,
   INTERNATIONAL PARTNERS CTA
   ========================================================== */

/* Nos Activités: force excellent contrast on the dark section */
.farm-services-section{
  background:
    radial-gradient(circle at 92% 8%,rgba(248,183,47,.13),transparent 24%),
    linear-gradient(120deg,#0d321c 0%,#123c22 60%,#25283c 100%);
}
.farm-services-section .farm-eyebrow{color:#ffd36a!important}
.farm-services-section h2{color:#fff!important;text-shadow:0 1px 1px rgba(0,0,0,.08)}
.farm-service-card{background:rgba(255,255,255,.095);border:1px solid rgba(255,255,255,.13)}
.farm-service-card h3{color:#fff!important}
.farm-service-card p{color:#edf5ee!important;opacity:1!important}
.farm-service-card a{color:#ffd36a!important}
.farm-service-number{color:rgba(255,211,106,.24)!important}
.farm-services-section .farm-btn-light{background:#fff;color:#173b20!important;border-color:#fff}

/* More polished institutional menu */
.farm-header{box-shadow:0 7px 28px rgba(23,55,31,.08);border-top:4px solid #f5b52d}
.farm-brandnav{position:relative}
.farm-menu>li>a{position:relative;border-radius:8px;transition:.2s ease}
.farm-menu>li:not(.farm-contact-link)>a:after{
  content:"";position:absolute;left:14px;right:14px;bottom:5px;height:2px;
  background:linear-gradient(90deg,#19843a,#f5b52d);transform:scaleX(0);
  transform-origin:left;transition:transform .2s ease
}
.farm-menu>li:hover>a,.farm-menu>li.current-menu-item>a{color:#177637;background:#f6faf4}
.farm-menu>li:not(.farm-contact-link):hover>a:after,.farm-menu>li.current-menu-item>a:after{transform:scaleX(1)}
.farm-menu .sub-menu{padding:12px;border-radius:0 0 14px 14px;border-top:3px solid #f5b52d;box-shadow:0 18px 45px rgba(20,47,27,.18)}
.farm-menu .sub-menu a{padding:11px 13px;border-radius:7px}
.farm-menu .sub-menu a:hover{background:#f5f9f2;color:#177637;padding-left:17px}
.farm-contact-link>a{background:linear-gradient(135deg,#168039,#235e2d)!important;box-shadow:0 8px 20px rgba(20,110,49,.20)}
.farm-contact-link>a:hover{transform:translateY(-1px);box-shadow:0 11px 25px rgba(20,110,49,.26)}

/* Regional cards — image comes from each region page's featured image */
.farm-region-card a{display:block;height:100%}
.farm-region-media{height:280px!important}
.farm-region-shade{background:linear-gradient(180deg,rgba(7,42,18,.04) 25%,rgba(7,42,18,.88) 100%)}
.farm-region-card:hover .farm-region-media{transform:translateY(-3px)}
.farm-region-card:hover .farm-region-content h3{color:#ffd36a}

/* International partner callout, based on supplied visual reference */
.farm-partner-callout{padding:54px 0;background:#fafafa}
.farm-partner-callout-box{
  position:relative;display:grid;grid-template-columns:1fr auto;gap:45px;align-items:center;
  background:#fff;padding:50px 52px;border:1px solid #e8e8e8;
  border-top:4px solid #e21523;box-shadow:0 5px 16px rgba(15,34,20,.08)
}
.farm-partner-callout-copy h2{margin:0 0 10px;color:#151515;font-size:clamp(25px,2.4vw,38px);line-height:1.2}
.farm-partner-callout-copy h2 em{color:#df1422;font-style:italic}
.farm-partner-callout-copy p{margin:0;max-width:1100px;color:#666;font-size:17px;line-height:1.65}
.farm-partner-callout-btn{
  display:inline-flex;align-items:center;justify-content:center;min-width:180px;
  background:#df1422;color:#fff!important;text-decoration:none;font-weight:800;
  padding:17px 24px;box-shadow:0 7px 15px rgba(190,15,28,.20);transition:.2s ease
}
.farm-partner-callout-btn:hover{background:#b90d19;transform:translateY(-2px)}

/* Region page display polish */
body.page .farm-content h1,body.page .entry-title{color:#176f32}
body.page .farm-content img.wp-post-image,body.page .post-thumbnail img{border-radius:14px}

@media(max-width:900px){
  .farm-partner-callout-box{grid-template-columns:1fr;padding:36px 30px;gap:24px}
  .farm-partner-callout-btn{justify-self:start}
}
@media(max-width:700px){
  .farm-partner-callout{padding:38px 0}
  .farm-partner-callout-box{padding:28px 22px}
  .farm-partner-callout-copy p{font-size:15.5px}
}


/* ==========================================================
   FARM V15 — NOS ACTIVITÉS, approved visual direction
   ========================================================== */
.farm-services-section{
  position:relative;isolation:isolate;overflow:hidden;
  background:#173e22;
}
.farm-services-section:before{
  content:"";position:absolute;inset:0;z-index:-2;
  background-image:var(--farm-activity-bg,linear-gradient(120deg,#184c29,#68723e 62%,#e7b442));
  background-size:cover;background-position:center;
}
.farm-services-section:after{
  content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(90deg,rgba(6,57,25,.92) 0%,rgba(12,66,29,.78) 43%,rgba(67,72,28,.48) 72%,rgba(125,79,20,.28) 100%);
}
.farm-activities-heading{align-items:flex-end}
.farm-activities-heading>div{max-width:860px}
.farm-activities-heading h2{font-size:clamp(42px,4.5vw,68px)!important;line-height:1.02;margin:8px 0 16px!important}
.farm-activities-heading h2:after{content:"";display:block;width:92px;height:4px;margin-top:15px;background:#f4bd32;border-radius:4px}
.farm-activities-heading p{color:#fff!important;font-size:18px;line-height:1.65;margin:0;max-width:820px}
.farm-services-section .farm-btn-light{
  border-radius:999px;padding:15px 25px!important;background:#0f6e31!important;
  color:#fff!important;border:0!important;box-shadow:0 10px 25px rgba(0,0,0,.14)
}
.farm-services-section .farm-btn-light:hover{background:#f4b92d!important;color:#15391f!important}

/* White cards with strong dark typography */
.farm-service-grid{gap:18px}
.farm-service-card{
  position:relative;overflow:hidden;min-height:255px;padding:30px 32px 28px 36px!important;
  background:rgba(255,255,255,.97)!important;border:1px solid rgba(255,255,255,.8)!important;
  border-radius:13px!important;box-shadow:0 14px 32px rgba(5,39,16,.20)!important;
  transition:transform .22s ease,box-shadow .22s ease
}
.farm-service-card:before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:#2d9a42
}
.farm-service-card:nth-child(2):before{background:#7c43a8}.farm-service-card:nth-child(3):before{background:#e2a521}
.farm-service-card:nth-child(4):before{background:#e85a59}.farm-service-card:nth-child(5):before{background:#428bc8}.farm-service-card:nth-child(6):before{background:#e07b35}
.farm-service-card:hover{transform:translateY(-5px);box-shadow:0 20px 42px rgba(5,39,16,.27)!important}
.farm-service-card h3{color:#124b25!important;font-size:22px!important;line-height:1.25;max-width:78%;margin:10px 0 18px!important}
.farm-service-card p{color:#4d5350!important;font-size:15px!important;line-height:1.65!important;max-width:88%}
.farm-service-card a{color:#6d258d!important;font-size:15px;font-weight:850}
.farm-service-card a b{color:#e7a61e}
.farm-service-number{right:25px!important;top:24px!important;color:rgba(231,166,30,.28)!important;font-size:50px!important;font-weight:900}
.farm-service-card:nth-child(2) .farm-service-number{color:rgba(124,67,168,.22)!important}
.farm-service-card:nth-child(4) .farm-service-number{color:rgba(232,90,89,.22)!important}
.farm-service-card:nth-child(5) .farm-service-number{color:rgba(66,139,200,.22)!important}

@media(max-width:900px){
 .farm-activities-heading{align-items:flex-start}.farm-activities-heading p{font-size:16px}
 .farm-service-card h3{max-width:82%}
}
@media(max-width:700px){
 .farm-activities-heading h2{font-size:42px!important}
 .farm-service-card{min-height:230px;padding:27px 25px!important}
 .farm-service-card h3{font-size:20px!important}
}


/* ==========================================================
   FARM V16 — PREMIUM ASSOCIATION FOOTER
   ========================================================== */
.farm-footer-v16{padding:0!important;background:linear-gradient(135deg,#07351c,#064225 62%,#05351d)!important;color:#fff}
.farm-footer-v16 .farm-footer-main{display:grid;grid-template-columns:1.18fr .82fr 1fr 1.18fr;gap:0;padding:58px 0 50px}
.farm-footer-v16 .farm-footer-main>section,.farm-footer-v16 .farm-footer-main>nav{padding:0 34px;border-right:1px solid rgba(255,255,255,.14)}
.farm-footer-v16 .farm-footer-main>section:first-child{padding-left:0}
.farm-footer-v16 .farm-footer-main>section:last-child{border-right:0;padding-right:0}
.farm-footer-v16 h3{font-size:22px!important;color:#fff!important;margin:0 0 10px!important}
.farm-footer-v16 h3 span{color:#f6c326;margin-right:8px}
.farm-footer-title-line{display:block;width:48px;height:3px;background:#f6c326;border-radius:4px;margin:0 0 24px}
.farm-footer-v16 p{font-size:15px;line-height:1.75;color:rgba(255,255,255,.88);margin:0 0 18px}
.farm-footer-v16 a{color:#fff!important;text-decoration:none!important;border:0!important}
.farm-footer-v16 a:hover{color:#f6c326!important;text-decoration:none!important}
.farm-footer-logo{background:#fff;display:inline-flex;padding:9px 12px;border-radius:13px;margin-bottom:20px;box-shadow:0 9px 24px rgba(0,0,0,.14)}
.farm-footer-logo img{max-height:76px!important;max-width:115px!important;width:auto!important}
.farm-footer-about>p{max-width:360px}
.farm-footer-motto{display:block;color:#f6b72a;font-style:italic;font-size:16px;margin:22px 0}
.farm-footer-pillars{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:20px}
.farm-footer-pillars span{font-size:12px;line-height:1.35;color:#fff;padding:9px 8px 9px 28px;border:1px solid rgba(246,195,38,.25);border-radius:22px;position:relative}
.farm-footer-pillars span:before{content:"✦";position:absolute;left:10px;color:#f6c326}
.farm-footer-nav ul{list-style:none!important;margin:0!important;padding:0!important}
.farm-footer-nav li{margin:0!important;padding:0!important}
.farm-footer-nav li a{display:block;padding:7px 0 7px 20px!important;position:relative;font-size:15px}
.farm-footer-nav li a:before{content:"›";position:absolute;left:0;color:#8bc528;font-size:23px;line-height:17px;font-weight:900}
.farm-footer-nav li a:hover{padding-left:25px!important}
.farm-footer-contact .farm-contact-item{position:relative;padding-left:0;margin-bottom:18px}
.farm-footer-contact .farm-contact-item b{display:block;color:#f6c326;font-size:14px;margin-bottom:4px}
.farm-footer-contact .farm-contact-item p{margin:0;line-height:1.6}
.farm-footer-presentation p{max-width:420px}
.farm-footer-bottom{border-top:1px solid rgba(255,255,255,.26);background:rgba(0,0,0,.08)}
.farm-footer-bottom-inner{min-height:76px;display:grid;grid-template-columns:1fr 1fr auto;gap:30px;align-items:center;font-size:14px}
.farm-footer-bottom strong{color:#f6c326}
.farm-footer-slogan{text-align:center}
.farm-footer-bottom a{font-weight:800;color:#f6c326!important}
@media(max-width:1100px){
 .farm-footer-v16 .farm-footer-main{grid-template-columns:1fr 1fr}
 .farm-footer-v16 .farm-footer-main>section,.farm-footer-v16 .farm-footer-main>nav{padding:28px;border-right:0;border-bottom:1px solid rgba(255,255,255,.12)}
 .farm-footer-v16 .farm-footer-main>section:first-child{padding-left:28px}
 .farm-footer-v16 .farm-footer-main>section:last-child{padding-right:28px}
}
@media(max-width:700px){
 .farm-footer-v16 .farm-footer-main{grid-template-columns:1fr;padding:25px 0}
 .farm-footer-v16 .farm-footer-main>section,.farm-footer-v16 .farm-footer-main>nav{padding:28px 8px!important}
 .farm-footer-bottom-inner{grid-template-columns:1fr;text-align:center;padding:22px 0;gap:12px}
 .farm-footer-slogan{text-align:center}
 .farm-footer-pillars{grid-template-columns:1fr 1fr}
}


/* ==========================================================
   FARM V17 — FOOTER MATCHING APPROVED REFERENCE
   ========================================================== */

.farm-footer-hero-v17{
  position:relative;
  min-height:270px;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:
    linear-gradient(90deg,rgba(0,70,33,.96) 0%,rgba(0,72,34,.88) 52%,rgba(84,92,23,.35) 78%,rgba(151,106,21,.20) 100%),
    url('assets/footer-leaves.jpg') center right/cover no-repeat,
    #07512c;
  border-top-left-radius:14px;
  border-top-right-radius:14px;
}
.farm-footer-hero-v17:after{
  content:"";position:absolute;right:9%;bottom:-70px;width:280px;height:280px;
  border-radius:50%;background:rgba(245,185,39,.28)
}
.farm-footer-hero-inner{
  position:relative;z-index:2;
  display:grid;grid-template-columns:1fr auto;gap:50px;align-items:center;
}
.farm-footer-hero-copy span{
  display:block;color:#f6c42c;font-size:15px;font-weight:900;letter-spacing:.06em;margin-bottom:20px
}
.farm-footer-hero-copy h2{
  color:#fff!important;font-size:clamp(42px,4.8vw,68px);line-height:1.05;
  max-width:980px;margin:0!important;font-weight:850;letter-spacing:-.025em
}
.farm-footer-hero-copy i{
  display:block;width:95px;height:4px;background:#f4bb29;margin-top:27px;border-radius:3px
}
.farm-footer-hero-btn{
  position:relative;z-index:3;display:inline-flex;align-items:center;gap:14px;
  padding:19px 29px;background:#f5b82c;color:#0d321c!important;border-radius:12px;
  font-size:18px;font-weight:900;text-decoration:none!important;box-shadow:0 10px 26px rgba(0,0,0,.15)
}
.farm-footer-hero-btn:hover{background:#ffd05a;color:#0d321c!important;transform:translateY(-2px)}

.farm-footer-v17{
  background:linear-gradient(135deg,#06351d 0%,#064426 50%,#07371f 100%)!important;
  color:#fff;padding:0!important
}
.farm-footer-columns{
  display:grid;grid-template-columns:1.18fr .9fr 1.05fr 1.18fr;
  gap:0;padding:34px 0 28px
}
.farm-footer-col{
  position:relative;padding:0 38px;border-right:1px solid rgba(255,255,255,.14)
}
.farm-footer-col:first-child{padding-left:0}
.farm-footer-col:last-child{border-right:0;padding-right:0}
.farm-footer-v17 h3{
  margin:0 0 10px!important;color:#fff!important;font-size:25px!important;line-height:1.2
}
.farm-title-icon{color:#f1c625;margin-right:8px}
.farm-footer-rule{
  display:block;width:48px;height:3px;background:#f2c329;border-radius:3px;margin-bottom:27px
}
.farm-footer-v17 p{
  color:rgba(255,255,255,.93)!important;font-size:15.5px;line-height:1.78;margin:0 0 18px
}
.farm-footer-v17 a{
  color:#fff!important;text-decoration:none!important;border:0!important
}
.farm-footer-v17 a:hover{color:#f4c72c!important;text-decoration:none!important}

.farm-footer-logo{
  background:#fff;border-radius:15px;display:inline-flex;padding:10px 12px;margin-bottom:22px;
  box-shadow:0 8px 25px rgba(0,0,0,.14)
}
.farm-footer-logo img{max-height:78px!important;max-width:110px!important;width:auto!important}
.farm-footer-brand>p{max-width:350px}
.farm-footer-motto{
  display:block;color:#f4b72a;font-size:17px;font-style:italic;margin:18px 0 25px
}
.farm-footer-pillars-v17{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:10px}
.farm-footer-pillars-v17>div{text-align:center}
.farm-pillar-icon{
  width:46px;height:46px;border-radius:50%;border:1px solid #6a9c17;display:inline-flex;
  align-items:center;justify-content:center;color:#f2c329;font-size:22px;margin-bottom:8px
}
.farm-footer-pillars-v17 small{display:block;color:#fff;font-size:11px;line-height:1.35}

.farm-footer-navigation ul{list-style:none!important;margin:0!important;padding:0!important}
.farm-footer-navigation li{margin:0!important;padding:0!important}
.farm-footer-navigation li a{
  display:block;padding:9px 0 9px 28px!important;font-size:16px;position:relative;
  text-decoration:none!important;border:0!important
}
.farm-footer-navigation li a:before{
  content:"›";position:absolute;left:0;top:7px;color:#7db31e;font-size:28px;font-weight:900;line-height:1
}
.farm-footer-navigation li a:hover{padding-left:33px!important;color:#f2c329!important}

.farm-contact-row{display:grid;grid-template-columns:55px 1fr;gap:14px;margin-bottom:20px;align-items:start}
.farm-contact-icon{
  width:50px;height:50px;border:1px solid #4d8f13;border-radius:50%;display:flex;align-items:center;
  justify-content:center;color:#f2c329;font-size:21px;background:rgba(62,126,14,.08)
}
.farm-contact-row b{display:block;color:#f1c128;font-size:16px;margin:4px 0 5px}
.farm-contact-row p{margin:0!important;line-height:1.55!important}

.farm-footer-presentation-v17 p{max-width:410px}
.farm-footer-leafmark{
  position:absolute;right:8px;bottom:0;font-size:170px;color:rgba(255,255,255,.035);line-height:1
}

.farm-footer-bottom-v17{
  border-top:1px solid rgba(255,255,255,.25);background:rgba(2,34,17,.15)
}
.farm-footer-bottom-inner-v17{
  min-height:82px;display:grid;grid-template-columns:1fr 1fr auto;gap:25px;align-items:center
}
.farm-footer-copy,.farm-footer-bottom-slogan,.farm-footer-socials{font-size:14.5px;color:#fff}
.farm-footer-copy strong,.farm-footer-bottom-slogan strong{color:#f3c326}
.farm-footer-bottom-slogan{text-align:center;border-left:1px solid rgba(255,255,255,.2);border-right:1px solid rgba(255,255,255,.2);padding:0 25px}
.farm-footer-socials{display:flex;align-items:center;gap:12px}
.farm-footer-socials>span{margin-right:4px}
.farm-footer-socials a{
  width:42px;height:42px;border-radius:50%;border:1px solid #4c9019;display:flex;
  align-items:center;justify-content:center;font-weight:900;background:rgba(255,255,255,.035)
}
.farm-footer-socials a:hover{background:#f3c326!important;color:#07341d!important;border-color:#f3c326}

@media(max-width:1150px){
  .farm-footer-columns{grid-template-columns:1fr 1fr}
  .farm-footer-col{padding:32px;border-right:0;border-bottom:1px solid rgba(255,255,255,.12)}
  .farm-footer-col:first-child{padding-left:32px}
  .farm-footer-col:last-child{padding-right:32px}
}
@media(max-width:850px){
  .farm-footer-hero-v17{min-height:360px}
  .farm-footer-hero-inner{grid-template-columns:1fr;gap:28px}
  .farm-footer-hero-btn{justify-self:start}
  .farm-footer-bottom-inner-v17{grid-template-columns:1fr;text-align:center;padding:22px 0}
  .farm-footer-bottom-slogan{border:0;padding:0}
  .farm-footer-socials{justify-content:center}
}
@media(max-width:700px){
  .farm-footer-columns{grid-template-columns:1fr;padding:18px 0}
  .farm-footer-col{padding:28px 8px!important}
  .farm-footer-pillars-v17{grid-template-columns:repeat(2,1fr)}
  .farm-footer-hero-copy h2{font-size:39px}
}


/* ==========================================================
   FARM V18 — STABLE FOOTER ON ALL PAGES
   Namespaced styles intentionally override older footer rules.
   ========================================================== */

body .farm-footer-hero-v18{
  position:relative!important;
  width:95%!important;
  max-width:none!important;
  min-height:245px!important;
  margin:34px auto 0!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  overflow:hidden!important;
  border-radius:14px 14px 0 0!important;
  background:
    linear-gradient(90deg,rgba(0,63,30,.96) 0%,rgba(0,70,32,.86) 55%,rgba(116,100,22,.26) 100%),
    url('assets/footer-leaves.jpg') center right/cover no-repeat,
    #07512c!important;
  box-sizing:border-box!important;
}
body .farm-footer-hero-v18:after{
  content:"";position:absolute;right:8%;bottom:-110px;width:290px;height:290px;
  border-radius:50%;background:rgba(243,185,42,.24);pointer-events:none
}
body .farm-footer-hero-inner-v18{
  width:100%!important;max-width:none!important;margin:0!important;padding:36px 46px!important;
  display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;
  gap:44px!important;align-items:center!important;position:relative;z-index:2
}
body .farm-footer-hero-copy-v18 span{
  display:block!important;color:#f6c52c!important;font-size:14px!important;font-weight:900!important;
  letter-spacing:.06em!important;margin-bottom:14px!important
}
body .farm-footer-hero-copy-v18 h2{
  margin:0!important;max-width:1000px!important;color:#fff!important;
  font-size:clamp(36px,4vw,62px)!important;line-height:1.06!important;font-weight:850!important
}
body .farm-footer-hero-copy-v18 i{
  display:block!important;width:90px!important;height:4px!important;margin-top:22px!important;
  background:#f3bd2b!important;border-radius:4px!important
}
body .farm-footer-hero-btn-v18{
  display:inline-flex!important;align-items:center!important;gap:12px!important;white-space:nowrap!important;
  padding:17px 25px!important;border-radius:11px!important;background:#f4b82d!important;
  color:#0b351d!important;text-decoration:none!important;font-size:17px!important;font-weight:900!important;
  box-shadow:0 8px 20px rgba(0,0,0,.14)!important
}

body .farm-footer-v18{
  width:95%!important;max-width:none!important;margin:0 auto 24px!important;padding:0!important;
  border-radius:0 0 14px 14px!important;overflow:hidden!important;
  background:linear-gradient(135deg,#05351d 0%,#064126 55%,#06371f 100%)!important;
  color:#fff!important;box-sizing:border-box!important
}
body .farm-footer-grid-v18{
  width:100%!important;max-width:none!important;margin:0!important;padding:38px 42px 34px!important;
  display:grid!important;grid-template-columns:1.12fr .82fr 1.02fr 1.18fr!important;gap:0!important;
  align-items:start!important;box-sizing:border-box!important
}
body .farm-footer-grid-v18>section,
body .farm-footer-grid-v18>nav{
  min-width:0!important;padding:0 30px!important;margin:0!important;
  border-right:1px solid rgba(255,255,255,.14)!important;background:transparent!important
}
body .farm-footer-grid-v18>section:first-child{padding-left:0!important}
body .farm-footer-grid-v18>section:last-child{padding-right:0!important;border-right:0!important}

body .farm-footer-v18 h3{
  color:#fff!important;font-size:22px!important;line-height:1.25!important;margin:0 0 9px!important;
  padding:0!important;font-weight:800!important
}
body .farm-footer-v18 h3 b{color:#f3c227!important;margin-right:7px!important}
body .farm-footer-line-v18{
  display:block!important;width:46px!important;height:3px!important;margin:0 0 22px!important;
  background:#f2c128!important;border-radius:4px!important
}
body .farm-footer-v18 p{
  color:rgba(255,255,255,.91)!important;font-size:14px!important;line-height:1.72!important;
  margin:0 0 16px!important;padding:0!important
}
body .farm-footer-v18 a,
body .farm-footer-v18 a:visited{
  color:#fff!important;text-decoration:none!important;border:0!important;box-shadow:none!important
}
body .farm-footer-v18 a:hover{color:#f3c227!important;text-decoration:none!important}

/* logo: explicitly prevent the giant white rectangle seen in V17 */
body .farm-footer-logo-v18{
  width:92px!important;height:92px!important;min-width:92px!important;max-width:92px!important;
  padding:8px!important;margin:0 0 19px!important;background:#fff!important;border-radius:13px!important;
  display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important;
  box-sizing:border-box!important;box-shadow:0 7px 20px rgba(0,0,0,.15)!important
}
body .farm-footer-logo-v18 .custom-logo-link{
  display:flex!important;width:100%!important;height:100%!important;align-items:center!important;justify-content:center!important;
  padding:0!important;margin:0!important;background:transparent!important
}
body .farm-footer-logo-v18 img,
body .farm-footer-logo-v18 img.custom-logo{
  display:block!important;width:auto!important;height:auto!important;max-width:76px!important;max-height:76px!important;
  min-width:0!important;min-height:0!important;margin:0!important;padding:0!important;object-fit:contain!important
}
body .farm-footer-brand-v18>p{max-width:330px!important}
body .farm-footer-motto-v18{
  display:block!important;margin:17px 0 22px!important;color:#f3b72a!important;
  font-size:15px!important;font-style:italic!important;font-weight:700!important
}
body .farm-footer-pillars-v18{
  display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important;margin-top:8px!important
}
body .farm-footer-pillars-v18>div{text-align:center!important;min-width:0!important}
body .farm-footer-pillars-v18>div>span{
  width:42px!important;height:42px!important;border-radius:50%!important;border:1px solid #699919!important;
  color:#f3c127!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;
  font-size:19px!important;margin-bottom:7px!important
}
body .farm-footer-pillars-v18 small{display:block!important;color:#fff!important;font-size:10px!important;line-height:1.3!important}

body .farm-footer-nav-v18 ul{list-style:none!important;margin:0!important;padding:0!important}
body .farm-footer-nav-v18 li{margin:0!important;padding:0!important;list-style:none!important}
body .farm-footer-nav-v18 li a{
  position:relative!important;display:block!important;padding:7px 0 7px 23px!important;
  font-size:14px!important;line-height:1.45!important;text-decoration:none!important
}
body .farm-footer-nav-v18 li a:before{
  content:"›"!important;position:absolute!important;left:0!important;top:4px!important;
  color:#7eae1f!important;font-size:24px!important;font-weight:900!important
}

body .farm-footer-contact-row-v18{
  display:grid!important;grid-template-columns:44px minmax(0,1fr)!important;gap:12px!important;
  align-items:start!important;margin-bottom:16px!important
}
body .farm-footer-contact-row-v18>span{
  width:42px!important;height:42px!important;border-radius:50%!important;border:1px solid #4f8f17!important;
  color:#f2c227!important;display:flex!important;align-items:center!important;justify-content:center!important;
  font-size:17px!important
}
body .farm-footer-contact-row-v18 strong{
  display:block!important;color:#f1c128!important;font-size:14px!important;margin:2px 0 4px!important
}
body .farm-footer-contact-row-v18 p{margin:0!important;line-height:1.5!important;overflow-wrap:anywhere!important}
body .farm-footer-presentation-v18 p{max-width:410px!important}

body .farm-footer-bottom-v18{
  width:100%!important;margin:0!important;padding:0!important;
  border-top:1px solid rgba(255,255,255,.22)!important;background:rgba(0,0,0,.08)!important
}
body .farm-footer-bottom-inner-v18{
  width:100%!important;max-width:none!important;min-height:66px!important;margin:0!important;padding:12px 42px!important;
  display:grid!important;grid-template-columns:1fr 1fr auto!important;gap:24px!important;
  align-items:center!important;box-sizing:border-box!important;font-size:13px!important
}
body .farm-footer-bottom-inner-v18 strong{color:#f3c327!important}
body .farm-footer-bottom-inner-v18>div:nth-child(2){
  text-align:center!important;border-left:1px solid rgba(255,255,255,.16)!important;
  border-right:1px solid rgba(255,255,255,.16)!important;padding:0 18px!important
}
body .farm-footer-social-v18{display:flex!important;align-items:center!important;gap:9px!important;white-space:nowrap!important}
body .farm-footer-social-v18>a{
  width:34px!important;height:34px!important;border:1px solid #558d1e!important;border-radius:50%!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;font-size:12px!important
}

/* old footer / CTA classes must not influence V18 */
body .farm-footer-v18 .farm-footer-logo,
body .farm-footer-v18 .farm-footer-main,
body .farm-footer-v18 .farm-footer-columns{all:unset}

@media(max-width:1150px){
  body .farm-footer-grid-v18{grid-template-columns:1fr 1fr!important}
  body .farm-footer-grid-v18>section,
  body .farm-footer-grid-v18>nav{
    padding:28px!important;border-right:0!important;border-bottom:1px solid rgba(255,255,255,.12)!important
  }
}
@media(max-width:820px){
  body .farm-footer-hero-inner-v18{grid-template-columns:1fr!important;padding:34px 28px!important;gap:24px!important}
  body .farm-footer-hero-btn-v18{justify-self:start!important}
  body .farm-footer-bottom-inner-v18{grid-template-columns:1fr!important;text-align:center!important;padding:20px!important}
  body .farm-footer-bottom-inner-v18>div:nth-child(2){border:0!important;padding:0!important}
  body .farm-footer-social-v18{justify-content:center!important}
}
@media(max-width:650px){
  body .farm-footer-hero-v18,body .farm-footer-v18{width:96%!important}
  body .farm-footer-hero-copy-v18 h2{font-size:36px!important}
  body .farm-footer-grid-v18{grid-template-columns:1fr!important;padding:18px 20px!important}
  body .farm-footer-grid-v18>section,body .farm-footer-grid-v18>nav{padding:26px 4px!important}
  body .farm-footer-pillars-v18{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}


/* ==========================================================
   FARM V19 — SIMPLIFIED FOOTER
   Footer hero/banner removed for a cleaner institutional look.
   ========================================================== */
body .farm-footer-v18{
  margin-top:36px!important;
  border-radius:14px!important;
}
body.home .farm-footer-v18{
  margin-top:32px!important;
}
@media(max-width:650px){
  body .farm-footer-v18{
    margin-top:22px!important;
  }
}


/* ==========================================================
   FARM PREMIUM SIDEBAR V20 — 375px, based on approved mockup
   ========================================================== */
.farm-content-layout{
  grid-template-columns:minmax(0,1fr) 375px;
  gap:24px;
  align-items:start;
}
.farm-content-layout > aside{
  width:375px;
  max-width:100%;
  display:flex;
  flex-direction:column;
  gap:16px;
}
.farm-sidebar-widget{
  background:#fff;
  border:1px solid #e7ece8;
  border-radius:17px;
  overflow:hidden;
  box-shadow:0 7px 22px rgba(26,55,34,.08);
  padding:0 14px 14px;
  margin:0;
}
.farm-sidebar-title,
.farm-content-layout > aside .widget > h2,
.farm-content-layout > aside .widget > h3,
.farm-content-layout > aside .widget .widget-title{
  margin:0 -14px 12px !important;
  padding:10px 14px 9px 42px;
  min-height:39px;
  display:flex;
  align-items:center;
  position:relative;
  overflow:hidden;
  color:#fff !important;
  font-size:14px !important;
  line-height:1.15;
  font-weight:800 !important;
  letter-spacing:.015em;
  text-transform:uppercase;
  background:linear-gradient(90deg,#11672d 0%,#4e842e 60%,#f0e5a7 100%);
}
.farm-sidebar-title::before,
.farm-content-layout > aside .widget > h2::before,
.farm-content-layout > aside .widget > h3::before,
.farm-content-layout > aside .widget .widget-title::before{
  content:"";
  position:absolute;
  left:14px;
  width:17px;
  height:17px;
  border:2px solid rgba(255,255,255,.95);
  border-radius:4px;
  box-sizing:border-box;
}
.farm-sidebar-title::after,
.farm-content-layout > aside .widget > h2::after,
.farm-content-layout > aside .widget > h3::after,
.farm-content-layout > aside .widget .widget-title::after{
  display:none !important;
}
.farm-content-layout > aside .widget img{
  max-width:100%;
  height:auto;
  border-radius:10px;
}
.farm-content-layout > aside .widget ul{
  list-style:none;
  margin:0;
  padding:0;
}
.farm-content-layout > aside .widget li{
  padding:9px 0;
  border-bottom:1px solid #edf1ee;
  line-height:1.35;
}
.farm-content-layout > aside .widget li:last-child{border-bottom:0}
.farm-content-layout > aside .widget a{
  color:#612091;
  text-decoration:none;
  font-weight:700;
  transition:.2s ease;
}
.farm-content-layout > aside .widget a:hover{color:#126d31}
.farm-content-layout > aside .widget p{line-height:1.55;margin:8px 0}
.farm-content-layout > aside .widget button,
.farm-content-layout > aside .widget .button,
.farm-content-layout > aside .widget a.button,
.farm-content-layout > aside .widget input[type="submit"]{
  border:0;
  border-radius:999px !important;
  padding:9px 17px;
  font-size:12px;
  font-weight:800;
  background:linear-gradient(135deg,#176d32,#0c5525);
  color:#fff !important;
  box-shadow:0 5px 12px rgba(18,105,48,.18);
}
.farm-content-layout > aside .widget_media_image,
.farm-content-layout > aside .widget_custom_html{
  padding-bottom:14px;
}
.farm-content-layout > aside .widget_search .wp-block-search__inside-wrapper,
.farm-content-layout > aside .widget_search form{
  display:flex;
  gap:7px;
}
.farm-content-layout > aside .widget_search input{min-width:0}

/* Visual variants matching FARM mockup cards */
.farm-content-layout > aside .widget:nth-child(3n+3) .farm-sidebar-title,
.farm-content-layout > aside .widget:nth-child(3n+3) > h2,
.farm-content-layout > aside .widget:nth-child(3n+3) > h3{
  background:linear-gradient(90deg,#17652d 0%,#78923a 62%,#efe1a0 100%);
}
.farm-content-layout > aside .widget:nth-child(4n) a.button{
  background:linear-gradient(135deg,#7022a2,#4e137d);
}

@media(max-width:1100px){
  .farm-content-layout{grid-template-columns:minmax(0,1fr) 340px;gap:22px}
  .farm-content-layout > aside{width:340px}
}
@media(max-width:900px){
  .farm-content-layout{grid-template-columns:1fr}
  .farm-content-layout > aside{width:100%;max-width:100%}
}

/* ==========================================================
   FARM V24 — TOP BAR ABOVE MENU + SLIDER
   Violet FARM / Vert FARM, responsive tablette + mobile.
   ========================================================== */
.farm-topbar{
  width:100%;
  min-height:50px;
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(245px,.45fr);
  color:#fff;
  font-size:14px;
  font-weight:700;
  line-height:1.25;
  position:relative;
  z-index:1001;
  overflow:hidden;
  background:#69c51c;
  box-shadow:0 2px 10px rgba(61,15,85,.12);
}
.farm-topbar__left,
.farm-topbar__right{
  min-width:0;
  min-height:50px;
  display:flex;
  align-items:center;
}
.farm-topbar__left{
  position:relative;
  background:linear-gradient(105deg,#621078 0%,#7c0d91 52%,#8b119b 100%);
}
.farm-topbar__left::after{
  content:"";
  position:absolute;
  top:0;
  right:-28px;
  width:58px;
  height:100%;
  background:#69c51c;
  transform:skewX(-29deg);
  border-left:4px solid rgba(255,255,255,.95);
  z-index:1;
}
.farm-topbar__left-inner{
  width:100%;
  max-width:1480px;
  margin-left:auto;
  padding:8px 48px 8px max(24px,calc((100vw - 1480px)/2));
  display:flex;
  align-items:center;
  gap:18px;
  position:relative;
  z-index:2;
}
.farm-topbar__right{
  justify-content:flex-end;
  padding:8px max(24px,calc((100vw - 1480px)/2)) 8px 48px;
  background:linear-gradient(90deg,#77cf1c 0%,#59b916 100%);
}
.farm-topbar__item{
  min-width:0;
  display:inline-flex;
  align-items:center;
  gap:9px;
  color:#fff!important;
  text-decoration:none!important;
  white-space:nowrap;
}
.farm-topbar__address{overflow:hidden;text-overflow:ellipsis}
.farm-topbar__icon{
  width:20px;
  height:20px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 20px;
}
.farm-topbar__icon svg{width:19px;height:19px;fill:currentColor;display:block}
.farm-topbar__separator{
  width:1px;
  height:24px;
  background:rgba(255,255,255,.45);
  flex:0 0 1px;
  transform:skewX(-15deg);
}
.farm-topbar__socials{display:flex;align-items:center;justify-content:flex-end;gap:10px}
.farm-topbar__socials a{
  width:29px;
  height:29px;
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#fff!important;
  text-decoration:none!important;
  font-size:16px;
  font-weight:900;
  line-height:1;
  border:1px solid rgba(255,255,255,.42);
  transition:transform .2s ease,background .2s ease;
}
.farm-topbar__socials a:hover{background:rgba(255,255,255,.18);transform:translateY(-1px)}
.farm-topbar + .farm-site-header{margin-top:0!important}

/* Tablette */
@media(max-width:1050px){
  .farm-topbar{grid-template-columns:minmax(0,1fr) auto;font-size:12.5px}
  .farm-topbar__left-inner{gap:11px;padding-left:18px;padding-right:38px}
  .farm-topbar__right{padding-left:34px;padding-right:18px}
  .farm-topbar__item{gap:7px}
  .farm-topbar__socials{gap:7px}
  .farm-topbar__socials a{width:27px;height:27px;font-size:14px}
}

/* Téléphone / petite tablette : informations empilées, réseaux centrés */
@media(max-width:760px){
  .farm-topbar{display:block;overflow:visible;font-size:12.5px}
  .farm-topbar__left,
  .farm-topbar__right{min-height:auto}
  .farm-topbar__left::after{display:none}
  .farm-topbar__left-inner{
    padding:9px 14px;
    flex-wrap:wrap;
    justify-content:center;
    gap:7px 12px;
    text-align:center;
  }
  .farm-topbar__address,
  .farm-topbar__email{white-space:normal;justify-content:center}
  .farm-topbar__separator{display:none}
  .farm-topbar__right{justify-content:center;padding:7px 14px;background:linear-gradient(90deg,#73cb1b,#58b817)}
  .farm-topbar__socials{justify-content:center}
}
@media(max-width:460px){
  .farm-topbar{font-size:11.5px}
  .farm-topbar__left-inner{display:grid;grid-template-columns:1fr;gap:7px;padding:9px 12px}
  .farm-topbar__address,
  .farm-topbar__email{width:100%;justify-content:flex-start;text-align:left}
  .farm-topbar__icon{width:18px;height:18px;flex-basis:18px}
  .farm-topbar__icon svg{width:17px;height:17px}
  .farm-topbar__socials a{width:26px;height:26px}
}
