/*
Theme Name: SE-SNFI Premium V15
Theme URI: https://se-snfi.com/
Author: SE-SNFI (prototype)
Description: Thème institutionnel administrable, responsive. Nécessite le plugin SE-SNFI Gestion.
Version: 15.0.0
Requires at least: 6.2
Requires PHP: 7.4
Text Domain: se-snfi
*/

/* ============================================
   LUXURY EDITORIAL DESIGN SYSTEM
   ============================================ */
:root{
  --green:#1B6B3A;
  --deep:#0B1F12;
  --dark:#06140B;
  --gold:#C9A96E;
  --gold-soft:#E3D4B4;
  --orange:#E8751A;
  --cream:#FBFAF6;
  --ivory:#F4F0E8;
  --sand:#EDE7DA;
  --ink:#1A2419;
  --muted:#6B7669;
  --line:#E2DDD1;
  --white:#FFFFFF;
  --max:1280px;
  --serif:'Cormorant Garamond',Georgia,serif;
  --sans:'Inter',Arial,sans-serif;
  --shadow-sm:0 2px 16px rgba(11,31,18,.05);
  --shadow-md:0 16px 50px rgba(11,31,18,.09);
  --shadow-lg:0 32px 80px rgba(11,31,18,.14);
  --ease:cubic-bezier(.22,.61,.36,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body{
  margin:0;font-family:var(--sans);color:var(--ink);background:var(--cream);
  -webkit-font-smoothing:antialiased;line-height:1.65;overflow-x:hidden;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
button{cursor:pointer}
svg{display:block}
::selection{background:rgba(201,169,110,.3);color:var(--dark)}
:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
.container{width:min(var(--max),calc(100% - 56px));margin-inline:auto}

/* ===== TYPOGRAPHY ===== */
h1,h2,h3{margin-top:0;font-family:var(--serif);font-weight:500;letter-spacing:-.02em;color:var(--dark)}
h1{font-size:clamp(3.2rem,6vw,6rem);line-height:1.02;letter-spacing:-.03em}
h2{font-size:clamp(2.4rem,4.5vw,4rem);line-height:1.08}
h3{font-size:1.5rem;line-height:1.25;font-weight:600}
p{margin-top:0;line-height:1.85;color:var(--muted);font-weight:400}
.eyebrow{
  display:inline-flex;align-items:center;gap:16px;
  text-transform:uppercase;letter-spacing:.28em;
  font-size:10px;font-weight:600;color:var(--green);
  margin-bottom:20px;
}
.eyebrow:before{content:"";width:40px;height:1px;background:var(--gold)}

/* ===== BUTTONS ===== */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:14px;
  min-height:56px;padding:16px 32px;
  border-radius:0;border:1px solid transparent;
  font-weight:600;font-size:11px;letter-spacing:.14em;text-transform:uppercase;
  transition:all .4s var(--ease);position:relative;overflow:hidden;
}
.btn svg,.arrow-link svg{width:14px;height:14px;transition:transform .35s var(--ease)}
.btn:hover svg{transform:translateX(5px)}
.btn-green{background:var(--deep);color:#fff;box-shadow:0 6px 24px rgba(11,31,18,.2)}
.btn-green:hover{background:var(--dark);box-shadow:0 12px 36px rgba(11,31,18,.35);transform:translateY(-2px)}
.btn-outline{border-color:#C9C2B2;color:var(--deep);background:transparent}
.btn-outline:hover{border-color:var(--gold);background:rgba(201,169,110,.06);transform:translateY(-2px)}
.btn-orange{background:var(--orange);color:#fff;box-shadow:0 6px 24px rgba(232,117,26,.25)}
.btn-orange:hover{background:#cf6410;transform:translateY(-2px);box-shadow:0 12px 36px rgba(232,117,26,.35)}
.btn-light{background:#fff;color:var(--deep)}
.btn-light:hover{background:var(--gold-soft);transform:translateY(-2px)}
.arrow-link{
  display:inline-flex;align-items:center;gap:10px;
  font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  color:var(--green);white-space:nowrap;transition:color .3s, gap .3s;
}
.arrow-link:hover{color:var(--orange);gap:16px}

/* ===== LAYOUT ===== */
.section{padding:140px 0;position:relative}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:64px}
.section-head p{max-width:520px;margin:0;font-size:15px}

/* ===== HEADER ===== */
.site-header{
  position:sticky;top:0;z-index:100;
  background:rgba(251,250,246,.94);
  backdrop-filter:blur(24px) saturate(1.6);
  -webkit-backdrop-filter:blur(24px) saturate(1.6);
  border-bottom:1px solid rgba(226,221,209,.7);
  transition:box-shadow .35s;
}
.site-header.scrolled{box-shadow:0 4px 40px rgba(11,31,18,.07)}
.header-inner{height:96px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:16px;min-width:0}
.brand-mark{width:52px;height:52px;flex:none}
.brand-title{font-family:var(--serif);font-size:26px;line-height:1;font-weight:600;letter-spacing:.02em;color:var(--deep);display:block}
.brand-sub{display:block;margin-top:8px;font-size:7.5px;letter-spacing:.2em;font-weight:600;color:#8A8578;max-width:220px;line-height:1.5;text-transform:uppercase}
.nav{display:flex;align-items:center;gap:36px}
.nav>a{
  font-size:10.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;
  color:#3D4F42;transition:color .25s;position:relative;padding:6px 0;
}
.nav>a:after{content:"";position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--gold);transition:width .35s var(--ease)}
.nav>a:hover:after,.nav>a[aria-current]:after{width:100%}
.nav>a:hover,.nav>a[aria-current]{color:var(--deep)}
.header-cta{margin-left:8px}
.menu-toggle{
  display:none;background:none;border:1px solid var(--line);border-radius:0;
  width:48px;height:48px;align-items:center;justify-content:center;color:var(--deep);
  transition:border-color .25s;
}
.menu-toggle:hover{border-color:var(--gold)}
.menu-toggle svg{width:22px;height:22px}

/* ===== HERO ===== */
.hero{
  position:relative;overflow:hidden;
  background:linear-gradient(170deg,#FBFAF6 0%,#F4F0E8 45%,#EDE7DA 100%);
  padding:120px 0 140px;
}
.hero:before{
  content:"";position:absolute;top:-320px;right:-260px;
  width:780px;height:780px;border:1px solid rgba(201,169,110,.18);border-radius:50%;
}
.hero:after{
  content:"";position:absolute;bottom:-200px;left:-180px;
  width:560px;height:560px;border:1px solid rgba(27,107,58,.07);border-radius:50%;
}
.hero-grid{position:relative;display:grid;grid-template-columns:1.18fr .82fr;align-items:center;gap:90px}
.hero h1{max-width:780px;margin:36px 0 32px;color:var(--dark)}
.hero h1 em{font-style:italic;color:var(--green);font-weight:500}
.hero-copy>p{font-size:17.5px;max-width:520px;margin-bottom:40px;color:#5A6B5F;line-height:1.8}
.hero-actions{display:flex;flex-wrap:wrap;gap:16px}
.hero-rule{
  display:flex;align-items:center;gap:18px;
  margin-top:64px;padding-top:28px;
  border-top:1px solid rgba(27,107,58,.12);
  color:#6B7669;font-size:10px;font-weight:600;
  letter-spacing:.2em;text-transform:uppercase;
}
.hero-rule:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 5px rgba(201,169,110,.14)}

.hero-art{position:relative;min-width:0;padding:30px 24px 26px 32px}
.hero-art:before{
  content:"";position:absolute;inset:0 0 64px 64px;
  background:var(--deep);border-radius:2px;
  transform:translate(14px,-14px);
  transition:transform .7s var(--ease);
}
.hero-art:after{
  content:"";position:absolute;bottom:2px;left:0;
  width:140px;height:140px;background:var(--gold);z-index:0;
}
.hero-photo{
  position:relative;z-index:1;width:100%;height:560px;
  object-fit:cover;border-radius:2px;
  box-shadow:var(--shadow-lg);background:#DCE8D9;
  transition:transform .7s var(--ease);
}
.hero-art:hover .hero-photo{transform:scale(1.015)}
.hero-label{
  position:absolute;z-index:2;bottom:56px;right:-20px;
  width:250px;padding:26px 28px;
  background:#fff;border-left:2px solid var(--gold);
  box-shadow:var(--shadow-lg);
  transition:transform .4s var(--ease);
}
.hero-label:hover{transform:translateY(-5px)}
.hero-label strong{display:block;font-family:var(--serif);font-size:22px;color:var(--deep);font-weight:600;margin-bottom:6px}
.hero-label span{display:block;font-size:11.5px;line-height:1.7;color:var(--muted)}

/* ============================================
   ACTUALITÉS — ACCORDÉON ÉLÉGANT
   ============================================ */
.news{background:var(--white);position:relative}
.news:before{
  content:"";position:absolute;top:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(201,169,110,.4),transparent);
}

/* Accordéon container */
.news-accordion{
  border-top:1px solid var(--line);
  max-width:100%;
}
.news-item{
  border-bottom:1px solid var(--line);
  position:relative;
  transition:background .35s var(--ease);
}
.news-item:hover{background:rgba(244,240,232,.4)}
.news-item.open{background:var(--ivory)}
.news-item.open:hover{background:var(--ivory)}

/* Le trigger (bouton d'ouverture) */
.news-trigger{
  display:grid;
  grid-template-columns:80px 1fr 180px 60px;
  align-items:center;
  gap:32px;
  width:100%;
  padding:36px 8px;
  background:none;border:none;
  text-align:left;
  cursor:pointer;
  transition:padding .35s var(--ease);
}
.news-item.open .news-trigger{padding-bottom:24px}
.news-trigger:hover .news-arrow{background:var(--deep);color:#fff;transform:rotate(0deg)}
.news-item.open .news-trigger:hover .news-arrow{transform:rotate(180deg)}

.news-num{
  font-family:var(--serif);
  font-size:38px;
  font-weight:400;
  color:var(--gold);
  line-height:1;
  transition:color .3s;
  letter-spacing:-.02em;
}
.news-item.open .news-num{color:var(--green)}

.news-trigger-content{min-width:0}
.news-trigger-meta{
  display:flex;flex-wrap:wrap;align-items:center;gap:12px;
  font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;
  font-weight:600;color:#8A8578;margin-bottom:10px;
}
.news-trigger-meta .category{color:var(--green)}
.news-trigger-meta .dot{width:3px;height:3px;background:var(--gold);border-radius:50%}
.news-trigger-title{
  font-family:var(--serif);
  font-size:24px;
  line-height:1.28;
  font-weight:600;
  color:var(--dark);
  margin:0;
  transition:color .3s;
  letter-spacing:-.01em;
}
.news-trigger:hover .news-trigger-title{color:var(--green)}

.news-trigger-date{
  font-size:11px;
  font-weight:600;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#8A8578;
  text-align:right;
}

.news-arrow{
  width:48px;height:48px;
  display:grid;place-items:center;
  border:1px solid var(--line);
  border-radius:50%;
  color:var(--deep);
  background:#fff;
  transition:all .4s var(--ease);
  flex:none;
}
.news-arrow svg{width:18px;height:18px;transition:transform .4s var(--ease)}
.news-item.open .news-arrow{background:var(--deep);color:#fff;border-color:var(--deep)}
.news-item.open .news-arrow svg{transform:rotate(180deg)}

/* Le contenu déroulant */
.news-panel{
  display:grid;
  grid-template-rows:0fr;
  transition:grid-template-rows .55s var(--ease);
}
.news-item.open .news-panel{grid-template-rows:1fr}
.news-panel-inner{
  overflow:hidden;
}
.news-panel-content{
  display:grid;
  grid-template-columns:1fr 1.2fr;
  gap:48px;
  padding:0 8px 48px 8px;
  align-items:start;
}
.news-panel-img{
  width:100%;
  height:280px;
  object-fit:cover;
  border-radius:2px;
  background:#E4EBE1;
  box-shadow:var(--shadow-sm);
}
.news-panel-body{padding-top:4px}
.news-panel-body p{
  font-size:14.5px;
  line-height:1.85;
  color:var(--muted);
  margin-bottom:24px;
}
.news-panel-body .arrow-link{
  font-size:11px;
  padding:12px 0;
  border-bottom:1px solid var(--gold);
  color:var(--deep);
}
.news-panel-body .arrow-link:hover{color:var(--orange);border-color:var(--orange)}

.news-end{display:flex;justify-content:center;margin-top:56px}

/* ============================================
   ABOUT
   ============================================ */
.about{background:var(--ivory);position:relative;overflow:hidden}
.about:before{content:"";position:absolute;top:0;right:0;width:42%;height:100%;background:linear-gradient(135deg,transparent,rgba(27,107,58,.03))}
.about-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:110px;align-items:center;position:relative}
.about-visual{position:relative;padding:0 34px 40px 0}
.about-visual:after{
  content:"";position:absolute;right:0;bottom:0;
  width:62%;height:58%;
  border:1px solid var(--gold);opacity:.5;z-index:0;
  transition:all .5s var(--ease);
}
.about-visual:hover:after{opacity:1;transform:translate(6px,6px)}
.about-photo{
  position:relative;z-index:1;width:100%;height:560px;
  object-fit:cover;border-radius:2px;background:#E1EBE2;
  box-shadow:var(--shadow-md);
}
.about-flag{
  position:absolute;z-index:2;left:26px;bottom:0;
  background:#fff;box-shadow:var(--shadow-lg);
  padding:24px 32px;border-left:2px solid var(--gold);
  font-family:var(--serif);font-size:20px;color:var(--deep);font-weight:500;
  letter-spacing:-.01em;
}
.about-text>p{font-size:15px;line-height:1.9;margin-bottom:18px}
.mission-list{
  list-style:none;margin:36px 0 42px;padding:0;
  display:grid;gap:20px;
}
.mission-list li{
  display:flex;align-items:start;gap:16px;
  font-size:13.5px;font-weight:500;line-height:1.7;color:#3D4F42;
}
.mission-list svg{width:20px;height:20px;flex:none;color:var(--gold);margin-top:1px}

/* ============================================
   FDIF
   ============================================ */
.fdif{position:relative;overflow:hidden;background:var(--deep);color:#fff;padding:140px 0}
.fdif:before{
  content:"";position:absolute;width:760px;height:760px;
  right:-320px;top:-420px;border:1px solid rgba(255,255,255,.05);border-radius:50%;
}
.fdif:after{
  content:"";position:absolute;width:540px;height:540px;
  right:-230px;top:-310px;border:1px solid rgba(201,169,110,.12);border-radius:50%;
}
.fdif .container{position:relative;z-index:1}
.fdif .eyebrow{color:var(--gold-soft)}
.fdif .eyebrow:before{background:var(--gold)}
.fdif h2{color:#fff;margin-bottom:20px}
.fdif h2 span{color:var(--gold);font-style:italic}
.fdif-intro{max-width:680px;color:#C5DBCA;font-size:15px;line-height:1.85}
.fdif-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;margin:64px 0 56px;
  border-top:1px solid rgba(255,255,255,.12);
  border-bottom:1px solid rgba(255,255,255,.12);
}
.fdif-item{padding:48px 40px 48px 0}
.fdif-item+.fdif-item{border-left:1px solid rgba(255,255,255,.1);padding-left:44px}
.fdif-icon{
  width:54px;height:54px;border:1px solid rgba(201,169,110,.3);
  display:grid;place-items:center;color:var(--gold);
  transition:border-color .3s, background .3s;
}
.fdif-item:hover .fdif-icon{border-color:var(--gold);background:rgba(201,169,110,.08)}
.fdif-icon svg{width:24px;height:24px}
.fdif-item h3{font-family:var(--serif);font-size:26px;font-weight:500;margin:28px 0 12px;color:#fff}
.fdif-item p{color:#B8D0BD;font-size:14px;margin:0;line-height:1.75}

/* ============================================
   PARTNERS
   ============================================ */
.partners{background:var(--white);text-align:center}
.partners .eyebrow{justify-content:center}
.partners h2{margin-bottom:16px}
.partners>div>p{max-width:580px;margin:0 auto 60px;font-size:15px}
.partner-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.partner{
  height:140px;background:#FDFCF9;
  display:flex;align-items:center;justify-content:center;
  flex-direction:column;gap:14px;
  border-right:1px solid var(--line);border-bottom:1px solid var(--line);
  transition:filter .4s,border-color .3s,background .3s;
  filter:grayscale(1);opacity:.55;
}
.partner:hover{filter:grayscale(0);opacity:1;background:#fff}
.partner svg{width:30px;height:30px;color:#7A8C7D;transition:color .3s}
.partner:hover svg{color:var(--green)}
.partner span{font-size:9.5px;color:#718075;font-weight:700;letter-spacing:.14em;text-transform:uppercase}

/* ============================================
   CONTACT
   ============================================ */
.contact{background:var(--ivory);position:relative}
.contact-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:110px}
.contact-intro{max-width:400px}
.contact-list{margin-top:44px;display:grid;gap:32px}
.contact-line{display:flex;gap:20px;align-items:start}
.contact-icon{
  width:46px;height:46px;border:1px solid #D5E2D7;
  display:grid;place-items:center;flex:none;color:var(--green);
  background:rgba(255,255,255,.7);transition:background .3s,border-color .3s;
}
.contact-line:hover .contact-icon{background:#fff;border-color:var(--gold)}
.contact-icon svg{width:18px;height:18px}
.contact-line strong{display:block;font-size:11px;font-weight:700;margin-bottom:6px;color:var(--dark);letter-spacing:.1em;text-transform:uppercase}
.contact-line span{font-size:13.5px;color:var(--muted);line-height:1.75;display:block}
.contact-form{
  background:#fff;padding:56px 60px;
  box-shadow:var(--shadow-md);
  border-top:2px solid var(--gold);
}
.contact-form h3{font-family:var(--serif);font-size:32px;font-weight:600;margin-bottom:8px;color:var(--dark)}
.contact-form>p{font-size:12px;color:#8A8578;margin-bottom:0}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.field{margin-top:28px}
.field label{display:block;font-size:10px;font-weight:700;color:#3D4F42;margin-bottom:10px;letter-spacing:.14em;text-transform:uppercase}
.field input,.field textarea{
  width:100%;border:0;border-bottom:1px solid #C9C2B2;
  border-radius:0;background:transparent;padding:14px 0 16px;
  color:var(--ink);outline:none;transition:border-color .3s;font-size:14.5px;
}
.field input:focus,.field textarea:focus{border-bottom:1.5px solid var(--green)}
.field input::placeholder,.field textarea::placeholder{color:#A8B5AA}
.field textarea{min-height:130px;resize:vertical}
.contact-form .btn{margin-top:40px}
.form-note{font-size:11px!important;margin:20px 0 0;color:#8A8578}
.form-feedback{font-size:12px;color:var(--deep);margin-top:14px;font-weight:500}

/* ============================================
   FOOTER
   ============================================ */
.footer{background:var(--dark);color:#fff;padding:96px 0 0;position:relative;overflow:hidden}
.footer:before{
  content:"";position:absolute;top:-240px;right:-240px;
  width:560px;height:560px;border:1px solid rgba(201,169,110,.08);border-radius:50%;
}
.footer-grid{display:grid;grid-template-columns:1.5fr .8fr 1fr;gap:100px;position:relative;z-index:1}
.footer .brand-title{color:#fff;font-family:var(--serif);font-weight:500}
.footer .brand-sub{color:var(--gold-soft);letter-spacing:.22em}
.footer-desc{font-size:13.5px;max-width:320px;color:#9DB8A3;margin:30px 0;line-height:1.85}
.footer h3{font-size:10px;letter-spacing:.22em;text-transform:uppercase;margin:8px 0 28px;color:var(--gold);font-weight:700;font-family:var(--sans)}
.footer-links{list-style:none;padding:0;margin:0;display:grid;gap:16px}
.footer-links a,.footer-address{color:#9DB8A3;font-size:13px;line-height:1.9;transition:color .25s}
.footer-links a:hover{color:var(--gold)}
.socials{display:flex;gap:14px}
.socials a{
  display:grid;place-items:center;width:42px;height:42px;
  border:1px solid rgba(255,255,255,.14);border-radius:50%;
  transition:all .3s;color:#9DB8A3;
}
.socials a:hover{border-color:var(--gold);color:var(--gold);background:rgba(201,169,110,.08)}
.socials svg{width:17px;height:17px}
.footer-bottom{
  display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;
  border-top:1px solid rgba(255,255,255,.08);
  padding:28px 0;margin-top:72px;color:#7A8F80;font-size:11px;
  letter-spacing:.04em;position:relative;z-index:1;
}
.footer-bottom a{transition:color .25s}
.footer-bottom a:hover{color:#fff}

/* ============================================
   ANIMATIONS
   ============================================ */
.js .reveal{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.js .reveal.visible{opacity:1;transform:none}
.js .reveal[data-delay="1"]{transition-delay:.12s}
.js .reveal[data-delay="2"]{transition-delay:.24s}
.js .reveal[data-delay="3"]{transition-delay:.36s}

/* ============================================
   RESPONSIVE
   ============================================ */
@media(max-width:1140px){
  .nav{gap:20px}
  .nav>a{font-size:9.5px}
  .hero-grid{gap:48px}
  .about-grid{gap:64px}
  .contact-grid{gap:64px}
  .hero-photo{height:480px}
  .news-trigger{grid-template-columns:64px 1fr 140px 52px;gap:24px;padding:32px 6px}
  .news-trigger-title{font-size:21px}
  .news-panel-content{grid-template-columns:1fr;gap:32px}
  .news-panel-img{height:240px}
}
@media(max-width:900px){
  .header-inner{height:82px}
  .menu-toggle{display:flex}
  .nav{
    position:absolute;top:82px;left:0;right:0;
    background:var(--cream);box-shadow:0 24px 48px rgba(11,31,18,.1);
    padding:28px;display:none;flex-direction:column;align-items:stretch;gap:0;
    border-bottom:1px solid var(--line);
  }
  .nav.open{display:flex}
  .nav>a{padding:18px 8px;font-size:13px;border-bottom:1px solid var(--line);letter-spacing:.08em}
  .nav .header-cta{margin:22px 0 0}
  .hero{padding:88px 0 108px}
  .hero-grid{grid-template-columns:1fr;gap:60px}
  .hero h1{max-width:720px}
  .hero-art{max-width:600px;width:100%;margin:auto}
  .about-grid,.contact-grid{grid-template-columns:1fr;gap:70px}
  .about-visual{max-width:620px}
  .partner-grid{grid-template-columns:repeat(3,1fr)}
  .footer-grid{gap:48px}
  .news-trigger{grid-template-columns:52px 1fr 44px;gap:20px}
  .news-trigger-date{display:none}
  .news-trigger-title{font-size:19px}
  .news-num{font-size:30px}
}
@media(max-width:640px){
  .container{width:calc(100% - 40px)}
  .section{padding:88px 0}
  .section-head{align-items:start;flex-direction:column;gap:28px}
  .hero{padding:68px 0 96px}
  .hero h1{font-size:clamp(2.6rem,10.5vw,4.2rem)}
  .hero-copy>p{font-size:15.5px}
  .hero-rule{margin-top:44px}
  .hero-art{padding:16px 14px 18px 18px}
  .hero-art:before{inset:0 0 44px 48px}
  .hero-art:after{width:95px;height:100px}
  .hero-photo{height:400px}
  .hero-label{width:210px;right:0;bottom:34px;padding:18px 20px}
  .hero-label strong{font-size:17px}
  .news-trigger{grid-template-columns:1fr 44px;gap:16px;padding:28px 0}
  .news-num{display:none}
  .news-trigger-title{font-size:18px}
  .news-panel-content{padding:0 0 36px 0}
  .news-panel-img{height:220px}
  .about-photo{height:400px}
  .fdif-grid{grid-template-columns:1fr}
  .fdif-item{padding:32px 0!important}
  .fdif-item+.fdif-item{border-left:0;border-top:1px solid rgba(255,255,255,.1)}
  .partner-grid{grid-template-columns:repeat(2,1fr)}
  .contact-form{padding:36px 28px}
  .field-row{grid-template-columns:1fr;gap:0}
  .footer-grid{grid-template-columns:1fr;gap:48px}
  .footer-bottom{margin-top:48px}
  .brand-sub{font-size:7px}
}
@media(max-width:380px){
  .hero-actions{flex-direction:column;align-items:stretch}
  .brand-title{font-size:22px}
  .brand-mark{width:44px;height:44px}
  .hero-label{width:185px;padding:14px}
  .hero-photo{height:320px}
}
@media(prefers-reduced-motion:reduce){
  *,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
  .js .reveal{opacity:1;transform:none}
  .news-panel{grid-template-rows:1fr!important}
}

/* === Identité officielle, menu complet et améliorations WCAG === */
.brand-mark{width:62px;height:62px;object-fit:contain;background:#fff;border-radius:50%;padding:2px}
.brand{gap:12px}.brand-title{font-size:23px}.brand-sub{max-width:175px;letter-spacing:.08em}
.header-inner{gap:12px}.nav{gap:clamp(9px,1.1vw,19px)}
.nav>a,.nav-subtoggle{font-size:10px;letter-spacing:.045em;white-space:nowrap}
.nav-dropdown{position:relative}
.nav-subtoggle{border:0;background:none;padding:12px 0;color:#3D4F42;font-weight:600;text-transform:uppercase;cursor:pointer}
.nav-subtoggle:hover,.nav-subtoggle[aria-expanded="true"]{color:var(--green)}
.nav-submenu{display:none;position:absolute;top:100%;left:-16px;min-width:225px;background:var(--cream);border:1px solid var(--line);box-shadow:var(--shadow-md);padding:10px;z-index:120}
.nav-submenu.open{display:grid}.nav-submenu a{font-size:12px;padding:12px 14px;color:var(--deep)}.nav-submenu a:hover,.nav-submenu a:focus-visible{background:var(--ivory)}
.skip:focus-visible{top:12px!important;outline:3px solid var(--green);outline-offset:2px}
.news-panel[inert]{visibility:hidden}.news-panel:not([inert]){visibility:visible}
.field input:focus-visible,.field textarea:focus-visible{outline:2px solid var(--green);outline-offset:3px}
@media(max-width:1250px){.menu-toggle{display:flex}.header-inner{height:82px}.nav{position:absolute;top:82px;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;background:var(--cream);box-shadow:var(--shadow-md);padding:18px 28px;max-height:calc(100dvh - 82px);overflow:auto}.nav.open{display:flex}.nav>a,.nav-subtoggle{font-size:13px;padding:14px 8px;border-bottom:1px solid var(--line);text-align:left}.nav-submenu{position:static;box-shadow:none;min-width:0;padding:0 0 0 14px}.brand-mark{width:56px;height:56px}}
@media(max-width:380px){.brand-title{font-size:20px}.brand-sub{font-size:6.5px;max-width:150px}.brand-mark{width:48px;height:48px}}
@media(prefers-reduced-motion:reduce){.news-panel[inert]{visibility:hidden}}

/* ===== EDITION SIGNATURE : FINITIONS PREMIUM ===== */
:root{--max:1320px}
.section{padding-block:clamp(84px,9vw,140px)}
.hero{background:radial-gradient(ellipse at 86% 30%,rgba(201,169,110,.16),transparent 43%),linear-gradient(155deg,#fdfcf9 0%,#f3efe5 65%,#e9e2d3 100%)}
.hero h1{font-size:clamp(3.1rem,6.1vw,6.6rem);letter-spacing:-.045em}
.hero h1 em{color:#23663b}
.hero-art:after{background:linear-gradient(135deg,#e4c78e,#b88e50)}
.hero-label{border-left:3px solid var(--gold);padding:28px 30px}
.hero-rule{letter-spacing:.15em}
.section-head h2 em{font-weight:500;color:var(--green)}
.btn{transition:transform .3s ease,background .3s ease,box-shadow .3s ease}
.about-visual:after{border-width:2px}
.fdif{background:radial-gradient(ellipse at 100% 0%,#1d4930 0%,transparent 47%),#0b2114}
.partner-grid{box-shadow:0 18px 50px rgba(11,31,18,.045)}
.contact-form{border-top:3px solid var(--gold)}
/* Bandeau des actualités : une seule ligne de cartes, mouvement continu droite → gauche */
.news-premium{background:#fff;padding-bottom:110px;overflow:hidden}
.news-premium .section-head{margin-bottom:48px}
.ticker-shell{position:relative;width:100%;overflow:hidden;padding:12px 0 34px;mask-image:linear-gradient(to right,transparent 0%,black 5%,black 95%,transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent 0%,black 5%,black 95%,transparent 100%)}
.ticker-track{display:flex;gap:26px;width:max-content;animation:snfiTicker 62s linear infinite;will-change:transform}
.ticker-shell:hover .ticker-track,.ticker-shell:focus-within .ticker-track{animation-play-state:paused}
@keyframes snfiTicker{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.ticker-card{width:clamp(310px,32vw,430px);flex:0 0 auto;background:#fbfaf6;border:1px solid #e7e0d3;box-shadow:0 16px 42px rgba(11,31,18,.055);overflow:hidden;transition:box-shadow .35s ease,transform .35s ease}
.ticker-card:hover{transform:translateY(-6px);box-shadow:0 24px 55px rgba(11,31,18,.13)}
.ticker-image-wrap{height:205px;position:relative;overflow:hidden;background:#e6eee5}
.ticker-image-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .65s ease}
.ticker-card:hover img{transform:scale(1.045)}
.ticker-index{position:absolute;bottom:0;left:0;background:#0b2114;color:#e8d6b2;font-size:10px;letter-spacing:.17em;padding:12px 17px;font-weight:700}
.ticker-copy{padding:29px 31px 31px;min-height:257px;display:flex;flex-direction:column;align-items:flex-start}
.ticker-category{color:#266d43;font-size:10px;font-weight:700;letter-spacing:.19em;text-transform:uppercase}
.ticker-copy h3{font-size:clamp(24px,2.4vw,30px);line-height:1.08;margin:13px 0 12px;color:var(--deep)}
.ticker-copy p{font-size:12.5px;line-height:1.65;margin-bottom:18px}
.ticker-link{display:inline-flex;align-items:center;gap:10px;margin-top:auto;padding-bottom:6px;border-bottom:1px solid var(--gold);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--deep)}
.ticker-link svg{width:15px;height:15px}
.ticker-link:hover{color:var(--green)}
.ticker-bottom{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-top:14px}
.ticker-caption{display:flex;align-items:center;gap:12px;color:#747a70;font-size:11px;letter-spacing:.03em}
.ticker-dot{width:7px;height:7px;border-radius:50%;background:var(--gold)}
.skip:focus-visible{top:12px!important}
@media(max-width:900px){.ticker-track{animation-duration:53s}.ticker-shell{mask-image:none;-webkit-mask-image:none}.ticker-card{width:340px}}
@media(max-width:640px){.ticker-card{width:300px}.ticker-image-wrap{height:165px}.ticker-copy{padding:24px;min-height:245px}.ticker-bottom{flex-direction:column;align-items:flex-start}.ticker-track{animation-duration:48s}.news-premium .section-head{margin-bottom:30px}}
@media(prefers-reduced-motion:reduce){.ticker-shell{overflow-x:auto;mask-image:none;-webkit-mask-image:none}.ticker-track{animation:none!important}.ticker-card:hover{transform:none}}


/* ===== SIGNATURE EXECUTIVE · FINITIONS V6 ===== */
:root{--orange:#E8751A;--muted:#445548;--line:#e7ddd0}
body{font-size:16px}
p{color:#46584b;line-height:1.78}
.hero-copy>p,.about-text>p,.fdif-intro{font-size:17px}
.hero h1{font-weight:600;line-height:1.055}
h2{font-weight:600;letter-spacing:-.015em}
.eyebrow{font-size:11px;font-weight:800;letter-spacing:.15em}
.btn{font-size:12px;font-weight:800;letter-spacing:.085em;min-height:54px;text-align:center;box-shadow:0 8px 20px rgba(11,31,18,.11)}
.btn-green{background:#15562f;border-color:#15562f}
.btn-orange{border:2px solid #E8751A}
.btn-outline{border:2px solid #E8751A;background:#fff;color:#123c25}
.btn-outline:hover{background:#E8751A;color:#fff;border-color:#E8751A}
.hero-actions{align-items:center}
.hero-actions .btn{min-width:215px}
.news-premium{background:linear-gradient(180deg,#fff 0%,#fff9f2 100%);padding-top:105px;padding-bottom:95px}
.news-premium .section-head{text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;margin-bottom:42px}
.news-premium .section-head .eyebrow{justify-content:center}
.news-premium .section-head h2{font-size:clamp(2.9rem,5vw,4.4rem);margin-bottom:10px}
.news-premium .section-head p{margin:0 auto;max-width:680px;font-size:16px}
.news-premium .section-head>.arrow-link{display:none}
.ticker-shell{padding:24px 0 54px;mask-image:none;-webkit-mask-image:none}
.ticker-track{gap:28px;animation-duration:78s}
.ticker-card{width:clamp(320px,31vw,425px);border:2px solid #E8751A;border-radius:13px;background:#fff;box-shadow:0 16px 0 -8px rgba(232,117,26,.13),0 22px 40px rgba(34,37,24,.16);overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}
.ticker-card:hover{transform:translateY(-9px);box-shadow:0 23px 0 -8px rgba(232,117,26,.2),0 32px 52px rgba(34,37,24,.23)}
.ticker-image-wrap{height:230px;background:#e9f0e7;border-bottom:3px solid #E8751A}
.ticker-image-wrap img{object-fit:cover}
.ticker-index{background:#E8751A;color:white;font-size:12px;font-weight:800;padding:12px 18px}
.ticker-copy{min-height:282px;padding:28px 30px 30px;align-items:stretch;text-align:center}
.ticker-category{color:#bf5811;font-size:11px;font-weight:800;letter-spacing:.11em}
.ticker-copy h3{font-size:clamp(27px,2.4vw,33px);font-weight:700;line-height:1.12;color:#0b2716;margin:16px 0 13px}
.ticker-copy p{font-size:14px;font-weight:500;line-height:1.65;color:#455447;margin-bottom:23px}
.ticker-link{display:inline-flex;justify-content:center;align-self:center;min-height:45px;align-items:center;border:2px solid #E8751A;border-radius:5px;padding:10px 16px;margin-top:auto;background:#fff;color:#143e27;font-size:11px;letter-spacing:.055em;font-weight:800;text-align:center;transition:background .2s,color .2s}
.ticker-link:hover{background:#E8751A;color:#fff}
.ticker-bottom{justify-content:center;flex-direction:column;text-align:center;gap:20px;margin-top:5px}
.ticker-caption{font-size:12px;font-weight:600;color:#506052}
.ticker-dot{background:#E8751A}
.news-premium .ticker-bottom .btn{min-width:300px}
.hero-photo,.about-photo{border:2px solid rgba(232,117,26,.7)}
.hero-label{border-left:4px solid #E8751A}
.about-flag{border-left:4px solid #E8751A}
.fdif-item h3{font-size:30px}
.fdif-item p{font-size:15px;color:#e1ece2}
.contact-form{border-top:4px solid #E8751A}
.field label{font-size:11px;color:#1b3b27}
.field input,.field textarea{font-size:16px}
.contact-form .btn{display:flex;margin:32px auto 0;min-width:240px}
.about-text>.btn,.fdif .btn{justify-content:center;text-align:center}
@media(max-width:900px){.ticker-card{width:355px}.ticker-track{animation-duration:68s}}
@media(max-width:640px){.ticker-card{width:300px}.ticker-image-wrap{height:185px}.ticker-copy{min-height:290px;padding:24px 19px}.ticker-copy h3{font-size:27px}.ticker-copy p{font-size:13.5px}.hero-actions{justify-content:center}.hero-actions .btn{min-width:0;width:100%}.news-premium .ticker-bottom .btn{min-width:0;width:100%}}

/* ===== V7 · PHOTOGRAPHIES & FDIF SIGNATURE ===== */
.ticker-copy .ticker-link{min-width:165px;min-height:48px;background:#ed7116;color:#fff;border-color:#ed7116;font-size:12px;font-weight:800;box-shadow:0 8px 18px rgba(232,117,26,.2)}
.ticker-copy .ticker-link:hover{background:#0c3c22;border-color:#0c3c22;color:#fff}
.ticker-image-wrap img{filter:saturate(1.07) contrast(1.035)}
.fdif-v7{background:radial-gradient(circle at 3% 95%,rgba(232,117,26,.12),transparent 33%),radial-gradient(circle at 96% 0%,rgba(201,169,110,.12),transparent 38%),linear-gradient(125deg,#071b10,#103c24 72%,#0b2b1b);padding:118px 0 125px}
.fdif-v7-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:76px;align-items:center}
.fdif-v7 .eyebrow{font-size:11px;letter-spacing:.13em;color:#f4c58c}
.fdif-overline{display:block;margin:12px 0 14px;color:#f5b76e;font-size:11px;letter-spacing:.23em;font-weight:800}
.fdif-v7 h2{font-size:clamp(68px,8vw,116px);font-weight:600;line-height:.92;margin:0 0 28px;color:#fff}
.fdif-v7 h2 span{color:#ff9a48;font-style:normal}
.fdif-v7 h2 small{display:block;margin-top:21px;font-family:var(--sans);font-size:clamp(16px,1.6vw,21px);font-weight:650;line-height:1.5;letter-spacing:0;color:#fff}
.fdif-v7 .fdif-intro{font-size:16px;line-height:1.9;color:#e0ece2;max-width:510px;margin-bottom:30px}
.fdif-main-btn{min-width:220px}
.fdif-v7-note{font-size:12px;color:#b3caba;margin-top:23px;max-width:440px}
.fdif-v7-cards{display:grid;gap:17px}
.fdif-v7-card{position:relative;display:grid;grid-template-columns:64px 1fr;column-gap:22px;padding:27px 30px;background:linear-gradient(120deg,rgba(255,255,255,.11),rgba(255,255,255,.045));border:1px solid rgba(255,180,104,.45);border-left:4px solid #E8751A;border-radius:12px;box-shadow:0 18px 42px rgba(0,0,0,.13);transition:transform .3s,border-color .3s}
.fdif-v7-card:hover{transform:translateX(-5px);border-color:#f6a45d}
.fdif-v7-number{grid-column:2;font-size:10px;letter-spacing:.2em;font-weight:800;color:#f4b675;margin-bottom:5px}
.fdif-v7-icon{grid-row:1/5;align-self:center;width:58px;height:58px;display:grid;place-items:center;border:1px solid rgba(255,183,108,.5);border-radius:12px;color:#ffb371;background:rgba(232,117,26,.13)}
.fdif-v7-icon svg{width:27px;height:27px}
.fdif-v7-card h3{grid-column:2;font-family:var(--serif);font-size:32px;color:#fff;margin:3px 0 6px;font-weight:700}
.fdif-v7-card p{grid-column:2;font-size:13px;line-height:1.7;color:#e3eee5;margin:0 0 9px}
.fdif-v7-card a{grid-column:2;font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:800;color:#ffb371;justify-self:start}
.fdif-v7-card a:hover{text-decoration:underline}
@media(max-width:1050px){.fdif-v7-grid{grid-template-columns:1fr;gap:44px}.fdif-v7-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.fdif-v7-card{display:block;padding:24px}.fdif-v7-icon{margin:12px 0}.fdif-v7-card h3{font-size:29px}}
@media(max-width:720px){.fdif-v7{padding:85px 0}.fdif-v7-cards{grid-template-columns:1fr}.fdif-v7-card{display:grid;grid-template-columns:56px 1fr;padding:22px;gap:8px 15px}.fdif-v7-icon{grid-row:1/5;margin:0}.fdif-v7 h2{font-size:74px}}

/* SITE COMPLET */
.skip:focus-visible{top:12px!important;outline:3px solid #E8751A}.page-hero{padding:100px 0 80px;background:linear-gradient(130deg,#f9f7ef,#eaf1e9);border-bottom:1px solid #e7ded0}.page-hero h1{font-size:clamp(2.8rem,5.5vw,5rem);margin:12px 0 20px}.page-hero p{max-width:760px;font-size:17px;color:#455d4b}.crumb{font-size:12px;color:#aa631d;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.interior{padding:85px 0 110px}.intro{max-width:840px;margin:0 auto 55px;text-align:center}.intro h2{font-size:clamp(2rem,4vw,3.3rem)}.premium-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.premium-card{background:white;border:1px solid #ead9c7;border-top:3px solid #E8751A;box-shadow:0 16px 45px rgba(10,45,24,.09);border-radius:9px;overflow:hidden;display:flex;flex-direction:column;min-height:230px}.premium-card img{width:100%;height:215px;object-fit:cover}.premium-card .card-content{padding:30px;display:flex;flex-direction:column;flex:1}.premium-card h3{font-size:26px;line-height:1.15;margin:8px 0 16px}.premium-card p{font-size:14px;line-height:1.75;flex:1}.premium-card .btn{align-self:center;margin-top:20px;min-width:150px;text-align:center}.eyebrow2{font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:#b15a13;font-weight:800}.panel-premium{background:#fff;padding:38px;border-radius:9px;border-left:4px solid #E8751A;box-shadow:0 12px 34px rgba(9,40,21,.07);margin:20px 0}.panel-premium h2{font-size:32px}.panel-premium p{font-size:15px}.pill-nav{display:flex;gap:12px;flex-wrap:wrap;margin:35px 0}.pill-nav a{padding:12px 18px;border:1px solid #d9c7af;border-radius:6px;background:#fff;color:#174e2b;font-size:13px;font-weight:700}.pill-nav a:hover{background:#fbead9;border-color:#E8751A}.doc-list{display:grid;gap:14px}.doc-row{padding:22px 26px;background:#fff;border:1px solid #e5dbcf;border-radius:8px;display:flex;justify-content:space-between;align-items:center;gap:20px}.doc-row strong{color:#173e26}.notice{padding:18px 22px;background:#fff7ec;border-left:4px solid #E8751A;border-radius:5px;color:#684927;font-size:14px}.split-section{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;margin:55px 0}.split-section img{width:100%;height:370px;object-fit:cover;border-radius:10px;box-shadow:0 20px 45px rgba(8,30,14,.12)}.cta-center{text-align:center;margin:55px auto 0}.article-meta{font-size:12px;color:#b15a13;font-weight:700;letter-spacing:.1em}.article-body{max-width:820px;margin:50px auto;font-size:17px;line-height:1.9}.article-body p{color:#43564a}.site-footer-links a{color:#f4d3a6}.nav .submenu{display:none;position:absolute;top:100%;background:#fff;box-shadow:0 14px 35px #0002;z-index:50;min-width:220px;padding:12px}.nav .has-sub:hover .submenu,.nav .has-sub:focus-within .submenu{display:grid}.nav .submenu a{padding:9px 12px;color:#183a25;font-size:12px}.nav .submenu a:hover{color:#E8751A}.nav .has-sub{position:relative}.nav .has-sub>a{white-space:nowrap}.footer-bottom a{color:inherit}@media(max-width:980px){.premium-grid{grid-template-columns:repeat(2,1fr)}.split-section{grid-template-columns:1fr}.nav .submenu{position:static;box-shadow:none;background:#f7f7f2}.nav .has-sub .submenu{display:grid}}@media(max-width:650px){.premium-grid{grid-template-columns:1fr}.page-hero{padding:75px 0 55px}.interior{padding:55px 0 75px}.doc-row{flex-direction:column;align-items:start}.panel-premium{padding:25px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Navigation et recherche V8 */
.search-toggle{flex:none;width:42px;height:42px;display:grid;place-items:center;border:1px solid #e3d9c8;border-radius:50%;background:#fff;color:#0b341f;transition:.2s;cursor:pointer}
.search-toggle:hover,.search-toggle:focus-visible{background:#fff2e8;border-color:#e8751a;color:#e8751a}
.site-search[hidden]{display:none!important}.site-search{position:absolute;top:100%;left:0;right:0;background:#fff;border-top:1px solid #eee2d1;box-shadow:0 22px 45px #10271924;z-index:101}.search-inner{padding:26px 0 30px}.search-inner label{font-weight:750;color:#113b27;display:block;margin-bottom:10px}.search-field{display:flex;border:1px solid #dfb58e;border-radius:9px;overflow:hidden}.search-field input{flex:1;min-width:0;border:0;padding:16px;font-size:16px;outline:0}.search-close{width:54px;border:0;background:#fff2e8;color:#b84d0b;font-size:30px;cursor:pointer}.search-results{display:grid;gap:4px;margin-top:12px;max-height:300px;overflow:auto}.search-results a{display:block;padding:11px 14px;border-radius:6px;color:#153e28;font-weight:600}.search-results a:hover{background:#fff2e8}.search-results p{margin:10px 0;color:#66786a}
.about-anchor-nav{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.about-anchor-nav a{padding:12px 18px;background:#fff;color:#145632;border:1px solid #e8751a;border-radius:6px;font-weight:700;font-size:13px}.about-anchor-nav a:hover{background:#e8751a;color:#fff}
.about-section{scroll-margin-top:120px}.about-section-alt{background:#f5f3ec}.about-section-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:64px;align-items:center}.about-section h2{color:#103921}.about-section p{font-size:16px;line-height:1.85;color:#435448;max-width:750px}.about-visual-frame img{width:100%;height:400px;object-fit:cover;border-radius:12px;box-shadow:0 20px 50px #10271926}.about-notice{font-size:13px!important;color:#8b5b29!important;font-style:italic}.about-lead{font-size:19px!important}.about-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:30px 0}.about-feature-grid article{background:#fff;border:1px solid #f0bc91;border-radius:12px;padding:28px;box-shadow:0 12px 35px #12351f12}.about-feature-grid article span{font-weight:800;color:#e8751a}.about-feature-grid h3{margin:12px 0;color:#103921}.about-diagram{padding:36px;border:1px solid #e8751a;border-radius:14px;background:#fff;box-shadow:0 20px 45px #12351f12;text-align:center;font-weight:750;color:#153e28}.about-diagram>div:first-child{padding:20px;background:#12492d;color:#fff;border-radius:8px}.about-diagram>div:last-child{padding:18px;background:#fff2e8;border-radius:8px}.diagram-line{width:2px;height:40px;background:#e8751a;margin:auto}.team-placeholder{padding:45px;text-align:center;background:#fff;border:1px dashed #e8751a;border-radius:14px}.team-placeholder span{font-size:21px;font-weight:750;color:#145632}
@media(max-width:900px){.about-section-grid{grid-template-columns:1fr;gap:28px}.about-feature-grid{grid-template-columns:1fr}.nav .search-toggle{margin:8px auto 16px}.site-search{top:100%}}
@media(max-width:640px){.about-visual-frame img{height:260px}.about-anchor-nav a{flex:1;text-align:center;min-width:140px}}

/* WordPress V12 */
body{overflow-x:hidden}.wp-admin-bar{top:32px}.snfi-shell{min-height:55vh}.snfi-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:35px 0 60px}.snfi-card{border:1px solid #e4e9e3;border-top:3px solid #e8751a;border-radius:16px;overflow:hidden;background:white;box-shadow:0 12px 35px #082b1610}.snfi-card img{width:100%;height:200px;object-fit:cover}.snfi-card-body{padding:22px}.snfi-card h3{font-size:22px;line-height:1.25;margin:10px 0}.snfi-card p{font-size:14px;line-height:1.7}.snfi-card a{color:#17633a;font-weight:750}.snfi-empty{padding:30px;border:1px dashed #a6b7a8;border-radius:12px;background:#f8faf6}.snfi-tag{color:#d56a1d;font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.09em}.snfi-search-panel{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;box-shadow:0 15px 30px #001b0e20;padding:20px;z-index:99}.snfi-search-panel.is-open{display:block}.snfi-search-panel form{max-width:1100px;margin:auto;display:flex;gap:12px}.snfi-search-panel input{flex:1;min-width:0;padding:14px;border:1px solid #bac8be;border-radius:8px}.snfi-search-panel button{background:#17633a;color:white;border:0;padding:14px 24px;border-radius:8px}.snfi-nav a{font-weight:800!important;font-size:13px}.snfi-header{position:sticky;top:0;z-index:100;background:#fff;box-shadow:0 5px 25px #001b0e16}.snfi-head-inner{max-width:1250px;margin:auto;display:flex;align-items:center;gap:20px;padding:12px 22px}.snfi-brand{display:flex;align-items:center;gap:12px;color:#0b301d;text-decoration:none;font-weight:900;white-space:nowrap}.snfi-brand-mark{width:45px;height:45px;border:2px solid #e8751a;border-radius:12px;display:grid;place-items:center;color:#17633a;font-weight:900}.snfi-nav{display:flex;align-items:center;gap:16px;margin-left:auto}.snfi-nav a{text-decoration:none;color:#163b28;white-space:nowrap}.snfi-nav a:hover,.snfi-nav a[aria-current=page]{color:#d46c22}.snfi-icon-btn{display:grid;place-items:center;background:#fff;border:1px solid #cbd6cf;border-radius:9px;width:43px;height:43px;cursor:pointer;color:#154f2e}.snfi-menu-btn{display:none;background:#123e28;color:white;border:2px solid #e8751a}.snfi-footer{background:#102a1b;color:#e8f1ea;padding:44px 24px;margin-top:55px}.snfi-footer-inner{max-width:1180px;margin:auto;display:flex;gap:30px;justify-content:space-between;flex-wrap:wrap}.snfi-footer a{color:#e8f1ea}.snfi-content{max-width:1150px;margin:0 auto;padding:55px 24px}.snfi-article{max-width:820px;margin:0 auto;padding:50px 20px}.snfi-article h1{font-size:clamp(32px,5vw,54px)}.snfi-article img{max-width:100%;height:auto;border-radius:14px}.snfi-article-body{line-height:1.85}.snfi-section-wrap{max-width:1180px;margin:auto;padding:50px 24px}.snfi-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.snfi-form-grid input,.snfi-form-grid textarea{padding:13px;border:1px solid #cbd7ce;border-radius:7px;width:100%}.snfi-form-grid textarea{grid-column:1/-1}.snfi-map{width:100%;height:320px;border:0;border-radius:15px}.snfi-home-latest{background:#f7f8f5;padding:50px 20px}.snfi-home-latest-inner{max-width:1180px;margin:auto}.snfi-home-latest h2{font-size:clamp(30px,4vw,48px)}
@media(max-width:1050px){.snfi-menu-btn{display:grid}.snfi-head-inner{flex-wrap:wrap}.snfi-nav{display:none;order:5;flex-basis:100%;margin:0;flex-direction:column;align-items:stretch;padding:12px 0}.snfi-nav.is-open{display:flex}.snfi-nav a{display:block;padding:13px 10px;border-bottom:1px solid #e5ebe6;font-size:16px!important}.snfi-search-btn{margin-left:auto}.snfi-results{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.snfi-results{grid-template-columns:1fr}.snfi-brand{font-size:13px}.snfi-brand-mark{width:36px;height:36px}.snfi-head-inner{gap:9px;padding:10px 14px}.snfi-form-grid{grid-template-columns:1fr}.snfi-footer-inner{flex-direction:column}}
/* V13 - Navigation premium, adaptable */
.snfi-header{z-index:999}.snfi-head-inner{max-width:1460px;gap:12px;padding:12px 22px}.snfi-brand{flex-shrink:0}.snfi-brand span{line-height:1.25}.snfi-brand .custom-logo{max-width:55px;max-height:55px;width:auto;height:auto}.snfi-nav{gap:clamp(8px,1.15vw,19px)}.snfi-nav a{font-size:clamp(11px,.84vw,14px)!important;letter-spacing:.005em;font-weight:850!important;transition:color .2s}.snfi-nav a:hover{color:#e8751a}.snfi-icon-btn{flex-shrink:0}.snfi-lang{display:flex;align-items:center;gap:5px;font-size:12px;font-weight:800;flex-shrink:0}.snfi-lang a{padding:7px;border-radius:7px;color:#17482e;text-decoration:none}.snfi-lang a.active{background:#1b6b3a;color:white}.snfi-lang .lang-item{list-style:none}.snfi-lang ul{display:flex;align-items:center;gap:5px;padding:0;margin:0}.snfi-lang a:focus-visible,.snfi-nav a:focus-visible,.snfi-icon-btn:focus-visible{outline:3px solid #e8751a;outline-offset:3px}.snfi-collection{padding:65px 20px;background:#fafbf9}.snfi-collection:nth-of-type(even){background:#f1f6f1}.snfi-collection .container{max-width:1180px;margin:auto}.snfi-collection h2{font-family:Georgia,serif;font-size:clamp(32px,4vw,54px);color:#173e29;margin:10px 0 16px}.snfi-collection p.lead{color:#566a5c;max-width:740px;line-height:1.75}.snfi-collection .snfi-results{margin-top:30px}.snfi-card{border:1px solid #e9eee9;border-top:4px solid #e8751a;box-shadow:0 16px 42px #143e2514;transition:transform .25s,box-shadow .25s}.snfi-card:hover{transform:translateY(-5px);box-shadow:0 23px 48px #143e2525}.snfi-card h3 a{text-decoration:none;color:#123e28}.snfi-card-body>a:last-child{display:inline-flex;background:#1b6b3a;color:white;padding:11px 17px;border-radius:8px;text-decoration:none;margin-top:10px}.snfi-card-body>a:last-child:hover{background:#e8751a}.snfi-card img{height:230px}.snfi-hero-label{font-weight:900;letter-spacing:.13em;text-transform:uppercase;color:#cf721e;font-size:12px}.snfi-intro{padding:95px 24px;background:linear-gradient(120deg,#0b2e1e,#1b6b3a);color:white}.snfi-intro .container{max-width:1150px;margin:auto}.snfi-intro h1{color:white;font-family:Georgia,serif;font-size:clamp(40px,6vw,78px);line-height:1.07;max-width:880px}.snfi-intro p{color:#e1efe4;max-width:690px;font-size:18px;line-height:1.75}.snfi-intro .snfi-hero-label{color:#eeb17a}.snfi-placeholder{border:1px dashed #c5d4c9;padding:22px;border-radius:13px;background:#f7faf7}.snfi-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:30px}.snfi-links a{display:block;background:white;border:1px solid #dae5dc;border-left:4px solid #e8751a;border-radius:12px;padding:22px;text-decoration:none;color:#19472e;font-weight:850;box-shadow:0 10px 24px #0d2c1510}.snfi-contact-map{margin:30px auto;max-width:1150px}.snfi-english-note{font-size:12px;color:#f1c9a3}.snfi-home-collection{padding-top:20px}.snfi-content-edit{padding:35px 20px;max-width:1150px;margin:auto}.snfi-content-edit:empty{display:none}
@media(max-width:1250px){.snfi-menu-btn{display:grid}.snfi-head-inner{flex-wrap:wrap}.snfi-nav{display:none;order:8;flex-basis:100%;margin:0;flex-direction:column;align-items:stretch;padding:10px 0;gap:0}.snfi-nav.is-open{display:flex}.snfi-nav a{display:block;padding:14px 10px;border-bottom:1px solid #e5ebe6;font-size:16px!important}.snfi-search-btn{margin-left:auto}}
@media(max-width:650px){.snfi-intro{padding:65px 18px}.snfi-links{grid-template-columns:1fr}.snfi-collection{padding:45px 15px}.snfi-brand .custom-logo{max-width:40px;max-height:40px}.snfi-lang{font-size:11px}.snfi-brand{font-size:12px}}
@media(prefers-reduced-motion:reduce){.snfi-card{transition:none}.snfi-card:hover{transform:none}}

/* V11 approved original visual language */

/* ============================================
   LUXURY EDITORIAL DESIGN SYSTEM
   ============================================ */
:root{
  --green:#1B6B3A;
  --deep:#0B1F12;
  --dark:#06140B;
  --gold:#C9A96E;
  --gold-soft:#E3D4B4;
  --orange:#E8751A;
  --cream:#FBFAF6;
  --ivory:#F4F0E8;
  --sand:#EDE7DA;
  --ink:#1A2419;
  --muted:#6B7669;
  --line:#E2DDD1;
  --white:#FFFFFF;
  --max:1280px;
  --serif:'Cormorant Garamond',Georgia,serif;
  --sans:'Inter',Arial,sans-serif;
  --shadow-sm:0 2px 16px rgba(11,31,18,.05);
  --shadow-md:0 16px 50px rgba(11,31,18,.09);
  --shadow-lg:0 32px 80px rgba(11,31,18,.14);
  --ease:cubic-bezier(.22,.61,.36,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body{
  margin:0;font-family:var(--sans);color:var(--ink);background:var(--cream);
  -webkit-font-smoothing:antialiased;line-height:1.65;overflow-x:hidden;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
button{cursor:pointer}
svg{display:block}
::selection{background:rgba(201,169,110,.3);color:var(--dark)}
:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
.container{width:min(var(--max),calc(100% - 56px));margin-inline:auto}

/* ===== TYPOGRAPHY ===== */
h1,h2,h3{margin-top:0;font-family:var(--serif);font-weight:500;letter-spacing:-.02em;color:var(--dark)}
h1{font-size:clamp(3.2rem,6vw,6rem);line-height:1.02;letter-spacing:-.03em}
h2{font-size:clamp(2.4rem,4.5vw,4rem);line-height:1.08}
h3{font-size:1.5rem;line-height:1.25;font-weight:600}
p{margin-top:0;line-height:1.85;color:var(--muted);font-weight:400}
.eyebrow{
  display:inline-flex;align-items:center;gap:16px;
  text-transform:uppercase;letter-spacing:.28em;
  font-size:10px;font-weight:600;color:var(--green);
  margin-bottom:20px;
}
.eyebrow:before{content:"";width:40px;height:1px;background:var(--gold)}

/* ===== BUTTONS ===== */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:14px;
  min-height:56px;padding:16px 32px;
  border-radius:0;border:1px solid transparent;
  font-weight:600;font-size:11px;letter-spacing:.14em;text-transform:uppercase;
  transition:all .4s var(--ease);position:relative;overflow:hidden;
}
.btn svg,.arrow-link svg{width:14px;height:14px;transition:transform .35s var(--ease)}
.btn:hover svg{transform:translateX(5px)}
.btn-green{background:var(--deep);color:#fff;box-shadow:0 6px 24px rgba(11,31,18,.2)}
.btn-green:hover{background:var(--dark);box-shadow:0 12px 36px rgba(11,31,18,.35);transform:translateY(-2px)}
.btn-outline{border-color:#C9C2B2;color:var(--deep);background:transparent}
.btn-outline:hover{border-color:var(--gold);background:rgba(201,169,110,.06);transform:translateY(-2px)}
.btn-orange{background:var(--orange);color:#fff;box-shadow:0 6px 24px rgba(232,117,26,.25)}
.btn-orange:hover{background:#cf6410;transform:translateY(-2px);box-shadow:0 12px 36px rgba(232,117,26,.35)}
.btn-light{background:#fff;color:var(--deep)}
.btn-light:hover{background:var(--gold-soft);transform:translateY(-2px)}
.arrow-link{
  display:inline-flex;align-items:center;gap:10px;
  font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  color:var(--green);white-space:nowrap;transition:color .3s, gap .3s;
}
.arrow-link:hover{color:var(--orange);gap:16px}

/* ===== LAYOUT ===== */
.section{padding:140px 0;position:relative}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:64px}
.section-head p{max-width:520px;margin:0;font-size:15px}

/* ===== HEADER ===== */
.site-header{
  position:sticky;top:0;z-index:100;
  background:rgba(251,250,246,.94);
  backdrop-filter:blur(24px) saturate(1.6);
  -webkit-backdrop-filter:blur(24px) saturate(1.6);
  border-bottom:1px solid rgba(226,221,209,.7);
  transition:box-shadow .35s;
}
.site-header.scrolled{box-shadow:0 4px 40px rgba(11,31,18,.07)}
.header-inner{height:96px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:16px;min-width:0}
.brand-mark{width:52px;height:52px;flex:none}
.brand-title{font-family:var(--serif);font-size:26px;line-height:1;font-weight:600;letter-spacing:.02em;color:var(--deep);display:block}
.brand-sub{display:block;margin-top:8px;font-size:7.5px;letter-spacing:.2em;font-weight:600;color:#8A8578;max-width:220px;line-height:1.5;text-transform:uppercase}
.nav{display:flex;align-items:center;gap:36px}
.nav>a{
  font-size:10.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;
  color:#3D4F42;transition:color .25s;position:relative;padding:6px 0;
}
.nav>a:after{content:"";position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--gold);transition:width .35s var(--ease)}
.nav>a:hover:after,.nav>a[aria-current]:after{width:100%}
.nav>a:hover,.nav>a[aria-current]{color:var(--deep)}
.header-cta{margin-left:8px}
.menu-toggle{
  display:none;background:none;border:1px solid var(--line);border-radius:0;
  width:48px;height:48px;align-items:center;justify-content:center;color:var(--deep);
  transition:border-color .25s;
}
.menu-toggle:hover{border-color:var(--gold)}
.menu-toggle svg{width:22px;height:22px}

/* ===== HERO ===== */
.hero{
  position:relative;overflow:hidden;
  background:linear-gradient(170deg,#FBFAF6 0%,#F4F0E8 45%,#EDE7DA 100%);
  padding:120px 0 140px;
}
.hero:before{
  content:"";position:absolute;top:-320px;right:-260px;
  width:780px;height:780px;border:1px solid rgba(201,169,110,.18);border-radius:50%;
}
.hero:after{
  content:"";position:absolute;bottom:-200px;left:-180px;
  width:560px;height:560px;border:1px solid rgba(27,107,58,.07);border-radius:50%;
}
.hero-grid{position:relative;display:grid;grid-template-columns:1.18fr .82fr;align-items:center;gap:90px}
.hero h1{max-width:780px;margin:36px 0 32px;color:var(--dark)}
.hero h1 em{font-style:italic;color:var(--green);font-weight:500}
.hero-copy>p{font-size:17.5px;max-width:520px;margin-bottom:40px;color:#5A6B5F;line-height:1.8}
.hero-actions{display:flex;flex-wrap:wrap;gap:16px}
.hero-rule{
  display:flex;align-items:center;gap:18px;
  margin-top:64px;padding-top:28px;
  border-top:1px solid rgba(27,107,58,.12);
  color:#6B7669;font-size:10px;font-weight:600;
  letter-spacing:.2em;text-transform:uppercase;
}
.hero-rule:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 5px rgba(201,169,110,.14)}

.hero-art{position:relative;min-width:0;padding:30px 24px 26px 32px}
.hero-art:before{
  content:"";position:absolute;inset:0 0 64px 64px;
  background:var(--deep);border-radius:2px;
  transform:translate(14px,-14px);
  transition:transform .7s var(--ease);
}
.hero-art:after{
  content:"";position:absolute;bottom:2px;left:0;
  width:140px;height:140px;background:var(--gold);z-index:0;
}
.hero-photo{
  position:relative;z-index:1;width:100%;height:560px;
  object-fit:cover;border-radius:2px;
  box-shadow:var(--shadow-lg);background:#DCE8D9;
  transition:transform .7s var(--ease);
}
.hero-art:hover .hero-photo{transform:scale(1.015)}
.hero-label{
  position:absolute;z-index:2;bottom:56px;right:-20px;
  width:250px;padding:26px 28px;
  background:#fff;border-left:2px solid var(--gold);
  box-shadow:var(--shadow-lg);
  transition:transform .4s var(--ease);
}
.hero-label:hover{transform:translateY(-5px)}
.hero-label strong{display:block;font-family:var(--serif);font-size:22px;color:var(--deep);font-weight:600;margin-bottom:6px}
.hero-label span{display:block;font-size:11.5px;line-height:1.7;color:var(--muted)}

/* ============================================
   ACTUALITÉS — ACCORDÉON ÉLÉGANT
   ============================================ */
.news{background:var(--white);position:relative}
.news:before{
  content:"";position:absolute;top:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(201,169,110,.4),transparent);
}

/* Accordéon container */
.news-accordion{
  border-top:1px solid var(--line);
  max-width:100%;
}
.news-item{
  border-bottom:1px solid var(--line);
  position:relative;
  transition:background .35s var(--ease);
}
.news-item:hover{background:rgba(244,240,232,.4)}
.news-item.open{background:var(--ivory)}
.news-item.open:hover{background:var(--ivory)}

/* Le trigger (bouton d'ouverture) */
.news-trigger{
  display:grid;
  grid-template-columns:80px 1fr 180px 60px;
  align-items:center;
  gap:32px;
  width:100%;
  padding:36px 8px;
  background:none;border:none;
  text-align:left;
  cursor:pointer;
  transition:padding .35s var(--ease);
}
.news-item.open .news-trigger{padding-bottom:24px}
.news-trigger:hover .news-arrow{background:var(--deep);color:#fff;transform:rotate(0deg)}
.news-item.open .news-trigger:hover .news-arrow{transform:rotate(180deg)}

.news-num{
  font-family:var(--serif);
  font-size:38px;
  font-weight:400;
  color:var(--gold);
  line-height:1;
  transition:color .3s;
  letter-spacing:-.02em;
}
.news-item.open .news-num{color:var(--green)}

.news-trigger-content{min-width:0}
.news-trigger-meta{
  display:flex;flex-wrap:wrap;align-items:center;gap:12px;
  font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;
  font-weight:600;color:#8A8578;margin-bottom:10px;
}
.news-trigger-meta .category{color:var(--green)}
.news-trigger-meta .dot{width:3px;height:3px;background:var(--gold);border-radius:50%}
.news-trigger-title{
  font-family:var(--serif);
  font-size:24px;
  line-height:1.28;
  font-weight:600;
  color:var(--dark);
  margin:0;
  transition:color .3s;
  letter-spacing:-.01em;
}
.news-trigger:hover .news-trigger-title{color:var(--green)}

.news-trigger-date{
  font-size:11px;
  font-weight:600;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#8A8578;
  text-align:right;
}

.news-arrow{
  width:48px;height:48px;
  display:grid;place-items:center;
  border:1px solid var(--line);
  border-radius:50%;
  color:var(--deep);
  background:#fff;
  transition:all .4s var(--ease);
  flex:none;
}
.news-arrow svg{width:18px;height:18px;transition:transform .4s var(--ease)}
.news-item.open .news-arrow{background:var(--deep);color:#fff;border-color:var(--deep)}
.news-item.open .news-arrow svg{transform:rotate(180deg)}

/* Le contenu déroulant */
.news-panel{
  display:grid;
  grid-template-rows:0fr;
  transition:grid-template-rows .55s var(--ease);
}
.news-item.open .news-panel{grid-template-rows:1fr}
.news-panel-inner{
  overflow:hidden;
}
.news-panel-content{
  display:grid;
  grid-template-columns:1fr 1.2fr;
  gap:48px;
  padding:0 8px 48px 8px;
  align-items:start;
}
.news-panel-img{
  width:100%;
  height:280px;
  object-fit:cover;
  border-radius:2px;
  background:#E4EBE1;
  box-shadow:var(--shadow-sm);
}
.news-panel-body{padding-top:4px}
.news-panel-body p{
  font-size:14.5px;
  line-height:1.85;
  color:var(--muted);
  margin-bottom:24px;
}
.news-panel-body .arrow-link{
  font-size:11px;
  padding:12px 0;
  border-bottom:1px solid var(--gold);
  color:var(--deep);
}
.news-panel-body .arrow-link:hover{color:var(--orange);border-color:var(--orange)}

.news-end{display:flex;justify-content:center;margin-top:56px}

/* ============================================
   ABOUT
   ============================================ */
.about{background:var(--ivory);position:relative;overflow:hidden}
.about:before{content:"";position:absolute;top:0;right:0;width:42%;height:100%;background:linear-gradient(135deg,transparent,rgba(27,107,58,.03))}
.about-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:110px;align-items:center;position:relative}
.about-visual{position:relative;padding:0 34px 40px 0}
.about-visual:after{
  content:"";position:absolute;right:0;bottom:0;
  width:62%;height:58%;
  border:1px solid var(--gold);opacity:.5;z-index:0;
  transition:all .5s var(--ease);
}
.about-visual:hover:after{opacity:1;transform:translate(6px,6px)}
.about-photo{
  position:relative;z-index:1;width:100%;height:560px;
  object-fit:cover;border-radius:2px;background:#E1EBE2;
  box-shadow:var(--shadow-md);
}
.about-flag{
  position:absolute;z-index:2;left:26px;bottom:0;
  background:#fff;box-shadow:var(--shadow-lg);
  padding:24px 32px;border-left:2px solid var(--gold);
  font-family:var(--serif);font-size:20px;color:var(--deep);font-weight:500;
  letter-spacing:-.01em;
}
.about-text>p{font-size:15px;line-height:1.9;margin-bottom:18px}
.mission-list{
  list-style:none;margin:36px 0 42px;padding:0;
  display:grid;gap:20px;
}
.mission-list li{
  display:flex;align-items:start;gap:16px;
  font-size:13.5px;font-weight:500;line-height:1.7;color:#3D4F42;
}
.mission-list svg{width:20px;height:20px;flex:none;color:var(--gold);margin-top:1px}

/* ============================================
   FDIF
   ============================================ */
.fdif{position:relative;overflow:hidden;background:var(--deep);color:#fff;padding:140px 0}
.fdif:before{
  content:"";position:absolute;width:760px;height:760px;
  right:-320px;top:-420px;border:1px solid rgba(255,255,255,.05);border-radius:50%;
}
.fdif:after{
  content:"";position:absolute;width:540px;height:540px;
  right:-230px;top:-310px;border:1px solid rgba(201,169,110,.12);border-radius:50%;
}
.fdif .container{position:relative;z-index:1}
.fdif .eyebrow{color:var(--gold-soft)}
.fdif .eyebrow:before{background:var(--gold)}
.fdif h2{color:#fff;margin-bottom:20px}
.fdif h2 span{color:var(--gold);font-style:italic}
.fdif-intro{max-width:680px;color:#C5DBCA;font-size:15px;line-height:1.85}
.fdif-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;margin:64px 0 56px;
  border-top:1px solid rgba(255,255,255,.12);
  border-bottom:1px solid rgba(255,255,255,.12);
}
.fdif-item{padding:48px 40px 48px 0}
.fdif-item+.fdif-item{border-left:1px solid rgba(255,255,255,.1);padding-left:44px}
.fdif-icon{
  width:54px;height:54px;border:1px solid rgba(201,169,110,.3);
  display:grid;place-items:center;color:var(--gold);
  transition:border-color .3s, background .3s;
}
.fdif-item:hover .fdif-icon{border-color:var(--gold);background:rgba(201,169,110,.08)}
.fdif-icon svg{width:24px;height:24px}
.fdif-item h3{font-family:var(--serif);font-size:26px;font-weight:500;margin:28px 0 12px;color:#fff}
.fdif-item p{color:#B8D0BD;font-size:14px;margin:0;line-height:1.75}

/* ============================================
   PARTNERS
   ============================================ */
.partners{background:var(--white);text-align:center}
.partners .eyebrow{justify-content:center}
.partners h2{margin-bottom:16px}
.partners>div>p{max-width:580px;margin:0 auto 60px;font-size:15px}
.partner-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.partner{
  height:140px;background:#FDFCF9;
  display:flex;align-items:center;justify-content:center;
  flex-direction:column;gap:14px;
  border-right:1px solid var(--line);border-bottom:1px solid var(--line);
  transition:filter .4s,border-color .3s,background .3s;
  filter:grayscale(1);opacity:.55;
}
.partner:hover{filter:grayscale(0);opacity:1;background:#fff}
.partner svg{width:30px;height:30px;color:#7A8C7D;transition:color .3s}
.partner:hover svg{color:var(--green)}
.partner span{font-size:9.5px;color:#718075;font-weight:700;letter-spacing:.14em;text-transform:uppercase}

/* ============================================
   CONTACT
   ============================================ */
.contact{background:var(--ivory);position:relative}
.contact-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:110px}
.contact-intro{max-width:400px}
.contact-list{margin-top:44px;display:grid;gap:32px}
.contact-line{display:flex;gap:20px;align-items:start}
.contact-icon{
  width:46px;height:46px;border:1px solid #D5E2D7;
  display:grid;place-items:center;flex:none;color:var(--green);
  background:rgba(255,255,255,.7);transition:background .3s,border-color .3s;
}
.contact-line:hover .contact-icon{background:#fff;border-color:var(--gold)}
.contact-icon svg{width:18px;height:18px}
.contact-line strong{display:block;font-size:11px;font-weight:700;margin-bottom:6px;color:var(--dark);letter-spacing:.1em;text-transform:uppercase}
.contact-line span{font-size:13.5px;color:var(--muted);line-height:1.75;display:block}
.contact-form{
  background:#fff;padding:56px 60px;
  box-shadow:var(--shadow-md);
  border-top:2px solid var(--gold);
}
.contact-form h3{font-family:var(--serif);font-size:32px;font-weight:600;margin-bottom:8px;color:var(--dark)}
.contact-form>p{font-size:12px;color:#8A8578;margin-bottom:0}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.field{margin-top:28px}
.field label{display:block;font-size:10px;font-weight:700;color:#3D4F42;margin-bottom:10px;letter-spacing:.14em;text-transform:uppercase}
.field input,.field textarea{
  width:100%;border:0;border-bottom:1px solid #C9C2B2;
  border-radius:0;background:transparent;padding:14px 0 16px;
  color:var(--ink);outline:none;transition:border-color .3s;font-size:14.5px;
}
.field input:focus,.field textarea:focus{border-bottom:1.5px solid var(--green)}
.field input::placeholder,.field textarea::placeholder{color:#A8B5AA}
.field textarea{min-height:130px;resize:vertical}
.contact-form .btn{margin-top:40px}
.form-note{font-size:11px!important;margin:20px 0 0;color:#8A8578}
.form-feedback{font-size:12px;color:var(--deep);margin-top:14px;font-weight:500}

/* ============================================
   FOOTER
   ============================================ */
.footer{background:var(--dark);color:#fff;padding:96px 0 0;position:relative;overflow:hidden}
.footer:before{
  content:"";position:absolute;top:-240px;right:-240px;
  width:560px;height:560px;border:1px solid rgba(201,169,110,.08);border-radius:50%;
}
.footer-grid{display:grid;grid-template-columns:1.5fr .8fr 1fr;gap:100px;position:relative;z-index:1}
.footer .brand-title{color:#fff;font-family:var(--serif);font-weight:500}
.footer .brand-sub{color:var(--gold-soft);letter-spacing:.22em}
.footer-desc{font-size:13.5px;max-width:320px;color:#9DB8A3;margin:30px 0;line-height:1.85}
.footer h3{font-size:10px;letter-spacing:.22em;text-transform:uppercase;margin:8px 0 28px;color:var(--gold);font-weight:700;font-family:var(--sans)}
.footer-links{list-style:none;padding:0;margin:0;display:grid;gap:16px}
.footer-links a,.footer-address{color:#9DB8A3;font-size:13px;line-height:1.9;transition:color .25s}
.footer-links a:hover{color:var(--gold)}
.socials{display:flex;gap:14px}
.socials a{
  display:grid;place-items:center;width:42px;height:42px;
  border:1px solid rgba(255,255,255,.14);border-radius:50%;
  transition:all .3s;color:#9DB8A3;
}
.socials a:hover{border-color:var(--gold);color:var(--gold);background:rgba(201,169,110,.08)}
.socials svg{width:17px;height:17px}
.footer-bottom{
  display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;
  border-top:1px solid rgba(255,255,255,.08);
  padding:28px 0;margin-top:72px;color:#7A8F80;font-size:11px;
  letter-spacing:.04em;position:relative;z-index:1;
}
.footer-bottom a{transition:color .25s}
.footer-bottom a:hover{color:#fff}

/* ============================================
   ANIMATIONS
   ============================================ */
.js .reveal{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.js .reveal.visible{opacity:1;transform:none}
.js .reveal[data-delay="1"]{transition-delay:.12s}
.js .reveal[data-delay="2"]{transition-delay:.24s}
.js .reveal[data-delay="3"]{transition-delay:.36s}

/* ============================================
   RESPONSIVE
   ============================================ */
@media(max-width:1140px){
  .nav{gap:20px}
  .nav>a{font-size:9.5px}
  .hero-grid{gap:48px}
  .about-grid{gap:64px}
  .contact-grid{gap:64px}
  .hero-photo{height:480px}
  .news-trigger{grid-template-columns:64px 1fr 140px 52px;gap:24px;padding:32px 6px}
  .news-trigger-title{font-size:21px}
  .news-panel-content{grid-template-columns:1fr;gap:32px}
  .news-panel-img{height:240px}
}
@media(max-width:900px){
  .header-inner{height:82px}
  .menu-toggle{display:flex}
  .nav{
    position:absolute;top:82px;left:0;right:0;
    background:var(--cream);box-shadow:0 24px 48px rgba(11,31,18,.1);
    padding:28px;display:none;flex-direction:column;align-items:stretch;gap:0;
    border-bottom:1px solid var(--line);
  }
  .nav.open{display:flex}
  .nav>a{padding:18px 8px;font-size:13px;border-bottom:1px solid var(--line);letter-spacing:.08em}
  .nav .header-cta{margin:22px 0 0}
  .hero{padding:88px 0 108px}
  .hero-grid{grid-template-columns:1fr;gap:60px}
  .hero h1{max-width:720px}
  .hero-art{max-width:600px;width:100%;margin:auto}
  .about-grid,.contact-grid{grid-template-columns:1fr;gap:70px}
  .about-visual{max-width:620px}
  .partner-grid{grid-template-columns:repeat(3,1fr)}
  .footer-grid{gap:48px}
  .news-trigger{grid-template-columns:52px 1fr 44px;gap:20px}
  .news-trigger-date{display:none}
  .news-trigger-title{font-size:19px}
  .news-num{font-size:30px}
}
@media(max-width:640px){
  .container{width:calc(100% - 40px)}
  .section{padding:88px 0}
  .section-head{align-items:start;flex-direction:column;gap:28px}
  .hero{padding:68px 0 96px}
  .hero h1{font-size:clamp(2.6rem,10.5vw,4.2rem)}
  .hero-copy>p{font-size:15.5px}
  .hero-rule{margin-top:44px}
  .hero-art{padding:16px 14px 18px 18px}
  .hero-art:before{inset:0 0 44px 48px}
  .hero-art:after{width:95px;height:100px}
  .hero-photo{height:400px}
  .hero-label{width:210px;right:0;bottom:34px;padding:18px 20px}
  .hero-label strong{font-size:17px}
  .news-trigger{grid-template-columns:1fr 44px;gap:16px;padding:28px 0}
  .news-num{display:none}
  .news-trigger-title{font-size:18px}
  .news-panel-content{padding:0 0 36px 0}
  .news-panel-img{height:220px}
  .about-photo{height:400px}
  .fdif-grid{grid-template-columns:1fr}
  .fdif-item{padding:32px 0!important}
  .fdif-item+.fdif-item{border-left:0;border-top:1px solid rgba(255,255,255,.1)}
  .partner-grid{grid-template-columns:repeat(2,1fr)}
  .contact-form{padding:36px 28px}
  .field-row{grid-template-columns:1fr;gap:0}
  .footer-grid{grid-template-columns:1fr;gap:48px}
  .footer-bottom{margin-top:48px}
  .brand-sub{font-size:7px}
}
@media(max-width:380px){
  .hero-actions{flex-direction:column;align-items:stretch}
  .brand-title{font-size:22px}
  .brand-mark{width:44px;height:44px}
  .hero-label{width:185px;padding:14px}
  .hero-photo{height:320px}
}
@media(prefers-reduced-motion:reduce){
  *,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
  .js .reveal{opacity:1;transform:none}
  .news-panel{grid-template-rows:1fr!important}
}

/* === Identité officielle, menu complet et améliorations WCAG === */
.brand-mark{width:62px;height:62px;object-fit:contain;background:#fff;border-radius:50%;padding:2px}
.brand{gap:12px}.brand-title{font-size:23px}.brand-sub{max-width:175px;letter-spacing:.08em}
.header-inner{gap:12px}.nav{gap:clamp(9px,1.1vw,19px)}
.nav>a,.nav-subtoggle{font-size:10px;letter-spacing:.045em;white-space:nowrap}
.nav-dropdown{position:relative}
.nav-subtoggle{border:0;background:none;padding:12px 0;color:#3D4F42;font-weight:600;text-transform:uppercase;cursor:pointer}
.nav-subtoggle:hover,.nav-subtoggle[aria-expanded="true"]{color:var(--green)}
.nav-submenu{display:none;position:absolute;top:100%;left:-16px;min-width:225px;background:var(--cream);border:1px solid var(--line);box-shadow:var(--shadow-md);padding:10px;z-index:120}
.nav-submenu.open{display:grid}.nav-submenu a{font-size:12px;padding:12px 14px;color:var(--deep)}.nav-submenu a:hover,.nav-submenu a:focus-visible{background:var(--ivory)}
.skip:focus-visible{top:12px!important;outline:3px solid var(--green);outline-offset:2px}
.news-panel[inert]{visibility:hidden}.news-panel:not([inert]){visibility:visible}
.field input:focus-visible,.field textarea:focus-visible{outline:2px solid var(--green);outline-offset:3px}
@media(max-width:1250px){.menu-toggle{display:flex}.header-inner{height:82px}.nav{position:absolute;top:82px;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;background:var(--cream);box-shadow:var(--shadow-md);padding:18px 28px;max-height:calc(100dvh - 82px);overflow:auto}.nav.open{display:flex}.nav>a,.nav-subtoggle{font-size:13px;padding:14px 8px;border-bottom:1px solid var(--line);text-align:left}.nav-submenu{position:static;box-shadow:none;min-width:0;padding:0 0 0 14px}.brand-mark{width:56px;height:56px}}
@media(max-width:380px){.brand-title{font-size:20px}.brand-sub{font-size:6.5px;max-width:150px}.brand-mark{width:48px;height:48px}}
@media(prefers-reduced-motion:reduce){.news-panel[inert]{visibility:hidden}}

/* ===== EDITION SIGNATURE : FINITIONS PREMIUM ===== */
:root{--max:1320px}
.section{padding-block:clamp(84px,9vw,140px)}
.hero{background:radial-gradient(ellipse at 86% 30%,rgba(201,169,110,.16),transparent 43%),linear-gradient(155deg,#fdfcf9 0%,#f3efe5 65%,#e9e2d3 100%)}
.hero h1{font-size:clamp(3.1rem,6.1vw,6.6rem);letter-spacing:-.045em}
.hero h1 em{color:#23663b}
.hero-art:after{background:linear-gradient(135deg,#e4c78e,#b88e50)}
.hero-label{border-left:3px solid var(--gold);padding:28px 30px}
.hero-rule{letter-spacing:.15em}
.section-head h2 em{font-weight:500;color:var(--green)}
.btn{transition:transform .3s ease,background .3s ease,box-shadow .3s ease}
.about-visual:after{border-width:2px}
.fdif{background:radial-gradient(ellipse at 100% 0%,#1d4930 0%,transparent 47%),#0b2114}
.partner-grid{box-shadow:0 18px 50px rgba(11,31,18,.045)}
.contact-form{border-top:3px solid var(--gold)}
/* Bandeau des actualités : une seule ligne de cartes, mouvement continu droite → gauche */
.news-premium{background:#fff;padding-bottom:110px;overflow:hidden}
.news-premium .section-head{margin-bottom:48px}
.ticker-shell{position:relative;width:100%;overflow:hidden;padding:12px 0 34px;mask-image:linear-gradient(to right,transparent 0%,black 5%,black 95%,transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent 0%,black 5%,black 95%,transparent 100%)}
.ticker-track{display:flex;gap:26px;width:max-content;animation:snfiTicker 62s linear infinite;will-change:transform}
.ticker-shell:hover .ticker-track,.ticker-shell:focus-within .ticker-track{animation-play-state:paused}
@keyframes snfiTicker{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.ticker-card{width:clamp(310px,32vw,430px);flex:0 0 auto;background:#fbfaf6;border:1px solid #e7e0d3;box-shadow:0 16px 42px rgba(11,31,18,.055);overflow:hidden;transition:box-shadow .35s ease,transform .35s ease}
.ticker-card:hover{transform:translateY(-6px);box-shadow:0 24px 55px rgba(11,31,18,.13)}
.ticker-image-wrap{height:205px;position:relative;overflow:hidden;background:#e6eee5}
.ticker-image-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .65s ease}
.ticker-card:hover img{transform:scale(1.045)}
.ticker-index{position:absolute;bottom:0;left:0;background:#0b2114;color:#e8d6b2;font-size:10px;letter-spacing:.17em;padding:12px 17px;font-weight:700}
.ticker-copy{padding:29px 31px 31px;min-height:257px;display:flex;flex-direction:column;align-items:flex-start}
.ticker-category{color:#266d43;font-size:10px;font-weight:700;letter-spacing:.19em;text-transform:uppercase}
.ticker-copy h3{font-size:clamp(24px,2.4vw,30px);line-height:1.08;margin:13px 0 12px;color:var(--deep)}
.ticker-copy p{font-size:12.5px;line-height:1.65;margin-bottom:18px}
.ticker-link{display:inline-flex;align-items:center;gap:10px;margin-top:auto;padding-bottom:6px;border-bottom:1px solid var(--gold);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--deep)}
.ticker-link svg{width:15px;height:15px}
.ticker-link:hover{color:var(--green)}
.ticker-bottom{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-top:14px}
.ticker-caption{display:flex;align-items:center;gap:12px;color:#747a70;font-size:11px;letter-spacing:.03em}
.ticker-dot{width:7px;height:7px;border-radius:50%;background:var(--gold)}
.skip:focus-visible{top:12px!important}
@media(max-width:900px){.ticker-track{animation-duration:53s}.ticker-shell{mask-image:none;-webkit-mask-image:none}.ticker-card{width:340px}}
@media(max-width:640px){.ticker-card{width:300px}.ticker-image-wrap{height:165px}.ticker-copy{padding:24px;min-height:245px}.ticker-bottom{flex-direction:column;align-items:flex-start}.ticker-track{animation-duration:48s}.news-premium .section-head{margin-bottom:30px}}
@media(prefers-reduced-motion:reduce){.ticker-shell{overflow-x:auto;mask-image:none;-webkit-mask-image:none}.ticker-track{animation:none!important}.ticker-card:hover{transform:none}}


/* ===== SIGNATURE EXECUTIVE · FINITIONS V6 ===== */
:root{--orange:#E8751A;--muted:#445548;--line:#e7ddd0}
body{font-size:16px}
p{color:#46584b;line-height:1.78}
.hero-copy>p,.about-text>p,.fdif-intro{font-size:17px}
.hero h1{font-weight:600;line-height:1.055}
h2{font-weight:600;letter-spacing:-.015em}
.eyebrow{font-size:11px;font-weight:800;letter-spacing:.15em}
.btn{font-size:12px;font-weight:800;letter-spacing:.085em;min-height:54px;text-align:center;box-shadow:0 8px 20px rgba(11,31,18,.11)}
.btn-green{background:#15562f;border-color:#15562f}
.btn-orange{border:2px solid #E8751A}
.btn-outline{border:2px solid #E8751A;background:#fff;color:#123c25}
.btn-outline:hover{background:#E8751A;color:#fff;border-color:#E8751A}
.hero-actions{align-items:center}
.hero-actions .btn{min-width:215px}
.news-premium{background:linear-gradient(180deg,#fff 0%,#fff9f2 100%);padding-top:105px;padding-bottom:95px}
.news-premium .section-head{text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;margin-bottom:42px}
.news-premium .section-head .eyebrow{justify-content:center}
.news-premium .section-head h2{font-size:clamp(2.9rem,5vw,4.4rem);margin-bottom:10px}
.news-premium .section-head p{margin:0 auto;max-width:680px;font-size:16px}
.news-premium .section-head>.arrow-link{display:none}
.ticker-shell{padding:24px 0 54px;mask-image:none;-webkit-mask-image:none}
.ticker-track{gap:28px;animation-duration:78s}
.ticker-card{width:clamp(320px,31vw,425px);border:2px solid #E8751A;border-radius:13px;background:#fff;box-shadow:0 16px 0 -8px rgba(232,117,26,.13),0 22px 40px rgba(34,37,24,.16);overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}
.ticker-card:hover{transform:translateY(-9px);box-shadow:0 23px 0 -8px rgba(232,117,26,.2),0 32px 52px rgba(34,37,24,.23)}
.ticker-image-wrap{height:230px;background:#e9f0e7;border-bottom:3px solid #E8751A}
.ticker-image-wrap img{object-fit:cover}
.ticker-index{background:#E8751A;color:white;font-size:12px;font-weight:800;padding:12px 18px}
.ticker-copy{min-height:282px;padding:28px 30px 30px;align-items:stretch;text-align:center}
.ticker-category{color:#bf5811;font-size:11px;font-weight:800;letter-spacing:.11em}
.ticker-copy h3{font-size:clamp(27px,2.4vw,33px);font-weight:700;line-height:1.12;color:#0b2716;margin:16px 0 13px}
.ticker-copy p{font-size:14px;font-weight:500;line-height:1.65;color:#455447;margin-bottom:23px}
.ticker-link{display:inline-flex;justify-content:center;align-self:center;min-height:45px;align-items:center;border:2px solid #E8751A;border-radius:5px;padding:10px 16px;margin-top:auto;background:#fff;color:#143e27;font-size:11px;letter-spacing:.055em;font-weight:800;text-align:center;transition:background .2s,color .2s}
.ticker-link:hover{background:#E8751A;color:#fff}
.ticker-bottom{justify-content:center;flex-direction:column;text-align:center;gap:20px;margin-top:5px}
.ticker-caption{font-size:12px;font-weight:600;color:#506052}
.ticker-dot{background:#E8751A}
.news-premium .ticker-bottom .btn{min-width:300px}
.hero-photo,.about-photo{border:2px solid rgba(232,117,26,.7)}
.hero-label{border-left:4px solid #E8751A}
.about-flag{border-left:4px solid #E8751A}
.fdif-item h3{font-size:30px}
.fdif-item p{font-size:15px;color:#e1ece2}
.contact-form{border-top:4px solid #E8751A}
.field label{font-size:11px;color:#1b3b27}
.field input,.field textarea{font-size:16px}
.contact-form .btn{display:flex;margin:32px auto 0;min-width:240px}
.about-text>.btn,.fdif .btn{justify-content:center;text-align:center}
@media(max-width:900px){.ticker-card{width:355px}.ticker-track{animation-duration:68s}}
@media(max-width:640px){.ticker-card{width:300px}.ticker-image-wrap{height:185px}.ticker-copy{min-height:290px;padding:24px 19px}.ticker-copy h3{font-size:27px}.ticker-copy p{font-size:13.5px}.hero-actions{justify-content:center}.hero-actions .btn{min-width:0;width:100%}.news-premium .ticker-bottom .btn{min-width:0;width:100%}}

/* ===== V7 · PHOTOGRAPHIES & FDIF SIGNATURE ===== */
.ticker-copy .ticker-link{min-width:165px;min-height:48px;background:#ed7116;color:#fff;border-color:#ed7116;font-size:12px;font-weight:800;box-shadow:0 8px 18px rgba(232,117,26,.2)}
.ticker-copy .ticker-link:hover{background:#0c3c22;border-color:#0c3c22;color:#fff}
.ticker-image-wrap img{filter:saturate(1.07) contrast(1.035)}
.fdif-v7{background:radial-gradient(circle at 3% 95%,rgba(232,117,26,.12),transparent 33%),radial-gradient(circle at 96% 0%,rgba(201,169,110,.12),transparent 38%),linear-gradient(125deg,#071b10,#103c24 72%,#0b2b1b);padding:118px 0 125px}
.fdif-v7-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:76px;align-items:center}
.fdif-v7 .eyebrow{font-size:11px;letter-spacing:.13em;color:#f4c58c}
.fdif-overline{display:block;margin:12px 0 14px;color:#f5b76e;font-size:11px;letter-spacing:.23em;font-weight:800}
.fdif-v7 h2{font-size:clamp(68px,8vw,116px);font-weight:600;line-height:.92;margin:0 0 28px;color:#fff}
.fdif-v7 h2 span{color:#ff9a48;font-style:normal}
.fdif-v7 h2 small{display:block;margin-top:21px;font-family:var(--sans);font-size:clamp(16px,1.6vw,21px);font-weight:650;line-height:1.5;letter-spacing:0;color:#fff}
.fdif-v7 .fdif-intro{font-size:16px;line-height:1.9;color:#e0ece2;max-width:510px;margin-bottom:30px}
.fdif-main-btn{min-width:220px}
.fdif-v7-note{font-size:12px;color:#b3caba;margin-top:23px;max-width:440px}
.fdif-v7-cards{display:grid;gap:17px}
.fdif-v7-card{position:relative;display:grid;grid-template-columns:64px 1fr;column-gap:22px;padding:27px 30px;background:linear-gradient(120deg,rgba(255,255,255,.11),rgba(255,255,255,.045));border:1px solid rgba(255,180,104,.45);border-left:4px solid #E8751A;border-radius:12px;box-shadow:0 18px 42px rgba(0,0,0,.13);transition:transform .3s,border-color .3s}
.fdif-v7-card:hover{transform:translateX(-5px);border-color:#f6a45d}
.fdif-v7-number{grid-column:2;font-size:10px;letter-spacing:.2em;font-weight:800;color:#f4b675;margin-bottom:5px}
.fdif-v7-icon{grid-row:1/5;align-self:center;width:58px;height:58px;display:grid;place-items:center;border:1px solid rgba(255,183,108,.5);border-radius:12px;color:#ffb371;background:rgba(232,117,26,.13)}
.fdif-v7-icon svg{width:27px;height:27px}
.fdif-v7-card h3{grid-column:2;font-family:var(--serif);font-size:32px;color:#fff;margin:3px 0 6px;font-weight:700}
.fdif-v7-card p{grid-column:2;font-size:13px;line-height:1.7;color:#e3eee5;margin:0 0 9px}
.fdif-v7-card a{grid-column:2;font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:800;color:#ffb371;justify-self:start}
.fdif-v7-card a:hover{text-decoration:underline}
@media(max-width:1050px){.fdif-v7-grid{grid-template-columns:1fr;gap:44px}.fdif-v7-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.fdif-v7-card{display:block;padding:24px}.fdif-v7-icon{margin:12px 0}.fdif-v7-card h3{font-size:29px}}
@media(max-width:720px){.fdif-v7{padding:85px 0}.fdif-v7-cards{grid-template-columns:1fr}.fdif-v7-card{display:grid;grid-template-columns:56px 1fr;padding:22px;gap:8px 15px}.fdif-v7-icon{grid-row:1/5;margin:0}.fdif-v7 h2{font-size:74px}}

/* SITE COMPLET */
.skip:focus-visible{top:12px!important;outline:3px solid #E8751A}.page-hero{padding:100px 0 80px;background:linear-gradient(130deg,#f9f7ef,#eaf1e9);border-bottom:1px solid #e7ded0}.page-hero h1{font-size:clamp(2.8rem,5.5vw,5rem);margin:12px 0 20px}.page-hero p{max-width:760px;font-size:17px;color:#455d4b}.crumb{font-size:12px;color:#aa631d;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.interior{padding:85px 0 110px}.intro{max-width:840px;margin:0 auto 55px;text-align:center}.intro h2{font-size:clamp(2rem,4vw,3.3rem)}.premium-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.premium-card{background:white;border:1px solid #ead9c7;border-top:3px solid #E8751A;box-shadow:0 16px 45px rgba(10,45,24,.09);border-radius:9px;overflow:hidden;display:flex;flex-direction:column;min-height:230px}.premium-card img{width:100%;height:215px;object-fit:cover}.premium-card .card-content{padding:30px;display:flex;flex-direction:column;flex:1}.premium-card h3{font-size:26px;line-height:1.15;margin:8px 0 16px}.premium-card p{font-size:14px;line-height:1.75;flex:1}.premium-card .btn{align-self:center;margin-top:20px;min-width:150px;text-align:center}.eyebrow2{font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:#b15a13;font-weight:800}.panel-premium{background:#fff;padding:38px;border-radius:9px;border-left:4px solid #E8751A;box-shadow:0 12px 34px rgba(9,40,21,.07);margin:20px 0}.panel-premium h2{font-size:32px}.panel-premium p{font-size:15px}.pill-nav{display:flex;gap:12px;flex-wrap:wrap;margin:35px 0}.pill-nav a{padding:12px 18px;border:1px solid #d9c7af;border-radius:6px;background:#fff;color:#174e2b;font-size:13px;font-weight:700}.pill-nav a:hover{background:#fbead9;border-color:#E8751A}.doc-list{display:grid;gap:14px}.doc-row{padding:22px 26px;background:#fff;border:1px solid #e5dbcf;border-radius:8px;display:flex;justify-content:space-between;align-items:center;gap:20px}.doc-row strong{color:#173e26}.notice{padding:18px 22px;background:#fff7ec;border-left:4px solid #E8751A;border-radius:5px;color:#684927;font-size:14px}.split-section{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;margin:55px 0}.split-section img{width:100%;height:370px;object-fit:cover;border-radius:10px;box-shadow:0 20px 45px rgba(8,30,14,.12)}.cta-center{text-align:center;margin:55px auto 0}.article-meta{font-size:12px;color:#b15a13;font-weight:700;letter-spacing:.1em}.article-body{max-width:820px;margin:50px auto;font-size:17px;line-height:1.9}.article-body p{color:#43564a}.site-footer-links a{color:#f4d3a6}.nav .submenu{display:none;position:absolute;top:100%;background:#fff;box-shadow:0 14px 35px #0002;z-index:50;min-width:220px;padding:12px}.nav .has-sub:hover .submenu,.nav .has-sub:focus-within .submenu{display:grid}.nav .submenu a{padding:9px 12px;color:#183a25;font-size:12px}.nav .submenu a:hover{color:#E8751A}.nav .has-sub{position:relative}.nav .has-sub>a{white-space:nowrap}.footer-bottom a{color:inherit}@media(max-width:980px){.premium-grid{grid-template-columns:repeat(2,1fr)}.split-section{grid-template-columns:1fr}.nav .submenu{position:static;box-shadow:none;background:#f7f7f2}.nav .has-sub .submenu{display:grid}}@media(max-width:650px){.premium-grid{grid-template-columns:1fr}.page-hero{padding:75px 0 55px}.interior{padding:55px 0 75px}.doc-row{flex-direction:column;align-items:start}.panel-premium{padding:25px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Navigation et recherche V8 */
.search-toggle{flex:none;width:42px;height:42px;display:grid;place-items:center;border:1px solid #e3d9c8;border-radius:50%;background:#fff;color:#0b341f;transition:.2s;cursor:pointer}
.search-toggle:hover,.search-toggle:focus-visible{background:#fff2e8;border-color:#e8751a;color:#e8751a}
.site-search[hidden]{display:none!important}.site-search{position:absolute;top:100%;left:0;right:0;background:#fff;border-top:1px solid #eee2d1;box-shadow:0 22px 45px #10271924;z-index:101}.search-inner{padding:26px 0 30px}.search-inner label{font-weight:750;color:#113b27;display:block;margin-bottom:10px}.search-field{display:flex;border:1px solid #dfb58e;border-radius:9px;overflow:hidden}.search-field input{flex:1;min-width:0;border:0;padding:16px;font-size:16px;outline:0}.search-close{width:54px;border:0;background:#fff2e8;color:#b84d0b;font-size:30px;cursor:pointer}.search-results{display:grid;gap:4px;margin-top:12px;max-height:300px;overflow:auto}.search-results a{display:block;padding:11px 14px;border-radius:6px;color:#153e28;font-weight:600}.search-results a:hover{background:#fff2e8}.search-results p{margin:10px 0;color:#66786a}
.about-anchor-nav{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.about-anchor-nav a{padding:12px 18px;background:#fff;color:#145632;border:1px solid #e8751a;border-radius:6px;font-weight:700;font-size:13px}.about-anchor-nav a:hover{background:#e8751a;color:#fff}
.about-section{scroll-margin-top:120px}.about-section-alt{background:#f5f3ec}.about-section-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:64px;align-items:center}.about-section h2{color:#103921}.about-section p{font-size:16px;line-height:1.85;color:#435448;max-width:750px}.about-visual-frame img{width:100%;height:400px;object-fit:cover;border-radius:12px;box-shadow:0 20px 50px #10271926}.about-notice{font-size:13px!important;color:#8b5b29!important;font-style:italic}.about-lead{font-size:19px!important}.about-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:30px 0}.about-feature-grid article{background:#fff;border:1px solid #f0bc91;border-radius:12px;padding:28px;box-shadow:0 12px 35px #12351f12}.about-feature-grid article span{font-weight:800;color:#e8751a}.about-feature-grid h3{margin:12px 0;color:#103921}.about-diagram{padding:36px;border:1px solid #e8751a;border-radius:14px;background:#fff;box-shadow:0 20px 45px #12351f12;text-align:center;font-weight:750;color:#153e28}.about-diagram>div:first-child{padding:20px;background:#12492d;color:#fff;border-radius:8px}.about-diagram>div:last-child{padding:18px;background:#fff2e8;border-radius:8px}.diagram-line{width:2px;height:40px;background:#e8751a;margin:auto}.team-placeholder{padding:45px;text-align:center;background:#fff;border:1px dashed #e8751a;border-radius:14px}.team-placeholder span{font-size:21px;font-weight:750;color:#145632}
@media(max-width:900px){.about-section-grid{grid-template-columns:1fr;gap:28px}.about-feature-grid{grid-template-columns:1fr}.nav .search-toggle{margin:8px auto 16px}.site-search{top:100%}}
@media(max-width:640px){.about-visual-frame img{height:260px}.about-anchor-nav a{flex:1;text-align:center;min-width:140px}}


/* Version intégrale autonome, navigation sans téléchargement */
.search-toggle{display:inline-flex!important;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;background:transparent;border:1px solid #e8751a;border-radius:50%;color:#0b1f12;cursor:pointer;margin-left:12px;flex-shrink:0}
.search-toggle:hover,.search-toggle:focus-visible{background:#e8751a;color:#fff}
.site-search[hidden]{display:none!important}.site-search{display:block;position:absolute;top:100%;left:0;right:0;z-index:120;background:#fff;box-shadow:0 16px 35px #0002;padding:18px 0;border-top:2px solid #e8751a}
.search-results a{display:block;padding:10px 4px;border-bottom:1px solid #eee;color:#153b23}.search-results a:hover{color:#e8751a}
#page-content{min-height:50vh}.nav>a{white-space:nowrap}.header-inner{gap:10px}
@media(min-width:901px){.nav{gap:clamp(7px,1.15vw,20px)!important}.nav>a{font-size:clamp(9px,.74vw,11px)!important}.brand{flex-shrink:0}.brand-sub{max-width:180px}}
@media(max-width:900px){.nav{max-height:calc(100dvh - 82px);overflow-y:auto}.search-toggle{margin:16px 0!important}.site-search{top:82px}}
.skip:focus-visible{top:10px!important}


/* ===== SE-SNFI V10 / REFINED INSTITUTIONAL EXPERIENCE ===== */
:root{--orange:#E8751A;--deep:#0B2819;--ink:#132b20;--cream:#faf9f5;--gold:#c69b56}
body{background:#faf9f5;color:#172a20;font-size:15px;-webkit-font-smoothing:antialiased}
h1,h2,h3{letter-spacing:-.025em}p{color:#485b50;line-height:1.8}
.site-header{background:rgba(255,255,255,.98)!important;border-bottom:1px solid #e9e7dd;box-shadow:0 7px 34px rgba(9,35,19,.07);z-index:900}
.header-inner{height:94px!important;gap:18px!important;max-width:1440px}
.brand{flex-shrink:0;gap:11px}.brand-mark{width:62px!important;height:62px!important;object-fit:contain;border-radius:5px}
.brand-title{font-family:Inter,Arial,sans-serif!important;font-size:25px!important;letter-spacing:-.025em!important;font-weight:850!important;color:#14552e!important}
.brand-sub{font-size:8px!important;font-weight:750!important;letter-spacing:.075em!important;color:#465d4c!important;max-width:225px}
.nav{gap:clamp(9px,1.25vw,22px)!important;align-items:center}
.nav>a,.nav .has-sub>a{font-family:Inter,Arial,sans-serif!important;font-size:11.5px!important;font-weight:800!important;letter-spacing:0!important;text-transform:none!important;color:#153d29!important;padding:13px 0!important;white-space:nowrap}
.nav>a:hover,.nav>a[aria-current]{color:#db6411!important}.nav>a:after{background:#E8751A!important;height:3px!important;border-radius:3px}
.search-toggle{width:44px!important;height:44px!important;border:1px solid #e6dfd2!important;background:#fff!important;border-radius:50%!important;color:#14552e!important;display:grid!important;place-items:center;flex-shrink:0;transition:background .25s,transform .25s,border-color .25s}
.search-toggle:hover{background:#fff2e8!important;border-color:#E8751A!important;transform:translateY(-2px)}
.search-toggle svg{width:20px;height:20px}
.menu-toggle{display:none;flex-shrink:0;width:52px!important;height:52px!important;background:#0d3e25!important;border:2px solid #E8751A!important;border-radius:11px!important;box-shadow:0 5px 16px rgba(11,48,26,.18);color:#fff!important;align-items:center;justify-content:center}
.menu-toggle svg{width:28px!important;height:28px!important;stroke:#fff!important}
.hero{background:linear-gradient(118deg,#fbfaf6 0%,#f3f3e9 55%,#e9eee5 100%);padding:110px 0 112px!important}
.hero h1{color:#102c1d!important;font-weight:650!important;line-height:1.04!important;font-size:clamp(3.25rem,5.25vw,5.75rem)!important}
.hero h1 em{color:#17633b!important}.hero-copy>p{color:#405449!important;font-size:17px!important;line-height:1.8}
.hero-photo{border-radius:16px!important;box-shadow:0 32px 75px rgba(11,44,23,.21)!important;object-position:center}
.hero-label{border-left:5px solid #E8751A!important;border-radius:9px!important}
.btn{font-family:Inter,Arial,sans-serif!important;font-weight:800!important;font-size:11.5px!important;letter-spacing:.045em!important;text-align:center;justify-content:center!important;border-radius:8px!important;min-height:51px!important;box-shadow:0 9px 22px rgba(7,44,20,.1);transition:transform .25s,box-shadow .25s,background .25s}
.btn:hover{transform:translateY(-3px)!important;box-shadow:0 16px 30px rgba(7,44,20,.16)}.btn-orange{background:#E8751A!important;border-color:#E8751A!important;color:#fff!important}
.section{padding:105px 0!important}.section-head{margin-bottom:44px}.section h2,.page-hero h1{color:#102e1d!important;font-weight:650!important}
.page-hero{position:relative;overflow:hidden;padding:105px 0 85px!important;background:radial-gradient(circle at 90% 30%,rgba(232,117,26,.12),transparent 29%),linear-gradient(120deg,#f6f5ed,#e6efe6)!important}
.page-hero:after{content:'';position:absolute;right:-110px;bottom:-230px;width:480px;height:480px;border:1px solid rgba(232,117,26,.22);border-radius:50%;pointer-events:none}
.page-hero .container{position:relative;z-index:1}.page-hero h1{font-size:clamp(2.8rem,5vw,4.7rem)!important;line-height:1.08}
.crumb{color:#b84e0b!important;font-size:12px!important;font-weight:850!important}
.interior{padding:80px 0 115px!important}.intro h2{font-weight:650}
.premium-grid{gap:27px!important}.premium-card{border:1px solid #f0b17b!important;border-top:4px solid #E8751A!important;border-radius:15px!important;box-shadow:0 15px 40px rgba(13,45,26,.11)!important;transition:transform .3s,box-shadow .3s;overflow:hidden}
.premium-card:hover{transform:translateY(-7px);box-shadow:0 25px 55px rgba(13,45,26,.18)!important}
.premium-card img{height:235px!important;object-fit:cover}.premium-card .card-content{padding:28px!important}.premium-card h3{font-weight:650;color:#102c1c!important;font-size:26px!important;line-height:1.18!important}
.premium-card p{color:#4c5a50!important;font-size:14.5px!important}.premium-card .btn{width:80%;align-self:center!important;margin-top:auto!important}
.panel-premium{border:1px solid #e9e2d5!important;border-left:5px solid #E8751A!important;border-radius:15px!important;padding:clamp(25px,3.2vw,48px)!important;box-shadow:0 18px 45px rgba(9,40,21,.075)!important}
.panel-premium h2{color:#103c25!important;font-weight:650!important}.pill-nav a{border-radius:50px!important;border-color:#e6b98e!important;padding:13px 22px!important;font-weight:800!important}
.pill-nav a:hover{background:#fff0e4!important}.split-section{gap:clamp(28px,5vw,75px)!important}.split-section img{height:390px!important;border-radius:16px!important;box-shadow:0 22px 48px rgba(11,44,23,.15)!important}
.doc-row{border-left:4px solid #E8751A!important;border-radius:11px!important;box-shadow:0 8px 24px rgba(10,40,20,.06)}
.news-card,.news-item{border-color:#E8751A!important}.news-card{box-shadow:0 14px 35px rgba(11,44,23,.11)!important;border-radius:12px!important;overflow:hidden}
.fdif{background:radial-gradient(circle at 90% 10%,#1c6440 0%,transparent 38%),linear-gradient(135deg,#062c1b,#0b3f26)!important}
.fdif h2{color:white!important}.fdif-item{border-color:rgba(232,117,26,.4)!important}.fdif-icon{color:#ffc07c!important;border-color:#d28a3e!important}
.contact-form{border-top:4px solid #E8751A!important;border-radius:14px!important;box-shadow:0 20px 50px rgba(7,39,20,.12)!important}
.footer{background:#092418!important}.footer h3{color:#f3b36b!important}.footer .brand-title{color:#fff!important}.footer .brand-sub{color:#b6d5bd!important}
.site-search{box-shadow:0 15px 35px rgba(11,42,22,.12);background:#fff!important}.search-inner{padding-block:23px!important}
/* Dedicated mobile navigation: obvious three-bar hamburger, readable bold links */
@media(max-width:1240px){.header-inner{height:84px!important}.brand-mark{width:55px!important;height:55px!important}.brand-title{font-size:23px!important}.brand-sub{font-size:7px!important}.nav{gap:10px!important}.nav>a{font-size:10.5px!important}}
@media(max-width:1050px){
 .header-inner{height:78px!important;display:flex!important;justify-content:space-between!important;gap:12px!important}
 .menu-toggle{display:flex!important;order:3!important}
 .search-toggle{order:2!important;margin-left:auto!important}
 .nav{position:absolute!important;top:78px!important;left:0!important;right:0!important;display:none!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;padding:15px 24px 25px!important;background:#fff!important;box-shadow:0 22px 42px rgba(8,42,20,.18)!important;border-bottom:4px solid #E8751A!important;max-height:calc(100dvh - 78px);overflow-y:auto;z-index:901!important}
 .nav.open{display:flex!important}
 .nav>a,.nav .has-sub>a{font-size:15px!important;font-weight:850!important;padding:17px 12px!important;border-bottom:1px solid #e9eee8!important;color:#153b28!important;display:block!important}
 .nav>a[aria-current]{color:#db6411!important;background:#fff7f0!important}
 .nav .submenu{display:none!important}.nav .has-sub:focus-within .submenu,.nav .has-sub:hover .submenu{display:grid!important}
 .hero-grid{grid-template-columns:1fr!important;gap:50px!important}.hero-art{max-width:640px;margin:auto}.hero{padding:75px 0!important}
 .premium-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:680px){
 .container{width:calc(100% - 36px)!important}.header-inner{height:72px!important}.nav{top:72px!important;max-height:calc(100dvh - 72px)}
 .brand-mark{width:47px!important;height:47px!important}.brand-title{font-size:21px!important}.brand-sub{font-size:6.5px!important;max-width:156px!important}
 .search-toggle{width:43px!important;height:43px!important}.menu-toggle{width:47px!important;height:47px!important;border-radius:10px!important}.menu-toggle svg{width:27px!important;height:27px!important}
 .hero{padding:58px 0 75px!important}.hero h1{font-size:clamp(2.55rem,10.3vw,3.8rem)!important}.hero-copy>p{font-size:15.5px!important}.hero-photo{height:380px!important}
 .section{padding:75px 0!important}.section-head{gap:22px!important}.page-hero{padding:68px 0 58px!important}.page-hero h1{font-size:clamp(2.45rem,10vw,3.4rem)!important}.page-hero p{font-size:15px!important}
 .interior{padding:55px 0 80px!important}.premium-grid{grid-template-columns:1fr!important;gap:22px!important}.premium-card img{height:220px!important}.premium-card .card-content{padding:25px!important}.premium-card .btn{width:100%}
 .split-section{grid-template-columns:1fr!important;gap:25px!important}.split-section img{height:280px!important}.panel-premium{padding:25px!important}
 .field-row{grid-template-columns:1fr!important}.contact-form{padding:28px 22px!important}.footer-grid{grid-template-columns:1fr!important;gap:36px!important}
 .pill-nav{gap:9px!important}.pill-nav a{font-size:12px!important;padding:11px 14px!important}
}
@media(max-width:390px){.brand-sub{max-width:130px!important}.brand-title{font-size:19px!important}.brand-mark{width:41px!important;height:41px!important}.header-inner{gap:7px!important}.menu-toggle{width:43px!important;height:43px!important}.search-toggle{width:41px!important;height:41px!important}}
@media(prefers-reduced-motion:reduce){.premium-card:hover,.btn:hover{transform:none!important}}

.hamburger-bars{display:flex;flex-direction:column;justify-content:space-between;width:25px;height:19px}.hamburger-bars i{display:block;width:100%;height:3px;background:#fff;border-radius:4px}.menu-toggle[aria-expanded="true"] .hamburger-bars i:first-child{transform:translateY(8px) rotate(45deg)}.menu-toggle[aria-expanded="true"] .hamburger-bars i:nth-child(2){opacity:0}.menu-toggle[aria-expanded="true"] .hamburger-bars i:last-child{transform:translateY(-8px) rotate(-45deg)}
.draft-label{display:inline-block;padding:8px 13px;border:1px solid #e8751a;border-radius:40px;color:#8b4b13;font-size:.72rem;font-weight:800;letter-spacing:.04em;margin:12px 0 20px}.org-chart{background:#f7faf6;border:1px solid #d9e5d9;padding:24px;border-radius:18px}.org-root{background:#164c30;color:white;text-align:center;border-radius:12px;padding:18px;font-weight:800;max-width:400px;margin:auto}.org-root small,.org-branches small{display:block;font-size:.72rem;opacity:.8;font-weight:500;margin-top:5px}.org-branches{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:24px}.org-branches>div{background:white;border:1px solid #cddfd1;border-top:3px solid #e8751a;border-radius:12px;padding:15px;font-weight:750;color:#18432c}.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:30px}.team-card{overflow:hidden;border:1px solid #e2e9df;border-radius:17px;background:white;box-shadow:0 10px 25px #102f1910}.team-avatar{height:195px;display:grid;place-items:center;background:linear-gradient(145deg,#eaf2e8,#d8e8d9)}.team-avatar svg{width:100px}.team-body{padding:20px}.team-role{font-size:.76rem;color:#bb671e;font-weight:800;text-transform:uppercase}.team-body h3{margin:9px 0}.fdif-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin:25px 0 45px}.section-heading{margin-top:42px}.fdif-split{display:grid;grid-template-columns:1fr 1fr;gap:22px}.rich-list{padding-left:24px;line-height:1.9}.resource-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:22px 0}.resource-grid a{display:block;border:1px solid #d9e5d9;border-left:4px solid #e8751a;background:white;padding:18px;border-radius:10px;color:#17492e;font-weight:750;text-decoration:none}.resource-grid a:hover{background:#f1f7ef}.search-hit{display:flex!important;flex-direction:column;gap:3px}.search-hit small{opacity:.7;font-size:.74rem}.search-results{max-height:65vh;overflow-y:auto}#site-search-input{width:100%}@media(max-width:800px){.team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fdif-split{grid-template-columns:1fr}}@media(max-width:560px){.team-grid,.org-branches,.fdif-grid,.resource-grid{grid-template-columns:1fr}.org-chart{padding:15px}.team-avatar{height:165px}.search-results{max-height:55vh}}
/* WordPress dynamic blocks */
.snfi-v14-live{padding:90px 0;background:#fafaf7}.snfi-v14-live h2{font-size:clamp(30px,4vw,50px);color:#123822;margin-bottom:30px}.snfi-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.snfi-card{background:white;border:1px solid #e5a76d;border-radius:18px;overflow:hidden;box-shadow:0 16px 40px #14301b14}.snfi-card img{width:100%;aspect-ratio:16/10;object-fit:cover}.snfi-card-body{padding:24px}.snfi-card-body h3{font-size:23px}.snfi-card-body a{color:#1b6b3a}.snfi-empty{padding:35px;background:white;border-radius:15px}.nav a,.main-nav a{font-weight:750!important}@media(max-width:850px){.snfi-results{grid-template-columns:1fr}}

/* V15: keep complete approved page design alongside live content */
.snfi-live-collection{padding:clamp(55px,7vw,100px) 0;background:#f7f5ef;border-top:1px solid #e3ddd1}.snfi-live-collection .snfi-results{margin-top:30px}.snfi-nav a{font-weight:750;letter-spacing:.015em}.snfi-menu-btn{z-index:999}.snfi-search-btn{flex-shrink:0}
@media(max-width:800px){.snfi-nav.is-open{max-height:calc(100dvh - 85px);overflow-y:auto}.snfi-nav a{font-size:1rem;font-weight:750}}
