/* =====================================================================
   FMS — Foursquare Mining Solutions · identité « Fondation »
   Couches : tokens → base → header → sections → composants → footer → responsive
   ===================================================================== */

:root{
	--fms-navy:#0E2A47;
	--fms-navy-d:#0A2039;
	--fms-navy-l:#1E3A5A;
	--fms-orange:#F2711C;
	--fms-orange-d:#D85F0E;
	--fms-grey:#6B7280;
	--fms-sand:#F4F1EC;
	--fms-line:#E6E1D8;
	--fms-ink:#2B3542;
	--fms-head:"Archivo","Arial Narrow",Arial,sans-serif;
	--fms-body:"Inter",-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
	--fms-pad:clamp(64px,8vw,112px);
	/* variables Enfold */
	--enfold-font-family-theme-body:var(--fms-body);
	--enfold-font-family-heading:var(--fms-head);
	--enfold-font-family-body:var(--fms-body);
}

/* ---------- Base ---------- */
html body,body .main_color,body .alternate_color,body input,body textarea,body select,body button{font-family:var(--fms-body)}
body{font-size:16px;line-height:1.65;color:var(--fms-ink);-webkit-font-smoothing:antialiased}
body h1,body h2,body h3,body h4,body h5,body h6,
body .main_color h1,body .main_color h2,body .main_color h3,body .alternate_color h2,body .alternate_color h3{
	font-family:var(--fms-head);font-weight:700;letter-spacing:-.01em;text-transform:none;color:var(--fms-navy)}
#top .fms-sec h1,#top .fms-sec h2,#top .fms-sec h3,#top .fms-sec h4{text-transform:none!important;font-family:var(--fms-head)!important;font-weight:700!important;letter-spacing:-.015em}
.fms-sec h1{font-size:clamp(38px,5vw,62px);line-height:1.05;margin:0 0 20px}
.fms-sec h2{font-size:clamp(28px,3.2vw,42px);line-height:1.12;margin:0 0 18px}
.fms-sec h3{font-size:20px;line-height:1.25;margin:0 0 10px}
.fms-sec p{margin:0 0 16px}
.fms-sec a{text-decoration:none}
::selection{background:var(--fms-orange);color:#fff}

/* Étiquette « eyebrow » : carré orange + capitales espacées */
.fms-eyebrow{display:inline-flex;align-items:center;gap:10px;font:600 12.5px/1 var(--fms-body);letter-spacing:.16em;text-transform:uppercase;color:var(--fms-orange-d)!important;margin:0 0 18px!important}
.fms-eyebrow::before{content:"";width:10px;height:10px;background:var(--fms-orange);flex:none}

/* Slogan — spec charte : Inter Regular, capitales, interlettrage +80, point final */
.fms-slogan{font:400 13px/1.4 var(--fms-body)!important;letter-spacing:.08em;text-transform:uppercase;color:#fff;margin:22px 0 0!important}
.fms-slogan--dark{color:var(--fms-navy);border-top:3px solid var(--fms-orange);display:inline-block;padding-top:14px}

/* ---------- Boutons ---------- */
.fms-btn{display:inline-flex;align-items:center;gap:10px;font:600 15px/1 var(--fms-body);padding:17px 26px;border:2px solid transparent;transition:background .2s,color .2s,border-color .2s;border-radius:0}
.fms-btn::after{content:"";width:8px;height:8px;border-top:2px solid currentColor;border-right:2px solid currentColor;transform:rotate(45deg);margin-left:2px;transition:transform .2s}
.fms-btn:hover::after{transform:translateX(3px) rotate(45deg)}
.fms-btn--orange{background:var(--fms-orange);color:#fff!important}
.fms-btn--orange:hover{background:var(--fms-orange-d)}
.fms-btn--navy{background:var(--fms-navy);color:#fff!important}
.fms-btn--navy:hover{background:var(--fms-navy-l)}
.fms-btn--ghost{border-color:rgba(255,255,255,.45);color:#fff!important}
.fms-btn--ghost:hover{border-color:#fff;background:rgba(255,255,255,.08)}
.fms-btn--ghost::after{display:none}
.fms-link{font-weight:600;color:var(--fms-navy)!important;border-bottom:2px solid var(--fms-orange);padding-bottom:3px}
.fms-link:hover{color:var(--fms-orange-d)!important}

/* ---------- Header ---------- */
#header_meta{background:var(--fms-navy)!important;border:0!important;min-height:38px}
#header_meta .container{min-height:38px}
#header_meta .phone-info,#header_meta .phone-info span,#header_meta a{color:#C9D2DD!important;font-size:12.5px;letter-spacing:.02em;line-height:38px!important}
#header_meta .sub_menu>ul>li>a:hover{color:#fff!important}
#header_meta .sub_menu>ul>li{border:0!important}
#header_main{border-bottom:1px solid var(--fms-line)!important}
#top #header .logo,#top #header .logo a{display:flex;align-items:center}
#top #header .logo a{display:flex!important;align-items:center;height:100%}
#top #header .logo img,#top #header .logo svg{max-height:none!important;height:54px!important;width:auto!important;padding:0!important}
#top #header.header-scrolled .logo img{height:42px!important}
#top #header .menu-item-search-dropdown,#top #header #menu-item-search{display:none!important}
#top #header .av-main-nav>li>a{font:600 14.5px/1 var(--fms-body);color:var(--fms-navy);letter-spacing:.01em;padding:0 16px}
#top #header .av-main-nav>li>a .avia-menu-text{position:relative;font-weight:600}
#top #header .av-main-nav>li:not(.fms-menu-cta)>a .avia-menu-text::after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:3px;background:var(--fms-orange);transform:scaleX(0);transform-origin:left;transition:transform .25s}
#top #header .av-main-nav>li:not(.fms-menu-cta)>a:hover .avia-menu-text::after,
#top #header .av-main-nav>li.current-menu-item:not(.fms-menu-cta)>a .avia-menu-text::after{transform:scaleX(1)}
#top #header .av-main-nav>li.fms-menu-cta{display:flex;align-items:center;margin-left:14px}
#top #header .av-main-nav>li.fms-menu-cta>a,#top #header .av-main-nav>li.fms-menu-cta>a:hover{height:auto!important;line-height:1!important;background:var(--fms-orange)!important;border:0!important;color:#fff!important;padding:14px 20px!important;border-radius:0}
#top #header .av-main-nav>li.fms-menu-cta>a:hover{background:var(--fms-orange-d)!important}
#top #header .av-main-nav>li.fms-menu-cta .avia-menu-text{color:#fff!important}
#top #header .avia-menu-fx{display:none}

/* ---------- Sections ---------- */
.fms-sec .entry-content-wrapper{padding:0!important}
.fms-sec .container .content{padding-top:var(--fms-pad)!important;padding-bottom:var(--fms-pad)!important}
.fms-sec .avia_textblock{font-size:16.5px}
.fms-head{max-width:760px;margin:0 0 52px}
.fms-head p:not(.fms-eyebrow){font-size:18px;color:var(--fms-grey)}

/* Bandeau de page intérieure */
.fms-pagehero .container .content{padding-top:clamp(90px,11vw,150px)!important;padding-bottom:clamp(70px,9vw,120px)!important}
.fms-pagehero h1,.fms-pagehero .fms-lead{color:#fff!important;max-width:820px}
.fms-pagehero .fms-lead{font-size:clamp(17px,1.6vw,20px);color:#D7DEE7!important;line-height:1.55}
.fms-pagehero .fms-eyebrow{color:#FFB98A!important}
.fms-pagehero{position:relative}
.fms-pagehero::after{content:"";position:absolute;left:0;bottom:0;width:min(34vw,420px);height:10px;background:var(--fms-orange);z-index:3}

/* Intro + chiffres */
.fms-intro__grid{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(32px,6vw,96px);align-items:start}
.fms-intro__grid>div:last-child{padding-top:44px;font-size:17px}
.fms-facts{list-style:none;margin:72px 0 0!important;padding:0;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--fms-line)}
.fms-facts li{margin:0!important;padding:28px 24px 0 0;border-right:1px solid var(--fms-line);display:flex;flex-direction:column;gap:10px}
.fms-facts li:not(:first-child){padding-left:24px}
.fms-facts li:last-child{border-right:0}
.fms-facts strong{font:700 clamp(34px,3.6vw,48px)/1 var(--fms-head);color:var(--fms-navy)}
.fms-facts span{font-size:14px;color:var(--fms-grey);line-height:1.45}

/* Quatre appuis — fond marine */
.fms-pillars-sec{background:var(--fms-navy)!important}
.fms-head--light h2{color:#fff!important}
.fms-head--light p:not(.fms-eyebrow){color:#B8C4D2!important}
.fms-head--light .fms-eyebrow{color:#FFB98A!important}
.fms-pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid rgba(255,255,255,.14)}
.fms-pillar{position:relative;padding:36px 28px 8px 0;border-right:1px solid rgba(255,255,255,.14)}
.fms-pillar:not(:first-child){padding-left:28px}
.fms-pillar:last-child{border-right:0}
.fms-pillar__sq{display:block;width:30px;height:30px;background:#fff;margin-bottom:26px}
.fms-pillar.is-open .fms-pillar__sq{background:transparent;border:4px solid var(--fms-orange)}
.fms-pillar__n{position:absolute;top:38px;right:24px;font:600 12px/1 var(--fms-body);letter-spacing:.14em;color:#7F92A8}
.fms-pillar h3{color:#fff!important;font-size:22px!important}
.fms-pillar p{color:#B8C4D2;font-size:15px;line-height:1.6}

/* Cartes gammes */
.fms-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--fms-line);border-left:1px solid var(--fms-line)}
.fms-card{position:relative;display:flex;flex-direction:column;padding:36px 32px 32px;border-right:1px solid var(--fms-line);border-bottom:1px solid var(--fms-line);background:#fff;color:var(--fms-ink)!important;transition:background .25s}
.fms-card::before{content:"";position:absolute;left:-1px;top:-1px;width:0;height:4px;background:var(--fms-orange);transition:width .3s}
.fms-card:hover{background:var(--fms-sand)}
.fms-card__more::before{content:"";position:absolute;inset:0}
.fms-card:hover::before{width:calc(100% + 2px)}
.fms-card__n{font:700 13px/1 var(--fms-head);color:var(--fms-orange-d);letter-spacing:.06em;margin-bottom:34px;display:inline-flex;align-items:center;gap:10px}
.fms-card__n::before{content:"";width:22px;height:22px;background:var(--fms-navy)}
.fms-card h3{font-size:22px!important}
.fms-card p{font-size:15px;color:var(--fms-grey);flex:1}
.fms-card__more{font-weight:600;font-size:14px;color:var(--fms-navy)!important;margin-top:8px}
.fms-card__more::after{content:" →";color:var(--fms-orange)}

/* Bloc image + texte */
.fms-split__grid{display:grid;grid-template-columns:.9fr 1fr;gap:clamp(32px,6vw,96px);align-items:center}
.fms-split__img{margin:0;position:relative}
.fms-split__img img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 20%}
.fms-split__img::after{content:"";position:absolute;right:-18px;bottom:-18px;width:120px;height:120px;border:8px solid var(--fms-orange);z-index:-1}
.fms-checks{list-style:none!important;margin:8px 0 30px!important;padding:0}
.fms-checks li{list-style:none!important;margin-left:0!important;position:relative;padding:12px 0 12px 30px;margin:0!important;border-bottom:1px solid var(--fms-line)}
.fms-checks li::before{content:"";position:absolute;left:0;top:19px;width:12px;height:12px;background:var(--fms-orange)}
.fms-checks--2col{display:grid;grid-template-columns:1fr 1fr;column-gap:40px}

/* Étapes */
.fms-steps{list-style:none;margin:0!important;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:24px;counter-reset:s}
.fms-steps li{counter-increment:s;margin:0!important;background:#fff;padding:32px 28px;border-top:4px solid var(--fms-navy);position:relative}
.fms-steps li::before{content:"0" counter(s);display:block;font:700 40px/1 var(--fms-head);color:var(--fms-orange);margin-bottom:22px}
.fms-steps li:last-child{border-top-color:var(--fms-orange)}
.fms-steps p{font-size:15px;color:var(--fms-grey);margin:0}

/* CTA */
.fms-cta{background:var(--fms-navy-d)!important;position:relative!important;overflow:hidden!important}
.fms-cta::before{content:"";position:absolute;right:-60px;top:50%;width:260px;height:260px;transform:translateY(-50%);border:24px solid var(--fms-orange)}
.fms-cta .container .content{padding-top:80px!important;padding-bottom:80px!important}
.fms-cta__in{display:flex;align-items:center;justify-content:space-between;gap:40px;position:relative;z-index:2}
.fms-cta h2{color:#fff!important;max-width:720px;margin:0!important;font-size:clamp(24px,2.6vw,34px)!important}
.fms-cta .fms-eyebrow{color:#FFB98A!important}
.fms-cta__btns{display:flex;gap:12px;flex-wrap:wrap;flex:none;padding-right:clamp(0px,10vw,170px)}

/* Implantations */
.fms-sites__grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.fms-site{background:var(--fms-sand);padding:40px;border-left:6px solid var(--fms-navy)}
.fms-site:last-child{border-left-color:var(--fms-orange)}
.fms-site__flag{display:inline-block;font:700 13px/1 var(--fms-head);letter-spacing:.1em;background:var(--fms-navy);color:#fff;padding:8px 10px;margin-bottom:22px}
.fms-meta{font-size:14px;color:var(--fms-grey)}

/* Gammes détaillées */
.fms-range{display:grid;grid-template-columns:1fr 1.25fr;gap:clamp(28px,5vw,80px);padding:52px 0;border-bottom:1px solid var(--fms-line);scroll-margin-top:140px}
.fms-range:first-child{padding-top:0}
.fms-range:last-child{border-bottom:0;padding-bottom:0}
.fms-range h2{font-size:clamp(26px,2.6vw,34px)!important}
.fms-range__h p{color:var(--fms-grey)}

/* Conformité */
.fms-docs{background:var(--fms-navy)!important}
.fms-docs__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.14)}
.fms-docs__grid>div{background:var(--fms-navy);padding:34px 28px}
.fms-docs__grid h3{color:#fff!important}
.fms-docs__grid p{color:#B8C4D2;font-size:15px;margin:0}

/* Contact */
.fms-contact .container .content{padding-top:var(--fms-pad)!important;padding-bottom:var(--fms-pad)!important}
.fms-contact__info{background:var(--fms-sand);padding:40px!important}
.fms-contact__info h2{font-size:30px!important}
.fms-coords{margin:8px 0 0}
.fms-coords dt{font:600 12px/1 var(--fms-body);letter-spacing:.12em;text-transform:uppercase;color:var(--fms-grey);margin:22px 0 8px}
.fms-coords dd{margin:0;font-size:17px;color:var(--fms-navy);font-weight:500}
.fms-coords a{color:var(--fms-navy)!important}
#devis{position:relative;top:-140px}
#top .fms-form input[type=text],#top .fms-form input[type=email],#top .fms-form textarea,#top .fms-form select{border:1px solid #CFC8BB;background:#fff;border-radius:0;padding:14px;font-size:15px;color:var(--fms-ink);min-height:50px}
#top .fms-form input:focus,#top .fms-form textarea:focus,#top .fms-form select:focus{border-color:var(--fms-navy);box-shadow:0 0 0 3px rgba(14,42,71,.12)}
#top .fms-form label{font-weight:600;font-size:14px;color:var(--fms-navy)}
#top .fms-form .button{background:var(--fms-orange)!important;border:0!important;border-radius:0;font:600 15px/1 var(--fms-body);padding:18px 30px;color:#fff!important;width:auto}
#top .fms-form .button:hover{background:var(--fms-orange-d)!important}

/* Mentions légales */
.fms-legal .avia_textblock{max-width:820px}
.fms-legal h2{font-size:24px!important;margin-top:36px!important}

/* ---------- Footer ---------- */
#footer-page .fms-footer{border:0!important;border-top:1px solid var(--fms-navy-l)!important}
.fms-footer .container .content{padding-top:80px!important;padding-bottom:56px!important}
.fms-footer__grid{display:grid;grid-template-columns:1.6fr 1fr 1.2fr 1.1fr;gap:48px}
.fms-footer__brand img{width:240px;height:auto;margin-bottom:22px}
.fms-footer__brand p{color:#B8C4D2;max-width:340px;font-size:15px}
.fms-footer h4{font:600 12px/1 var(--fms-body)!important;letter-spacing:.14em;text-transform:uppercase;color:#fff!important;margin:6px 0 22px!important;display:flex;align-items:center;gap:10px}
.fms-footer h4::before{content:"";width:8px;height:8px;background:var(--fms-orange)}
.fms-footer ul{list-style:none;margin:0!important;padding:0}
.fms-footer li{margin:0 0 11px!important;font-size:15px;color:#C9D2DD}
.fms-footer a{color:#C9D2DD!important}
.fms-footer a:hover{color:#fff!important}
#socket{border-top:1px solid #1E3A5A}
#socket .copyright{font-size:13px}
#socket .copyright a{color:#C9D2DD}

/* Revslider : pas d'ombre Enfold, pleine largeur propre */
.avia-revolutionslider{border:0!important;box-shadow:none!important}

/* ---------- Responsive ---------- */
@media (max-width:989px){
	.fms-intro__grid,.fms-split__grid,.fms-range,.fms-sites__grid{grid-template-columns:1fr}
	.fms-intro__grid>div:last-child{padding-top:0}
	.fms-facts{grid-template-columns:1fr 1fr}
	.fms-facts li{padding:24px 16px 24px 0!important;border-right:0;border-bottom:1px solid var(--fms-line)}
	.fms-pillars,.fms-docs__grid{grid-template-columns:1fr 1fr}
	.fms-pillar{padding:32px 24px 16px 0!important;border-right:0;border-bottom:1px solid rgba(255,255,255,.14)}
	.fms-cards{grid-template-columns:1fr 1fr}
	.fms-steps{grid-template-columns:1fr 1fr}
	.fms-cta__in{flex-direction:column;align-items:flex-start}
	.fms-cta::before{display:none}
	.fms-cta__btns{padding-right:0}
	.fms-footer__grid{grid-template-columns:1fr 1fr}
	.fms-split__img img{aspect-ratio:16/11}
	.fms-split__img::after{display:none}
}
@media (max-width:767px){
	.fms-facts,.fms-pillars,.fms-docs__grid,.fms-cards,.fms-steps,.fms-footer__grid,.fms-checks--2col{grid-template-columns:1fr}
	.fms-contact__info{padding:28px!important}
	#header_meta .phone-info{display:none}
	.fms-pagehero::after{width:45vw;height:8px}
}

/* ---------- Hero Slider Revolution ---------- */
.fms-hero-sec .container{max-width:none!important;width:100%!important;padding:0!important}
.fms-hero-sec .container .content{padding:0!important}
.fms-hero-sec .avia_textblock>p{margin:0}
.fms-hero-sec sr7-module{display:block}
#top #header .av-main-nav>li.fms-menu-cta{height:96px;display:flex!important;align-items:center}
#top #header.header-scrolled .av-main-nav>li.fms-menu-cta{height:48px}
#top #header .av-main-nav>li.fms-menu-cta>a{padding:13px 20px!important}
@media (max-width:989px){
	#top #header .av-main-nav>li.fms-menu-cta{display:none!important}
	#top #header .logo img{height:44px!important}
}
