@font-face{font-family:"Karla";src:url("./fonts/karla-latin.woff2") format("woff2");font-style:normal;font-weight:400 800;font-display:swap}
@font-face{font-family:"Hind";src:url("./fonts/hind-500-latin.woff2") format("woff2");font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:"Hind";src:url("./fonts/hind-600-latin.woff2") format("woff2");font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:"Poppins";src:url("./fonts/poppins-600-latin.woff2") format("woff2");font-style:normal;font-weight:600;font-display:swap}

body.fieri-derat-preview{margin:0;background:#fff}
#fieri-deratisation-page{
  --green:#086b2a;--green-dark:#064d20;--green-soft:#eaf3ec;--ink:#181b19;
  --muted:#606761;--line:#dfe5df;--paper:#f5f7f4;--red:#cf1818;
  position:relative;width:100vw;width:100dvw;max-width:none!important;
  margin-right:calc(50% - 50vw);margin-right:calc(50% - 50dvw);
  margin-left:calc(50% - 50vw);margin-left:calc(50% - 50dvw);
  color:var(--ink);background:#fff;font-family:"Karla",Arial,Helvetica,sans-serif;font-size:17px;line-height:1.68;text-rendering:optimizeLegibility
}
#fieri-deratisation-page,#fieri-deratisation-page *,#fieri-deratisation-page *::before,#fieri-deratisation-page *::after{box-sizing:border-box}
#fieri-deratisation-page img{display:block;max-width:100%}
#fieri-deratisation-page a{color:inherit}
#fieri-deratisation-page button{font:inherit}
#fieri-deratisation-page h1,#fieri-deratisation-page h2,#fieri-deratisation-page h3,#fieri-deratisation-page h4,#fieri-deratisation-page p,#fieri-deratisation-page figure{margin-top:0}
#fieri-deratisation-page h1,#fieri-deratisation-page h2,#fieri-deratisation-page h3,#fieri-deratisation-page h4{color:var(--ink);font-family:"Hind",Arial,Helvetica,sans-serif;font-weight:600;letter-spacing:-.025em;line-height:1.12}
#fieri-deratisation-page h2{font-family:"Poppins","Hind",Arial,Helvetica,sans-serif;font-weight:600}
#fieri-deratisation-page p,#fieri-deratisation-page li{overflow-wrap:anywhere}
#fieri-deratisation-page p:last-child,#fieri-deratisation-page ul:last-child,#fieri-deratisation-page ol:last-child{margin-bottom:0}
#fieri-deratisation-page a:focus-visible,#fieri-deratisation-page button:focus-visible{outline:3px solid #f2ae00;outline-offset:3px}
.fieri-derat-shell{width:min(1180px,calc(100% - 48px));margin-inline:auto}
.fieri-derat-skip{position:fixed;z-index:999;top:12px;left:12px;padding:10px 14px;color:#fff;background:#111;transform:translateY(-160%)}
.fieri-derat-skip:focus{transform:translateY(0)}

/* En-tête */
.fieri-derat-header{position:relative;z-index:20;border-bottom:1px solid #e9ede9;background:#fff}
.fieri-derat-topbar{color:#fff;background:var(--green);font-size:14px;font-weight:700}
.fieri-derat-topbar__inner{display:flex;min-height:40px;align-items:center;justify-content:center;gap:5px;text-align:center}
.fieri-derat-topbar a{color:#f3b600;text-decoration:none}
.fieri-derat-header__inner{display:grid;min-height:94px;grid-template-columns:84px 1fr auto;align-items:center;gap:28px}
.fieri-derat-brand{display:flex;width:74px;height:74px;align-items:center;justify-content:center;text-decoration:none}
.fieri-derat-brand img{width:68px;height:68px;object-fit:contain}
.fieri-derat-mainnav{display:flex;align-items:center;justify-content:center;gap:clamp(18px,2.2vw,34px)}
.fieri-derat-mainnav a{color:#343834;font-size:13px;font-weight:700;letter-spacing:.015em;text-decoration:none;text-transform:uppercase}
.fieri-derat-mainnav a:hover{color:var(--green)}
.fieri-derat-appointment,.fieri-derat-button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;border:0;border-radius:999px;padding:12px 22px;font-size:14px;font-weight:800;line-height:1.2;text-align:center;text-decoration:none;transition:background-color 160ms ease,color 160ms ease,transform 160ms ease}
.fieri-derat-appointment{color:#fff;background:var(--red);white-space:nowrap;text-transform:uppercase}
.fieri-derat-appointment:hover,.fieri-derat-button:hover{transform:translateY(-2px)}
.fieri-derat-mainnav__toggle{display:none;min-width:48px;min-height:48px;align-items:center;justify-content:center;gap:10px;border:1px solid var(--line);border-radius:999px;color:var(--ink);background:#fff;font-size:13px;font-weight:800}
.fieri-derat-mainnav__icon,.fieri-derat-mainnav__icon::before,.fieri-derat-mainnav__icon::after{width:18px;height:2px;background:currentColor}
.fieri-derat-mainnav__icon{position:relative}
.fieri-derat-mainnav__icon::before,.fieri-derat-mainnav__icon::after{position:absolute;left:0;content:""}
.fieri-derat-mainnav__icon::before{top:-6px}
.fieri-derat-mainnav__icon::after{top:6px}

/* Bandeau de titre fourni par le thème, distinct du hero */
.fieri-derat-pagehead{padding-block:28px 24px;color:#fff;background:#090a09}
.fieri-derat-pagehead__title{margin-bottom:12px;color:#fff;font-family:"Hind",Arial,Helvetica,sans-serif;font-size:clamp(27px,3vw,38px);font-weight:600;letter-spacing:-.015em;line-height:1.15}
.fieri-derat-breadcrumb{display:flex;flex-wrap:wrap;gap:7px;margin:0;color:#bec3bf;font-size:13px}
.fieri-derat-breadcrumb a{text-decoration:none}

/* Hero volontairement simple, sans image */
.fieri-derat-hero{display:flex;min-height:550px;align-items:center;color:#fff;background:#090a09}
.fieri-derat-hero__content{padding-block:64px 58px}
.fieri-derat-kicker,.fieri-derat-eyebrow{margin-bottom:12px;color:var(--green);font-size:13px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.fieri-derat-hero .fieri-derat-kicker{color:#74c68f}
.fieri-derat-hero h1{max-width:880px;margin-bottom:26px;color:#fff;font-size:clamp(46px,5.4vw,72px)}
.fieri-derat-hero h1 span{display:block;margin-top:8px;color:#d8ddd9;font-size:.68em;line-height:1.15}
.fieri-derat-hero__bottom{display:grid;max-width:900px;grid-template-columns:minmax(0,1.25fr) auto;align-items:end;gap:40px}
.fieri-derat-hero__bottom>p{margin:0;color:#c6cbc7;font-size:19px}
.fieri-derat-actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px}
.fieri-derat-button--urgent{color:#fff;background:var(--red)}
.fieri-derat-button--green{color:#fff;background:var(--green)}
.fieri-derat-button--dark{color:#fff;background:var(--ink)}
.fieri-derat-text-link{display:inline-flex;min-height:44px;align-items:center;border-bottom:1px solid currentColor;color:var(--green);font-size:15px;font-weight:800;text-decoration:none}
.fieri-derat-text-link--light{color:#fff}
.fieri-derat-hero__facts{display:flex;flex-wrap:wrap;gap:24px;margin-top:42px;padding-top:22px;border-top:1px solid #3d423e;color:#fff;font-size:14px;font-weight:700}
.fieri-derat-hero__facts span{display:inline-flex;align-items:center;gap:8px}
.fieri-derat-hero__facts span::before{width:7px;height:7px;border-radius:50%;background:#63be7d;content:""}

/* Navigation interne */
.fieri-derat-index{position:sticky;z-index:12;top:0;border-bottom:1px solid var(--line);background:rgba(255,255,255,.96);backdrop-filter:blur(10px)}
.fieri-derat-index__inner{min-height:66px}
.fieri-derat-index__list{display:grid;height:66px;margin:0;padding:0;grid-template-columns:repeat(6,1fr);list-style:none}
.fieri-derat-index__list li{min-width:0}
.fieri-derat-index__list a{display:flex;height:100%;align-items:center;justify-content:center;gap:8px;border-right:1px solid #edf0ed;color:#444a45;font-size:13px;font-weight:750;text-decoration:none}
.fieri-derat-index__list li:first-child a{border-left:1px solid #edf0ed}
.fieri-derat-index__list a:hover,.fieri-derat-index__list a.is-active{color:var(--green);background:#f5f8f5}
.fieri-derat-index__list span{color:#8d958e;font-variant-numeric:tabular-nums}
.fieri-derat-index__toggle{display:none}

/* Règles communes */
.fieri-derat-section,.fieri-derat-brand-section,.fieri-derat-final{scroll-margin-top:72px}
.fieri-derat-section{padding-block:104px}
.fieri-derat-section-head{display:grid;margin-bottom:28px;grid-template-columns:54px minmax(0,1fr);gap:22px}
.fieri-derat-section-no{display:inline-flex;width:46px;height:32px;align-items:center;justify-content:center;border-radius:999px;color:var(--green);background:var(--green-soft);font-size:13px;font-weight:800}
.fieri-derat-section-head h2{max-width:900px;margin-bottom:0;font-size:clamp(38px,4.8vw,58px)}
.fieri-derat-intro,.fieri-derat-methods__intro,.fieri-derat-pricing__intro,.fieri-derat-followup__intro{max-width:800px;margin:0 0 48px 76px;color:var(--muted);font-size:20px}
#fieri-deratisation-page figure figcaption{color:#697069;font-size:13px;line-height:1.35}

/* Organisation */
.fieri-derat-process{background:#fff}
.fieri-derat-process>.fieri-derat-process__inner{width:min(1560px,calc(100% - clamp(40px,7vw,128px)))}
.fieri-derat-process__header{max-width:1160px;margin-bottom:46px}
.fieri-derat-process__header h2{margin:0 0 24px;font-size:clamp(42px,5vw,68px)}
.fieri-derat-process__header>p{max-width:1000px;margin:0;color:var(--muted);font-size:clamp(18px,1.5vw,22px);line-height:1.58}
.fieri-derat-context-image{position:relative;overflow:hidden;margin:0 0 34px;border-radius:14px;background:#dfe6df}
.fieri-derat-context-image--process{width:100%;height:clamp(330px,36vw,560px)}
.fieri-derat-context-image img{width:100%;height:100%;object-fit:cover;object-position:center}
.fieri-derat-context-image figcaption,.fieri-derat-expertise__photo figcaption,.fieri-derat-followup__photo figcaption{position:absolute;right:12px;bottom:12px;left:12px;width:fit-content;max-width:calc(100% - 24px);margin:0;border-radius:6px;padding:8px 11px;color:#fff;background:rgba(17,21,18,.82)}
.fieri-derat-process__grid{display:grid;margin:0;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto auto;gap:20px;border:0;overflow:visible}
.fieri-derat-process__step{min-width:0;border:1px solid var(--line);border-radius:14px;padding:clamp(28px,3vw,46px);background:#fff;box-shadow:0 14px 40px rgba(22,40,27,.06)}
.fieri-derat-process__step:first-child,.fieri-derat-process__step:nth-child(2){background:#f3f7f3;border-color:#d6e4d8}
.fieri-derat-process__step:nth-child(3){grid-column:1/-1;color:#181b19!important;-webkit-text-fill-color:#181b19!important;background:#fff;border-color:var(--line)}
.fieri-derat-process__step h3{position:relative;margin-bottom:20px;padding-top:18px;font-size:clamp(25px,2.2vw,34px)}
.fieri-derat-process__step h3::before{position:absolute;top:0;left:0;width:38px;height:4px;border-radius:999px;background:var(--green);content:""}
body .fieri-derat-process__grid .fieri-derat-process__step:nth-child(3) h3{color:#181b19!important;-webkit-text-fill-color:#181b19!important}
.fieri-derat-process__step:nth-child(3) h3::before{background:var(--green)}
.fieri-derat-process__step p,.fieri-derat-process__step li{color:#4f5750;font-size:16px;line-height:1.58}
.fieri-derat-process__step:nth-child(3) p{max-width:1180px;color:#4f5750!important;-webkit-text-fill-color:#4f5750!important}
.fieri-derat-process__step ul,.fieri-derat-method ul,.fieri-derat-level ul,.fieri-derat-followup__card ul,.fieri-derat-pricing__block ul,.fieri-derat-pricing__block ol{padding-left:1.25em}
.fieri-derat-process__step li+li,.fieri-derat-method li+li,.fieri-derat-level li+li,.fieri-derat-followup__card li+li{margin-top:10px}
.fieri-derat-process__step:first-child ul{display:grid;margin:24px 0 0;padding:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;list-style:none}
.fieri-derat-process__step:first-child li{position:relative;margin:0;border:1px solid #dce7dd;border-radius:9px;padding:15px 16px 15px 42px;background:#fff}
.fieri-derat-process__step:first-child li::before{position:absolute;top:22px;left:18px;width:8px;height:8px;border-radius:50%;background:var(--green);content:""}
.fieri-derat-process__step:first-child li:last-child{grid-column:1/-1}
.fieri-derat-process__step:nth-child(2) ul{display:grid;margin:20px 0;padding:0;gap:9px;list-style:none}
.fieri-derat-process__step:nth-child(2) li{margin:0;border:1px solid #dce7dd;border-left:3px solid var(--green);border-radius:9px;padding:12px 14px;background:#fff}
.fieri-derat-note{display:grid;margin:28px 0 0;grid-template-columns:minmax(220px,.55fr) minmax(0,1.45fr);gap:clamp(24px,4vw,64px);border-left:4px solid var(--green);padding:26px clamp(24px,3vw,42px);color:#324035;background:var(--green-soft)}
.fieri-derat-note>strong{font-family:"Hind",Arial,Helvetica,sans-serif;font-size:22px;line-height:1.25}
.fieri-derat-note p{margin:0}
.fieri-derat-benefits{display:block;margin:70px 0 0}
.fieri-derat-benefits__title{display:grid;margin-bottom:30px;grid-template-columns:minmax(300px,.8fr) minmax(0,1fr);align-items:end;gap:40px}
.fieri-derat-benefits__title h3{margin:0;font-size:clamp(34px,4vw,54px)}
.fieri-derat-benefits__title p{max-width:620px;margin:0;color:var(--muted);font-size:18px}
.fieri-derat-benefits__list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--line)}
.fieri-derat-benefit{border:0;border-top:4px solid var(--green);padding:28px clamp(22px,2.5vw,38px);background:var(--paper)}
.fieri-derat-benefit h4{margin:0 0 10px;font-size:22px}
.fieri-derat-benefit p{color:var(--muted);font-size:15px}
.fieri-derat-contact-band{display:grid;margin-top:56px;padding:clamp(28px,4vw,52px);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:40px;border-radius:14px;color:#fff;background:var(--green)}
.fieri-derat-contact-band span{display:block;color:#bce0c6;font-size:13px}
.fieri-derat-contact-band strong,.fieri-derat-contact-band h3{color:#fff}
.fieri-derat-contact-band h3{margin:5px 0 8px;font-size:clamp(26px,3vw,38px)}
.fieri-derat-contact-band p{max-width:720px;margin:0;color:#d5eadb;font-size:16px}
.fieri-derat-contact-band__actions{display:flex;align-items:center;gap:12px}
.fieri-derat-contact-band__actions>a{display:inline-flex;min-height:50px;align-items:center;justify-content:center;border:1px solid #fff;border-radius:999px;padding:11px 21px;font-size:14px;font-weight:800;text-align:center;text-decoration:none;white-space:nowrap}
.fieri-derat-contact-band__phone{color:#034b1a!important;-webkit-text-fill-color:#034b1a!important;background:#fff}
.fieri-derat-contact-band__form{color:#fff!important;-webkit-text-fill-color:#fff!important;background:transparent}
.fieri-derat-contact-band__actions>a:hover,.fieri-derat-contact-band__actions>a:focus-visible{color:#fff!important;-webkit-text-fill-color:#fff!important;background:#034b1a;border-color:#034b1a}

/* Méthodes */
.fieri-derat-methods{background:var(--paper)}
.fieri-derat-method{margin-top:24px;border:1px solid var(--line);border-radius:14px;padding:clamp(28px,4vw,50px);background:#fff}
.fieri-derat-method__head{display:grid;margin-bottom:36px;grid-template-columns:170px minmax(0,1fr);gap:30px;align-items:start}
.fieri-derat-method__head>span{color:var(--green);font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.fieri-derat-method__head h3{max-width:790px;margin:0;font-size:clamp(31px,4.2vw,49px)}
.fieri-derat-method__lead,.fieri-derat-method__split-grid{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.3fr);gap:clamp(30px,5vw,64px);align-items:start}
.fieri-derat-method__lead{padding-bottom:36px;border-bottom:1px solid var(--line)}
.fieri-derat-method__figure{margin-bottom:0}
.fieri-derat-method__figure img{width:100%;max-height:420px;object-fit:contain;border-radius:10px;background:#edf1ed}
.fieri-derat-method__figure figcaption{margin-top:10px}
.fieri-derat-method__columns{display:grid;padding-block:38px;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}
.fieri-derat-method h4{margin:28px 0 12px;font-size:23px;line-height:1.2}
.fieri-derat-method__columns h4{margin-top:0}
.fieri-derat-method h4 span{display:block;margin-bottom:5px;color:var(--green);font-family:"Karla",Arial,Helvetica,sans-serif;font-size:12px;letter-spacing:.08em}
.fieri-derat-cycle{display:grid;margin-bottom:38px;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid #b8d5c0;border-radius:10px;overflow:hidden}
.fieri-derat-cycle span{display:flex;min-height:90px;flex-direction:column;justify-content:center;border-right:1px solid #b8d5c0;padding:16px 22px;color:#304435;background:var(--green-soft);font-size:14px;font-weight:700}
.fieri-derat-cycle span:last-child{border-right:0}
.fieri-derat-cycle b{color:var(--green);font-size:12px}
.fieri-derat-method__details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.fieri-derat-method__detail{border:1px solid var(--line);border-radius:10px;padding:24px;background:#fbfcfb}
.fieri-derat-detail-no{margin-bottom:22px;color:var(--green);font-size:12px;font-weight:800}
.fieri-derat-method__detail h4{margin-top:0}
.fieri-derat-conclusion{display:grid;margin-top:34px;grid-template-columns:120px minmax(0,1fr);gap:28px;border-top:2px solid var(--green);padding-top:22px}
.fieri-derat-conclusion>span{color:var(--green);font-size:13px;font-weight:800;text-transform:uppercase}
.fieri-derat-methods__duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.fieri-derat-method--compact{min-width:0}
.fieri-derat-method--compact .fieri-derat-method__head{display:block}
.fieri-derat-method--compact .fieri-derat-method__head h3{margin-top:12px;font-size:clamp(28px,3vw,38px)}
.fieri-derat-method--compact .fieri-derat-method__figure{margin-bottom:30px}
.fieri-derat-methods__summary{display:grid;margin-top:54px;grid-template-columns:.7fr 1.5fr;gap:60px;border-top:1px solid #b9c1ba;padding-top:38px}

/* Expertise */
body .fieri-derat-expertise{color:#181b19!important;background:#f3f7f3!important}
body .fieri-derat-expertise>.fieri-derat-expertise__grid{display:grid;width:min(1180px,calc(100% - 48px))!important;margin-inline:auto!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
body .fieri-derat-expertise .fieri-derat-section-head{display:block;grid-column:1/-1;max-width:1040px;margin:0 auto 28px;text-align:center}
body .fieri-derat-expertise .fieri-derat-section-no{display:none}
body .fieri-derat-expertise h2{max-width:none;margin:0 auto;color:#181b19!important;-webkit-text-fill-color:#181b19!important}
body .fieri-derat-expertise .fieri-derat-eyebrow{margin-bottom:14px;color:#086b2a!important;-webkit-text-fill-color:#086b2a!important}
body .fieri-derat-expertise__photo{position:relative;min-height:460px;margin:0;overflow:hidden;border-radius:14px;background:#e4ebe5}
body .fieri-derat-expertise__photo img{width:100%;height:100%;object-fit:cover}
body .fieri-derat-expertise__copy{align-self:stretch;border:1px solid #dce6dd;border-radius:14px;padding:clamp(28px,3vw,44px);color:#181b19!important;-webkit-text-fill-color:#181b19!important;background:#fff;font-size:18px}
body .fieri-derat-expertise__copy p,body .fieri-derat-expertise__copy strong{color:#181b19!important;-webkit-text-fill-color:#181b19!important}
body .fieri-derat-expertise__copy .fieri-derat-button{margin-top:14px;color:#fff!important;-webkit-text-fill-color:#fff!important;background:#086b2a!important}
body .fieri-derat-expertise__badge{display:flex;grid-column:1/-1;width:max-content;max-width:100%;margin:8px auto 0;align-items:center;justify-content:center;gap:22px;border:1px solid #dce6dd;border-radius:12px;padding:16px 24px;color:#181b19!important;background:#fff}
body .fieri-derat-expertise__badge img{width:112px;height:76px;object-fit:contain;border-radius:6px;background:#fff}
body .fieri-derat-expertise__badge strong,body .fieri-derat-expertise__badge span{display:block;color:#181b19!important;-webkit-text-fill-color:#181b19!important}
body .fieri-derat-expertise__badge span{color:#526057!important;-webkit-text-fill-color:#526057!important}

/* Niveaux */
.fieri-derat-levels__intro{display:grid;margin:0 0 46px 76px;grid-template-columns:.75fr 1.25fr;gap:42px}
.fieri-derat-levels__intro h3{margin-bottom:0;font-size:28px}
.fieri-derat-levels__intro p{margin-bottom:0;color:var(--muted)}
.fieri-derat-levels__intro a{color:var(--green)}
.fieri-derat-levels__scale{display:flex;margin-left:76px;justify-content:space-between;border-bottom:5px solid var(--green-soft);padding-bottom:8px;color:#747b75;font-size:12px;font-weight:800;text-transform:uppercase}
.fieri-derat-levels__grid{display:grid;margin:22px 0 0 76px;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.fieri-derat-level{border:1px solid var(--line);border-radius:12px;padding:28px;background:#fff}
.fieri-derat-level--three{border-color:#e4a3a3;background:#fffafa}
.fieri-derat-level__top{display:flex;margin-bottom:28px;justify-content:space-between;color:var(--green);font-size:13px;font-weight:800}
.fieri-derat-level__top b{color:#ccd2cd;font-family:"Hind",Arial,Helvetica,sans-serif;font-size:30px}
.fieri-derat-level--three .fieri-derat-level__top,.fieri-derat-level--three .fieri-derat-level__top b{color:var(--red)}
.fieri-derat-level h3{margin-bottom:18px;font-size:28px}
.fieri-derat-level h4{margin:28px 0 12px;font-size:18px}
.fieri-derat-level p,.fieri-derat-level li{font-size:15px}
.fieri-derat-levels__conclusion{display:grid;margin:40px 0 0 76px;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px;border-top:1px solid var(--line);padding-top:34px}
.fieri-derat-levels__conclusion h3{font-size:24px}

/* Approche */
.fieri-derat-brand-section{padding-block:90px;background:var(--green-soft)}
.fieri-derat-brand-section__intro{display:grid;grid-template-columns:.75fr 1.25fr;gap:30px 70px}
.fieri-derat-brand-section__intro>.fieri-derat-eyebrow{grid-column:1/-1}
.fieri-derat-brand-section__intro h2{margin:0;font-size:clamp(38px,4.6vw,56px)}
.fieri-derat-brand-section__intro h2 span{display:block;margin-top:16px;color:#4e6654;font-family:"Karla",Arial,Helvetica,sans-serif;font-size:19px;font-weight:600;letter-spacing:0;line-height:1.4}
.fieri-derat-brand-section__principles{display:grid;margin-top:54px;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.fieri-derat-principle{min-height:210px;border:1px solid #cfe0d2;border-radius:10px;padding:24px;background:rgba(255,255,255,.67)}
.fieri-derat-principle span{color:var(--green);font-size:13px;font-weight:800}
.fieri-derat-principle h3{margin:62px 0 0;font-size:22px}

/* Tarifs */
.fieri-derat-pricing__layout{display:grid;margin-left:76px;grid-template-columns:minmax(0,1.55fr) minmax(280px,.65fr);gap:40px;align-items:start}
.fieri-derat-pricing__content{display:grid;gap:18px}
.fieri-derat-pricing__block{display:grid;grid-template-columns:54px minmax(0,1fr);gap:20px;border:1px solid var(--line);border-radius:10px;padding:28px}
.fieri-derat-pricing__block>span{color:var(--green);font-size:13px;font-weight:800}
.fieri-derat-pricing__block h3{margin-bottom:18px;font-size:27px}
.fieri-derat-price-card{position:sticky;top:92px;border-radius:12px;padding:32px;color:#fff;background:var(--green-dark)}
.fieri-derat-price-card>span{color:#aed6b9;font-size:13px;font-weight:800;text-transform:uppercase}
.fieri-derat-price-card>strong{display:flex;margin-block:22px 18px;align-items:baseline;flex-wrap:wrap;gap:7px;color:#fff;font-family:"Hind",Arial,Helvetica,sans-serif;font-size:clamp(42px,5vw,64px);line-height:.95}
.fieri-derat-price-card>strong span{font-family:"Karla",Arial,Helvetica,sans-serif;font-size:15px;font-weight:600}
.fieri-derat-price-card>strong small{font-size:28px}
.fieri-derat-price-card p{color:#d7e6db;font-size:15px}
.fieri-derat-price-card a{display:inline-flex;min-height:46px;margin-top:10px;align-items:center;border-radius:999px;padding:10px 18px;color:var(--green-dark);background:#fff;font-size:14px;font-weight:800;text-decoration:none}

/* Suivi */
.fieri-derat-followup{background:var(--paper)}
.fieri-derat-followup__photo{position:relative;width:calc(100% - 76px);height:420px;margin:0 0 26px 76px;overflow:hidden;border-radius:12px}
.fieri-derat-followup__photo img{width:100%;height:100%;object-fit:cover;object-position:center 48%}
.fieri-derat-followup__grid{display:grid;margin-left:76px;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.fieri-derat-followup__card{border:1px solid var(--line);border-radius:12px;padding:32px;background:#fff}
.fieri-derat-followup__card--pro{border-top:4px solid var(--green)}
.fieri-derat-followup__label{display:flex;margin-bottom:34px;align-items:center;gap:10px;color:var(--green);font-size:13px;font-weight:800;text-transform:uppercase}
.fieri-derat-followup__label span{display:inline-flex;width:34px;height:26px;align-items:center;justify-content:center;border-radius:999px;background:var(--green-soft)}
.fieri-derat-followup__card h3{margin-bottom:22px;font-size:30px}

/* Appel final */
.fieri-derat-final{padding-block:90px;color:#fff;background:#191d1a}
.fieri-derat-final__grid{display:grid;grid-template-columns:1.45fr .55fr;gap:80px}
.fieri-derat-final h2{margin-bottom:24px;color:#fff;font-size:clamp(40px,5.5vw,66px)}
.fieri-derat-final__main>p:not(.fieri-derat-eyebrow){max-width:650px;color:#c8cec9;font-size:19px}
.fieri-derat-final .fieri-derat-actions{margin-top:30px}
.fieri-derat-final .fieri-derat-text-link{color:#fff}
.fieri-derat-final__links{display:flex;flex-direction:column;align-items:flex-start}
.fieri-derat-final__links>span{margin-bottom:16px;color:#7f8981;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.fieri-derat-final__links a{display:inline-flex;min-height:42px;align-items:center;color:#d7dcd8;font-size:15px;text-decoration:none}
.fieri-derat-final__links a:hover{color:#fff}

@media (max-width:1100px){
  .fieri-derat-header__inner{grid-template-columns:74px 1fr auto auto;gap:14px}
  .fieri-derat-mainnav__toggle{display:inline-flex;justify-self:end}
  .fieri-derat-mainnav{position:absolute;top:100%;right:24px;left:24px;display:none;align-items:stretch;flex-direction:column;gap:0;border:1px solid var(--line);padding:10px;background:#fff;box-shadow:0 18px 45px rgba(22,30,24,.14)}
  .fieri-derat-mainnav.is-open{display:flex}
  .fieri-derat-mainnav a{display:flex;min-height:48px;align-items:center;border-bottom:1px solid #edf0ed;padding-inline:14px}
  .fieri-derat-mainnav a:last-child{border-bottom:0}
  .fieri-derat-method__details,.fieri-derat-methods__duo,.fieri-derat-levels__grid{grid-template-columns:1fr}
  .fieri-derat-brand-section__principles{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:820px){
  #fieri-deratisation-page{font-size:16px}
  .fieri-derat-shell{width:min(calc(100% - 32px),700px)}
  .fieri-derat-topbar__inner span{display:none}
  .fieri-derat-header__inner{min-height:78px;grid-template-columns:56px 1fr auto}
  .fieri-derat-brand,.fieri-derat-brand img{width:54px;height:54px}
  .fieri-derat-appointment{display:none}
  .fieri-derat-mainnav__toggle{grid-column:3}
  .fieri-derat-hero{min-height:0}
  .fieri-derat-hero__content{padding-block:54px 46px}
  .fieri-derat-pagehead{padding-block:24px 20px}
  .fieri-derat-pagehead__title{font-size:clamp(25px,6.8vw,34px)}
  .fieri-derat-hero h1{font-size:clamp(39px,10vw,56px)}
  .fieri-derat-hero__bottom{grid-template-columns:1fr;gap:24px}
  .fieri-derat-index{position:relative}
  .fieri-derat-index__inner{min-height:0;padding-block:8px}
  .fieri-derat-index__toggle{display:flex;width:100%;min-height:48px;align-items:center;justify-content:space-between;border:0;padding:0;color:var(--ink);background:transparent;font-weight:800}
  .fieri-derat-index__list{display:none;height:auto;grid-template-columns:1fr 1fr}
  .fieri-derat-index__list.is-open{display:grid}
  .fieri-derat-index__list a{min-height:50px;justify-content:flex-start;border-top:1px solid #edf0ed;border-right:0;padding-inline:6px}
  .fieri-derat-index__list li:first-child a{border-left:0}
  .fieri-derat-section{padding-block:76px}
  .fieri-derat-section-head{grid-template-columns:1fr;gap:15px}
  .fieri-derat-section-head h2{font-size:clamp(35px,7.4vw,48px)}
  .fieri-derat-intro,.fieri-derat-methods__intro,.fieri-derat-pricing__intro,.fieri-derat-followup__intro,.fieri-derat-context-image,.fieri-derat-process__grid,.fieri-derat-benefits,.fieri-derat-levels__intro,.fieri-derat-levels__scale,.fieri-derat-levels__grid,.fieri-derat-levels__conclusion,.fieri-derat-pricing__layout,.fieri-derat-followup__photo,.fieri-derat-followup__grid{width:100%;margin-left:0}
  .fieri-derat-context-image--process,.fieri-derat-followup__photo{height:360px}
  .fieri-derat-process__grid,.fieri-derat-benefits,.fieri-derat-method__lead,.fieri-derat-method__split-grid,.fieri-derat-expertise__grid,.fieri-derat-levels__intro,.fieri-derat-levels__conclusion,.fieri-derat-brand-section__intro,.fieri-derat-pricing__layout,.fieri-derat-followup__grid,.fieri-derat-final__grid{grid-template-columns:1fr}
  .fieri-derat-process__grid{grid-template-rows:auto;gap:16px;border:0;overflow:visible}
  .fieri-derat-process__step:first-child{grid-column:auto;grid-row:auto}
  .fieri-derat-process__step,.fieri-derat-process__step:last-child{border:1px solid var(--line)}
  .fieri-derat-process__step:nth-child(3){grid-column:auto;border-color:var(--line)}
  .fieri-derat-note,.fieri-derat-benefits__title{grid-template-columns:1fr;gap:16px}
  .fieri-derat-benefits{gap:30px}
  .fieri-derat-benefits__list{grid-template-columns:1fr}
  .fieri-derat-contact-band,.fieri-derat-callback{grid-template-columns:1fr;gap:20px}
  .fieri-derat-contact-band__actions{flex-wrap:wrap}
  .fieri-derat-method__head{grid-template-columns:1fr;gap:14px}
  .fieri-derat-method__columns{grid-template-columns:1fr}
  body .fieri-derat-expertise>.fieri-derat-expertise__grid{grid-template-columns:1fr}
  body .fieri-derat-expertise__photo{min-height:360px}
  .fieri-derat-expertise__badge{grid-column:auto}
  .fieri-derat-brand-section__intro>.fieri-derat-eyebrow{grid-column:auto}
  .fieri-derat-price-card{position:static}
}

@media (max-width:540px){
  .fieri-derat-shell{width:calc(100% - 24px)}
  .fieri-derat-mainnav{right:12px;left:12px}
  .fieri-derat-mainnav__toggle>span:first-child{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .fieri-derat-hero h1{font-size:clamp(36px,12vw,48px)}
  .fieri-derat-hero h1 span{font-size:.62em}
  .fieri-derat-actions,.fieri-derat-actions .fieri-derat-button{width:100%}
  .fieri-derat-hero__facts{gap:12px 20px}
  .fieri-derat-index__list{grid-template-columns:1fr}
  .fieri-derat-section{padding-block:62px}
  .fieri-derat-section-head h2{font-size:34px}
  .fieri-derat-intro,.fieri-derat-methods__intro,.fieri-derat-pricing__intro,.fieri-derat-followup__intro{margin-bottom:34px;font-size:18px}
  .fieri-derat-context-image--process,.fieri-derat-followup__photo{height:310px}
  .fieri-derat-process__step,.fieri-derat-method,.fieri-derat-level,.fieri-derat-followup__card,.fieri-derat-price-card{padding:22px}
  .fieri-derat-process__step:first-child ul{grid-template-columns:1fr}
  .fieri-derat-process__step:first-child li:last-child{grid-column:auto}
  .fieri-derat-contact-band,.fieri-derat-callback{padding:24px}
  body .fieri-derat-expertise>.fieri-derat-expertise__grid{width:calc(100% - 24px)!important}
  body .fieri-derat-expertise__copy{padding:24px}
  body .fieri-derat-expertise__badge{width:100%;justify-content:flex-start;padding:14px 18px}
  .fieri-derat-contact-band__actions{align-items:stretch;flex-direction:column}
  .fieri-derat-contact-band__actions>a{width:100%}
  .fieri-derat-cycle{grid-template-columns:1fr}
  .fieri-derat-cycle span{min-height:72px;border-right:0;border-bottom:1px solid #b8d5c0}
  .fieri-derat-cycle span:last-child{border-bottom:0}
  .fieri-derat-conclusion,.fieri-derat-pricing__block{grid-template-columns:1fr;gap:10px}
  .fieri-derat-brand-section{padding-block:66px}
  .fieri-derat-brand-section__principles{grid-template-columns:1fr}
  .fieri-derat-principle{min-height:150px}
  .fieri-derat-principle h3{margin-top:36px}
  .fieri-derat-final{padding-block:66px}
  .fieri-derat-final__grid{gap:50px}
}

@media (prefers-reduced-motion:reduce){#fieri-deratisation-page *,#fieri-deratisation-page *::before,#fieri-deratisation-page *::after{scroll-behavior:auto!important;transition-duration:.01ms!important}}

/* Compatibilité Elementor : les sections fonctionnent même dans des widgets HTML séparés. */
:where(
  .fieri-derat-pagehead,
  .fieri-derat-hero,
  .fieri-derat-index,
  .fieri-derat-section,
  .fieri-derat-brand-section,
  .fieri-derat-final
) {
  position: relative;
  width: 100vw;
  width: 100dvw;
  max-width: none !important;
  margin-right: calc(50% - 50vw);
  margin-right: calc(50% - 50dvw);
  margin-left: calc(50% - 50vw);
  margin-left: calc(50% - 50dvw);
  box-sizing: border-box;
  font-family: "Karla", Arial, Helvetica, sans-serif;
  line-height: 1.68;
}

:where(
  .fieri-derat-pagehead,
  .fieri-derat-hero,
  .fieri-derat-index,
  .fieri-derat-section,
  .fieri-derat-brand-section,
  .fieri-derat-final
) *,
:where(
  .fieri-derat-pagehead,
  .fieri-derat-hero,
  .fieri-derat-index,
  .fieri-derat-section,
  .fieri-derat-brand-section,
  .fieri-derat-final
) *::before,
:where(
  .fieri-derat-pagehead,
  .fieri-derat-hero,
  .fieri-derat-index,
  .fieri-derat-section,
  .fieri-derat-brand-section,
  .fieri-derat-final
) *::after {
  box-sizing: border-box;
}

:where(
  .fieri-derat-pagehead,
  .fieri-derat-hero,
  .fieri-derat-section,
  .fieri-derat-brand-section,
  .fieri-derat-final
) img {
  display: block;
  max-width: 100%;
}

:where(
  .fieri-derat-pagehead,
  .fieri-derat-hero,
  .fieri-derat-section,
  .fieri-derat-brand-section,
  .fieri-derat-final
) h1,
:where(
  .fieri-derat-pagehead,
  .fieri-derat-hero,
  .fieri-derat-section,
  .fieri-derat-brand-section,
  .fieri-derat-final
) h3,
:where(
  .fieri-derat-pagehead,
  .fieri-derat-hero,
  .fieri-derat-section,
  .fieri-derat-brand-section,
  .fieri-derat-final
) h4 {
  font-family: "Hind", Arial, Helvetica, sans-serif;
  font-weight: 600;
  letter-spacing: -0.025em;
  line-height: 1.12;
}

:where(
  .fieri-derat-section,
  .fieri-derat-brand-section,
  .fieri-derat-final
) h2 {
  font-family: "Poppins", "Hind", Arial, Helvetica, sans-serif;
  font-weight: 600;
}

.fieri-derat-context-image--process {
  height: 430px !important;
  max-height: 430px !important;
  overflow: hidden !important;
}

.fieri-derat-context-image--process > img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center 22% !important;
}

@media (max-width: 820px) {
  .fieri-derat-context-image--process {
    height: 360px !important;
    max-height: 360px !important;
  }
}

@media (max-width: 540px) {
  .fieri-derat-context-image--process {
    height: 310px !important;
    max-height: 310px !important;
  }
}

.footer-sidebar {
	padding-block: 0px!important;
}




.cf7-recru { display: flex; flex-direction: column; gap: 20px; }

.cf7-row--2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

.cf7-field { display: flex; flex-direction: column; gap: 6px; }

.cf7-label {
  font-family: 'Poppins', sans-serif;
  font-size: 0.902rem; font-weight: 700;
  color: #1a1a1a; letter-spacing: .02em;
}
.cf7-req { color: #056823; }
.cf7-muted { font-weight: 500; color: #888; font-size: 0.858rem; }

.cf7-recru .wpcf7-form-control:not([type="submit"]),
.cf7-recru .wpcf7-text,
.cf7-recru .wpcf7-email,
.cf7-recru .wpcf7-tel,
.cf7-recru .wpcf7-textarea,
.cf7-recru .wpcf7-select {
  width: 100%;
  padding: 12px 16px;
  border: 1.5px solid #e0e0e0;
  border-radius: 8px;
  font-family: 'Inter', sans-serif;
  font-size: 1.012rem;
  color: #1a1a1a;
  background: #fafafa;
  transition: border-color .2s, box-shadow .2s;
  outline: none;
  box-sizing: border-box;
}
.cf7-recru .wpcf7-form-control:focus:not([type="submit"]) {
  border-color: #056823;
  background: #fff;
  box-shadow: 0 0 0 3px rgba(5,104,35,.1);
}

.cf7-recru .wpcf7-textarea {
  min-height: 130px;
  resize: vertical;
}

.cf7-recru .wpcf7-select {
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23666' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 14px center;
  padding-right: 40px;
  cursor: pointer;
}

.cf7-submit { margin-top: 8px; }
.cf7-recru .wpcf7-submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 14px 28px;
  background: #056823;
  color: #fff;
  font-family: 'Poppins', sans-serif;
  font-size: 1.012rem;
  font-weight: 700;
  border: none;
  border-radius: 8px;
  cursor: pointer;
  transition: background .2s, transform .15s;
  letter-spacing: .02em;
}
.cf7-recru .wpcf7-submit:hover {
  background: #07922f;
  transform: translateY(-1px);
}

.cf7-recru .wpcf7-not-valid-tip {
  font-size: 0.836rem; color: #cc1414;
  margin-top: 4px; display: block;
}
.cf7-recru .wpcf7-not-valid {
  border-color: #cc1414 !important;
  background: #fff5f5 !important;
}
.cf7-recru .wpcf7-response-output {
  margin-top: 16px; padding: 14px 18px;
  border-radius: 8px; font-size: 0.968rem; font-weight: 600;
  border: none !important;
}
.cf7-recru .wpcf7-mail-sent-ok {
  background: #eef7f1; color: #056823;
}
.cf7-recru .wpcf7-mail-sent-ng,
.cf7-recru .wpcf7-aborted {
  background: #fff0f0; color: #cc1414;
}

@media (max-width: 600px) {
  .cf7-row--2 { grid-template-columns: 1fr; }
}


.info-box-content {
    padding-top: calc(var(--ib-icon-sp) + 15px);
    height: 250px;
}



.footer-container{
	z-index:1000;
	position: relative;
}
.footer-sidebar {
    padding-block: 0px 10px;
}

.wd-post-author.wd-meta-author{
	display:none !important;
}


.wpcf7 .hidden-fields-container {
    display: none !important;
}

.color_dept{
	color:#056823 !important;
}
#media_image-5{
	text-align:center;
}


#media_image-5 img{
	max-width: 40% !important;
	
}

/**
 * ========================================
 * FIERI NUISIBLE - STYLES BLOG
 * ========================================
 * 
 * Feuille de style globale pour les articles de blog
 * Entreprise : Fieri Nuisible
 * Secteur : Désinsectisation & Dératisation
 * Zones : Occitanie & PACA
 * 
 * Couleurs de la marque :
 * - Vert Fieri : #056823
 * - Rouge Fieri : #CC1414
 * - Gris clair : #F9F9F9
 * - Gris moyen : #666666
 * 
 * À copier/coller dans :
 * WordPress > Apparence > Personnaliser > CSS Additionnel
 * 
 * Dernière mise à jour : 28 janvier 2026
 * ========================================
 */


/* ========================================
   1. BOXES / ENCADRÉS
   ======================================== */


/* Tableau comparatif 2 espèces */
.fieri-especes-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin: 20px 0;
}
@media (max-width: 640px) {
    .fieri-especes-grid { grid-template-columns: 1fr; }
}
.fieri-espece-card {
    background: #f9f9f9;
    border-top: 4px solid #056823;
    border-radius: 5px;
    padding: 20px;
}
.fieri-espece-card h3 {
    color: #056823;
    margin-top: 0;
    font-size: 1.1rem;
}
.fieri-espece-card ul {
    margin: 0;
    padding-left: 18px;
}
.fieri-espece-card ul li {
    font-size: 0.99rem;
    margin-bottom: 5px;
}

/* Timeline cycle de vie */
.fieri-timeline {
    border-left: 3px solid #056823;
    padding-left: 24px;
    margin: 20px 0;
}
.fieri-timeline-item {
    position: relative;
    margin-bottom: 20px;
}
.fieri-timeline-item::before {
    content: '';
    position: absolute;
    left: -30px;
    top: 4px;
    width: 11px;
    height: 11px;
    border-radius: 50%;
    background: #056823;
}
.fieri-timeline-mois {
    font-size: 0.858rem;
    font-weight: 700;
    color: #056823;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    margin-bottom: 3px;
}

/* Grille méthodes de traitement */
.fieri-methodes-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin: 20px 0;
}
@media (max-width: 640px) {
    .fieri-methodes-grid { grid-template-columns: 1fr; }
}
.fieri-methode-drone {
    background: #e8f5e9;
    border: 2px solid #056823;
    border-radius: 5px;
    padding: 20px;
}
.fieri-methode-pulv {
    background: #f9f9f9;
    border: 2px solid #aacfb0;
    border-radius: 5px;
    padding: 20px;
}
.fieri-methode-drone h3,
.fieri-methode-pulv h3 {
    color: #056823;
    margin-top: 0;
    font-size: 1.1rem;
}
.fieri-methode-tag {
    display: inline-block;
    background: #056823;
    color: #fff;
    font-size: 0.792rem;
    font-weight: 700;
    padding: 2px 10px;
    border-radius: 20px;
    margin-bottom: 10px;
    letter-spacing: 0.04em;
}

/* Icônes Font Awesome */
.fieri-espece-card h3 i,
.fieri-methode-drone h3 i,
.fieri-methode-pulv h3 i {
    margin-right: 8px;
}
.fieri-list-fa {
    list-style: none;
    padding-left: 0;
    margin: 15px 0;
}
.fieri-list-fa li {
    padding: 6px 0 6px 30px;
    position: relative;
    margin-bottom: 4px;
}
.fieri-list-fa li i {
    position: absolute;
    left: 0;
    top: 9px;
    width: 20px;
    text-align: center;
}
.fieri-box-icon {
    display: flex;
    gap: 14px;
    align-items: flex-start;
}
.fieri-box-icon i {
    flex-shrink: 0;
    font-size: 1.43rem;
    margin-top: 2px;
}
.fieri-cta-card i {
    font-size: 2.42rem;
    display: block;
    margin-bottom: 12px;
    color: #fff;
}

/* Images article */
.fieri-img-article {
    width: 100%;
    height: auto;
    border-radius: 5px;
    display: block;
    margin: 0 auto;
}
.fieri-img-caption {
    font-size: 0.88rem;
    color: #999;
    text-align: center;
    margin-top: 6px;
}

/* Box introduction grise avec bordure verte */
.fieri-intro-box {
    background-color: #f9f9f9;
    padding: 25px;
    border-left: 4px solid #056823;
    margin: 30px 0;
}

.fieri-intro-box p {
    margin: 0;
}

/* Box alerte jaune avec bordure rouge */
.fieri-alert-box {
    background-color: #fff3cd;
    border-left: 4px solid #CC1414;
    padding: 20px;
    margin: 30px 0;
}

.fieri-alert-box p {
    margin: 0;
}

/* Box citation légale verte claire */
.fieri-legal-box {
    background-color: #e8f5e9;
    padding: 20px;
    border-left: 4px solid #056823;
    margin: 25px 0;
}

.fieri-legal-box p:first-child {
    margin: 0;
    font-style: italic;
}

.fieri-legal-box p:nth-child(2) {
    margin: 10px 0 0 0;
}

.fieri-legal-box p:last-child {
    margin: 10px 0 0 0;
    font-size: 14.3px;
}

/* Box info bleue claire */
.fieri-info-box {
    background-color: #e3f2fd;
    padding: 20px;
    border-left: 4px solid #056823;
    margin: 25px 0;
}

.fieri-info-box p {
    margin: 0;
}

/* Box info verte (alternative) */
.fieri-info-box-green {
    background-color: #e8f5e9;
    padding: 20px;
    border-left: 4px solid #056823;
    margin: 25px 0;
}

.fieri-info-box-green p {
    margin: 0;
}

/* Box warning jaune */
.fieri-warning-box {
    background-color: #fff3cd;
    border-left: 4px solid #CC1414;
    padding: 20px;
    margin: 25px 0;
}

.fieri-warning-box p {
    margin: 0;
}

/* Box conseil/tip bleue */
.fieri-tip-box {
    background-color: #e3f2fd;
    padding: 20px;
    border-left: 4px solid #056823;
    margin: 25px 0;
}

.fieri-tip-box p {
    margin: 0;
}

/* Box cas pratique grise arrondie */
.fieri-case-study {
    background-color: #f9f9f9;
    padding: 20px;
    margin: 25px 0;
    border-radius: 5px;
}

.fieri-case-study h4 {
    color: #056823;
    margin-top: 0;
}

/* Box modèle de lettre grise */
.fieri-model-letter {
    background-color: #f9f9f9;
    padding: 20px;
    margin: 25px 0;
    border: 1px solid #ddd;
}

.fieri-model-letter h4 {
    margin-top: 0;
}

.fieri-model-letter p {
    font-style: italic;
    font-size: 15.4px;
}

/* Box modèle de lettre jaune (mise en demeure) */
.fieri-model-letter-warning {
    background-color: #fff3cd;
    padding: 20px;
    margin: 25px 0;
    border: 1px solid #ddd;
}

.fieri-model-letter-warning h4 {
    margin-top: 0;
}

.fieri-model-letter-warning p {
    font-style: italic;
    font-size: 15.4px;
}


/* ========================================
   2. TABLEAUX
   ======================================== */

/* Tableau standard Fieri */
.fieri-table {
    width: 100%;
    border-collapse: collapse;
    margin: 25px 0;
}

.fieri-table thead tr {
    background-color: #056823;
    color: white;
}

.fieri-table th {
    padding: 12px;
    text-align: left;
    border: 1px solid #ddd;
}

.fieri-table tbody tr:nth-child(odd) {
    background-color: #f9f9f9;
}

.fieri-table tbody tr:nth-child(even) {
    background-color: white;
}

.fieri-table td {
    padding: 12px;
    border: 1px solid #ddd;
}

.fieri-table td strong {
    font-weight: bold;
}

/* Centrer certaines cellules */
.fieri-table .center {
    text-align: center;
}

/* Couleur verte pour les textes "PROPRIÉTAIRE" */
.fieri-table .text-green {
    color: #056823;
}

/* Couleur rouge pour les textes "LOCATAIRE" */
.fieri-table .text-red {
    color: #CC1414;
}

/* Tableau 2 colonnes */
.fieri-table-2col {
    width: 100%;
    border-collapse: collapse;
    margin: 25px 0;
}

.fieri-table-2col thead tr {
    background-color: #056823;
    color: white;
}

.fieri-table-2col th {
    padding: 12px;
    text-align: left;
    border: 1px solid #ddd;
}

.fieri-table-2col tbody tr:nth-child(odd) {
    background-color: #f9f9f9;
}

.fieri-table-2col td {
    padding: 12px;
    border: 1px solid #ddd;
}


/* ========================================
   3. TEXTES SPÉCIAUX
   ======================================== */

/* Date de mise à jour */
.fieri-meta-date {
    font-size: 14.3px;
    color: #666;
    font-style: italic;
    margin: 20px 0;
}

/* Sources juridiques en bas d'article */
.fieri-source-text {
    font-size: 13.2px;
    color: #666;
    margin: 30px 0 0 0;
    font-style: italic;
}


/* ========================================
   4. FAQ
   ======================================== */

.fieri-faq-section {
    margin: 30px 0;
}

.fieri-faq-item {
    background-color: #f9f9f9;
    padding: 20px;
    margin-bottom: 15px;
    border-radius: 5px;
}

.fieri-faq-item h3 {
    margin-top: 0;
    color: #056823;
}

.fieri-faq-item p {
    margin-bottom: 0;
}


/* ========================================
   5. IMAGES
   ======================================== */

.fieri-image-article {
    margin: 30px 0;
}


/* ========================================
   6. CTA FINAL & BOUTONS - VERSION REDESIGNÉE
   ======================================== */

/* Box CTA finale avec dégradé vert - VERSION MODERNE */
.fieri-cta-final {
    background: linear-gradient(135deg, #056823 0%, #078b2e 100%);
    color: white;
    padding: 50px 40px;
    margin: 40px 0;
    border-radius: 12px;
    text-align: center;
    box-shadow: 0 10px 30px rgba(5, 104, 35, 0.3);
}

.fieri-cta-final h3 {
    color: white;
    margin-top: 0;
    margin-bottom: 40px;
    font-size: 30.8px;
    font-weight: bold;
}

.fieri-cta-final p {
    margin: 20px 0;
    font-size: 17.6px;
    opacity: 0.95;
    line-height: 1.6;
}

.fieri-cta-final a {
    color: white;
}

/* Grille services 2x2 */
.fieri-cta-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 25px;
    max-width: 800px;
    margin: 0 auto 40px;
}

.fieri-cta-card {
    background: rgba(255, 255, 255, 0.1);
    border: 2px solid rgba(255, 255, 255, 0.2);
    border-radius: 10px;
    padding: 30px 20px;
    transition: all 0.3s ease;
    backdrop-filter: blur(10px);
}

.fieri-cta-card:hover {
    background: rgba(255, 255, 255, 0.15);
    border-color: rgba(255, 255, 255, 0.4);
    transform: translateY(-5px);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.2);
}

.fieri-cta-card .emoji {
    font-size: 46.2px;
    margin-bottom: 15px;
    display: block;
}

.fieri-cta-card strong {
    display: block;
    font-size: 19.8px;
    margin-bottom: 8px;
    font-weight: bold;
}

.fieri-cta-card span {
    font-size: 15.4px;
    opacity: 0.9;
    display: block;
}

/* Bouton CTA rouge */
.fieri-cta-button {
    display: inline-block;
    background-color: #CC1414;
    color: white !important; /* Force la couleur blanche */
    padding: 18px 50px;
    text-decoration: none !important; /* SUPPRIME LE SOULIGNEMENT */
    font-weight: bold;
    border-radius: 8px;
    font-size: 19.8px;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(204, 20, 20, 0.4);
    margin: 10px 0;
    border: none; /* Évite les bordures de liens par défaut */
}

.fieri-cta-button:hover {
    background-color: #b01010;
    color: white !important;
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(204, 20, 20, 0.5);
    text-decoration: none !important; /* SUPPRIME LE SOULIGNEMENT AU SURVOL */
}

/* Ancienne règle à modifier */
.fieri-cta-contact a {
    font-weight: bold;
    text-decoration: underline; /* Cela causait le problème */
}

/* REMPLACE PAR CECI : */
.fieri-cta-contact a:not(.fieri-cta-button) {
    font-weight: bold;
    text-decoration: underline;
}

/* Responsive mobile */
@media screen and (max-width: 768px) {
    .fieri-cta-final {
        padding: 35px 20px;
    }
    
    .fieri-cta-final h3 {
        font-size: 24.2px;
        margin-bottom: 30px;
    }
    
    .fieri-cta-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }
    
    .fieri-cta-card {
        padding: 25px 15px;
    }
    
    .fieri-cta-button {
        display: block;
        width: 100%;
        padding: 15px 20px;
        font-size: 17.6px;
        text-align: center;
    }
}


/* ========================================
   7. LISTES À PUCES PERSONNALISÉES
   ======================================== */

/* Liste standard avec espacement */
.fieri-list-standard {
    margin: 15px 0;
    padding-left: 20px;
}

.fieri-list-standard li {
    margin-bottom: 8px;
}


/* ========================================
   8. RESPONSIVITÉ MOBILE
   ======================================== */

@media screen and (max-width: 768px) {
    
    /* Boxes plus compactes sur mobile */
    .fieri-intro-box,
    .fieri-alert-box,
    .fieri-legal-box,
    .fieri-info-box,
    .fieri-warning-box,
    .fieri-tip-box,
    .fieri-case-study {
        padding: 15px;
        margin: 20px 0;
    }
    
    /* Tableaux scrollables sur mobile */
    .fieri-table,
    .fieri-table-2col {
        display: block;
        overflow-x: auto;
        white-space: nowrap;
    }
    
    /* Réduire les paddings des tableaux */
    .fieri-table th,
    .fieri-table td,
    .fieri-table-2col th,
    .fieri-table-2col td {
        padding: 8px;
        font-size: 15.4px;
    }
    
    /* CTA final plus compact */
    .fieri-cta-final {
        padding: 25px 15px;
    }
    
    .fieri-cta-final h3 {
        font-size: 22px;
    }
    
    /* Bouton CTA pleine largeur sur mobile */
    .fieri-cta-button {
        display: block;
        width: 100%;
        padding: 12px 20px;
        font-size: 17.6px;
        text-align: center;
    }
    
    /* Tableau services en 1 colonne sur mobile */
    .fieri-cta-services td {
        display: block;
        width: 100%;
        padding: 10px;
    }
}


/* ========================================
   9. ACCESSIBILITÉ
   ======================================== */

/* Focus visible pour navigation clavier */
.fieri-cta-button:focus {
    outline: 3px solid #056823;
    outline-offset: 2px;
}

/* Améliorer le contraste des liens */
.fieri-legal-box a,
.fieri-info-box a,
.fieri-zone-box a {
    color: #056823;
    text-decoration: underline;
}

.fieri-legal-box a:hover,
.fieri-info-box a:hover,
.fieri-zone-box a:hover {
    color: #CC1414;
}


/* ========================================
   FIN DES STYLES FIERI NUISIBLE BLOG
   ======================================== */

/* ========================================
   FORMULAIRE COMPACT - FRELONS/GUÊPES
   ======================================== */

.form-compact {
  max-width: 100%;
  margin: 0;
  padding: 0;
  background: transparent;
  box-shadow: none;
}

.wpcf7-form-control-wrap {
  width: 100%;
  display: block;
}

.form-input,
.form-textarea,
.wpcf7-select {
  width: 100% !important;
  padding: 14px 18px;
  border: 2px solid #ddd;
  border-radius: 6px;
  font-size: 16.5px;
  font-family: inherit;
  transition: all 0.3s;
  box-sizing: border-box;
}

.form-input:focus,
.form-textarea:focus,
.wpcf7-select:focus {
  border-color: #CC1414;
  outline: none;
  box-shadow: 0 0 0 4px rgba(204, 20, 20, 0.1);
}

.form-textarea {
  min-height: 100px;
  resize: vertical;
  margin-bottom: 15px;
  width: 100% !important;
}

/* Fix checkbox inline */
.wpcf7-list-item.inline-accept {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 0 0 20px 0 !important;
}

.wpcf7-list-item.inline-accept input[type="checkbox"] {
  margin: 0 !important;
  width: 18px;
  height: 18px;
}

.wpcf7-list-item-label {
  font-size: 15.4px;
  color: #666;
  margin: 0 !important;
}

/* Bouton CTA */
.btn-cta,
.wpcf7-submit.btn-cta {
  width: 100%;
  background: #CC1414 !important;
  background-color: #CC1414 !important;
  color: white !important;
  padding: 18px 30px;
  border: none;
  border-radius: 6px;
  font-size: 18.7px;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.3s;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  box-shadow: 0 4px 15px rgba(204, 20, 20, 0.3);
}

.btn-cta:hover,
.wpcf7-submit.btn-cta:hover {
  background: #a31010 !important;
  background-color: #a31010 !important;
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(204, 20, 20, 0.4);
}

.btn-cta:active {
  transform: translateY(0);
}

/* Messages de validation */
.wpcf7-not-valid-tip {
  color: #CC1414;
  font-size: 13.2px;
  margin-top: 5px;
  font-weight: 500;
}

.wpcf7-validation-errors,
.wpcf7-mail-sent-ok {
  border-radius: 6px;
  padding: 15px;
  margin-top: 15px;
  font-weight: 500;
}

.wpcf7-validation-errors {
  background: #fff3cd;
  border: 2px solid #ffc107;
  color: #856404;
}

.wpcf7-mail-sent-ok {
  background: #d4edda;
  border: 2px solid #28a745;
  color: #155724;
}

/* Mobile responsive */
@media (max-width: 768px) {
  .btn-cta {
    font-size: 16.5px;
    padding: 16px 24px;
  }
}

/* ========================================
   VARIANTE FOND SOMBRE - TEXTE BLANC
   ======================================== */
.form-dark .form-input,
.form-dark .form-textarea,
.form-dark .wpcf7-select {
  color: #ffffff !important;
  border-color: rgba(255, 255, 255, 0.6) !important;
  background: rgba(255, 255, 255, 0.1) !important;
}

.form-dark .form-input::placeholder,
.form-dark .form-textarea::placeholder {
  color: rgba(255, 255, 255, 0.7) !important;
}

.form-dark .wpcf7-select option {
  color: #333333 !important;
  background: #ffffff !important;
}

.form-dark p {
  color: rgba(255, 255, 255, 0.85) !important;
}

.form-dark p a {
  color: #ffffff !important;
}

/* ========================================
   FIN FORMULAIRE COMPACT
   ======================================== */

/*
╔══════════════════════════════════════════════════════════════════╗
║  FIERI NUISIBLE — CSS PERSONNALISÉ ELEMENTOR                    ║
║  À coller dans : Elementor > Paramètres > CSS personnalisé      ║
║  OU : Apparence > Personnaliser > CSS additionnel               ║
╚══════════════════════════════════════════════════════════════════╝

  SECTIONS :
  1.  RESET & VARIABLES
  2.  BASE (body, liens, wrap)
  3.  COMPOSANTS GLOBAUX (label, titres, boutons, reveal)
  4.  TOPBAR
  5.  NAV (desktop)
  6.  NAV BURGER (mobile)
  7.  HERO
  8.  STATS BAR
  9.  ABOUT
  10. ALLIANCE (Pourquoi Fieri Nuisible)
  11. PROCESS
  12. SECTEURS PROFESSIONNELS
  13. LOCAL SEO
  14. SERVICES GRID (spc)
  15. TÉMOIGNAGES
  16. BLOG PREVIEW
  17. RECRUTEMENT
  18. FAQ
  19. CTA FINAL
  20. FOOTER
  21. RESPONSIVE (1024px, 768px, 480px)
*/


/* ══════════════════════════════════════════════════════════════
   1. RESET & VARIABLES
══════════════════════════════════════════════════════════════ */
:root {
  --green:    #056823;
  --green-lt: #07922f;
  --green-bg: #eef7f1;
  --green-dk: #034418;
  --red:      #CC1414;
  --orange:   #ff9900;
  --navy:     #1f1f1f;
  --white:    #ffffff;
  --cream:    #ffffff;
  --sand:     #f9f9f9;
  --sand-2:   #f1f1f1;
  --sand-3:   #dddddd;
  --off:      #f9f9f9;
  --text:     #1a1a1a;
  --muted:    #666666;
  --border:   #dddddd;
  --gold:     #f59e0b;
  --title:    'Poppins', sans-serif;
  --body:     'Hind', sans-serif;
  --ease:     cubic-bezier(.25,.46,.45,.94);
  --max:      1180px;
  --r:        10px;
}


/* ══════════════════════════════════════════════════════════════
   2. BASE
══════════════════════════════════════════════════════════════ */
html { scroll-behavior: smooth; }
img  { display: block; max-width: 100%; }
a    { text-decoration: none; color: inherit; }
.wrap { max-width: var(--max); margin: 0 auto; padding: 0 28px; }


/* ══════════════════════════════════════════════════════════════
   3. COMPOSANTS GLOBAUX
══════════════════════════════════════════════════════════════ */
.label {
  display: inline-flex; align-items: center; gap: 6px;
  background: var(--green-bg); color: var(--green);
  font-family: var(--title); font-size: 0.792rem; font-weight: 700;
  letter-spacing: .14em; text-transform: uppercase;
  padding: 5px 12px; border-radius: 20px; margin-bottom: 14px;
}
.label--white { background: rgba(255,255,255,.12); color: #ffffff; border: 1px solid rgba(255,255,255,.14); }

.h2 { font-family: var(--title); font-size: clamp(1.87rem, 3.85vw, 2.75rem); font-weight: 800; line-height: 1.15; letter-spacing: -0.01em; color: var(--text); margin-bottom: 14px; }
.h2--white { color: #ffffff; }
.sub { font-size: 1.155rem; color: var(--muted); max-width: 580px; line-height: 1.75; }
.sub--white { color: rgba(255,255,255,.82); }

.reveal { opacity: 0; transform: translateY(24px); transition: opacity .65s var(--ease), transform .65s var(--ease); }
.reveal.in { opacity: 1; transform: none; }
.reveal-left  { opacity: 0; transform: translateX(-36px); transition: opacity .7s var(--ease), transform .7s var(--ease); }
.reveal-left.in  { opacity: 1; transform: none; }
.reveal-right { opacity: 0; transform: translateX(36px);  transition: opacity .7s var(--ease), transform .7s var(--ease); }
.reveal-right.in { opacity: 1; transform: none; }
.reveal-scale { opacity: 0; transform: scale(.88);         transition: opacity .65s var(--ease), transform .65s var(--ease); }
.reveal-scale.in { opacity: 1; transform: none; }

/* Stagger delay — grilles */
.alliance__grid .alliance__card:nth-child(1) { transition-delay: 0ms; }
.alliance__grid .alliance__card:nth-child(2) { transition-delay: 90ms; }
.alliance__grid .alliance__card:nth-child(3) { transition-delay: 180ms; }
.alliance__grid .alliance__card:nth-child(4) { transition-delay: 270ms; }
.secteurs__grid .secteurs__item:nth-child(1) { transition-delay: 0ms; }
.secteurs__grid .secteurs__item:nth-child(2) { transition-delay: 80ms; }
.secteurs__grid .secteurs__item:nth-child(3) { transition-delay: 160ms; }
.secteurs__grid .secteurs__item:nth-child(4) { transition-delay: 240ms; }
.secteurs__grid .secteurs__item:nth-child(5) { transition-delay: 320ms; }
.secteurs__grid .secteurs__item:nth-child(6) { transition-delay: 400ms; }
.blog-prev__grid .blog-card:nth-child(1) { transition-delay: 0ms; }
.blog-prev__grid .blog-card:nth-child(2) { transition-delay: 100ms; }
.blog-prev__grid .blog-card:nth-child(3) { transition-delay: 200ms; }

/* Boutons */
.btn {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: var(--title); font-size: 0.968rem; font-weight: 700;
  padding: 13px 26px; border-radius: 6px; border: 2px solid transparent;
  cursor: pointer; transition: all .22s var(--ease); white-space: nowrap;
}
.btn-green  { background: var(--green); color: #fff; }
.btn-green:hover { background: var(--green-lt); }
.btn-outline { border-color: var(--green); color: var(--green); }
.btn-outline:hover { background: var(--green); color: #fff; }
.btn-ghost  { border-color: var(--border); color: var(--text); background: rgba(255,255,255,.6); }
.btn-ghost:hover { border-color: var(--green); background: #fff; color: var(--green); }
.btn-white  { background: #fff; color: var(--green); box-shadow: 0 12px 28px rgba(0,0,0,.08); }
.btn-white:hover { background: #f9f9f9; }
.btn-outline-white { border-color: var(--border); color: var(--text); background: transparent; }
.btn-outline-white:hover { border-color: var(--green); color: var(--green); background: rgba(255,255,255,.7); }

@keyframes pulse { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:.4;transform:scale(.6)} }


/* ══════════════════════════════════════════════════════════════
   4. TOPBAR
══════════════════════════════════════════════════════════════ */
.topbar {
  background: var(--green); color: #ffffff;
  font-size: 0.902rem; padding: 0 28px;
  display: flex; align-items: center; justify-content: flex-end;
  height: 48px; position: relative; border-bottom: 1px solid rgba(255,255,255,.12);
}
.topbar > span {
  position: absolute; left: 0; right: 0;
  text-align: center; pointer-events: none;
}
.topbar > span a { pointer-events: auto; }
.topbar a { color: var(--orange); font-weight: 700; }
.topbar__recruit {
  display: inline-flex; align-items: center; gap: 7px;
  background: var(--red); color: #ffffff !important;
  font-size: 0.792rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase;
  padding: 5px 13px; border-radius: 4px;
  transition: background .2s;
  white-space: nowrap;
}
.topbar__recruit:hover { background: #b01010; }
.topbar__recruit-dot {
  width: 6px; height: 6px; border-radius: 50%; background: #fff;
  display: inline-block; animation: pulse 1.6s ease-in-out infinite; flex-shrink: 0;
}


/* ══════════════════════════════════════════════════════════════
   5. NAV (desktop)
══════════════════════════════════════════════════════════════ */
.nav {
  background: rgba(255,255,255,.94);
  border-bottom: 1px solid var(--border);
  position: sticky; top: 0; z-index: 100; backdrop-filter: blur(14px);
}
.nav__inner {
  max-width: var(--max); margin: 0 auto; padding: 0 28px;
  display: flex; align-items: center; justify-content: space-between;
  height: 64px;
}
.nav__logo { display: flex; align-items: center; gap: 10px; }
.nav__logo-img { height: 36px; }
.nav__logo-text { font-family: var(--title); font-size: 1.21rem; font-weight: 900; letter-spacing: .04em; }
.nav__logo-text span { color: var(--green); }
.nav__links { display: flex; align-items: center; gap: 4px; }
.nav__link {
  font-size: 0.902rem; font-weight: 600; color: var(--muted);
  padding: 8px 12px; border-radius: 6px; transition: color .2s, background .2s;
  text-transform: uppercase; letter-spacing: .05em;
}
.nav__link:hover { color: var(--text); background: var(--off); }
.nav__cta { margin-left: 8px; }


/* ══════════════════════════════════════════════════════════════
   6. NAV BURGER (mobile)
══════════════════════════════════════════════════════════════ */
.nav__burger {
  display: none; flex-direction: column; justify-content: center; gap: 5px;
  width: 38px; height: 38px; padding: 6px;
  background: none; border: none; cursor: pointer;
  border-radius: 6px; transition: background .2s;
}
.nav__burger:hover { background: var(--off); }
.nav__burger span {
  display: block; width: 22px; height: 2px;
  background: var(--text); border-radius: 2px;
  transition: transform .3s var(--ease), opacity .3s;
  transform-origin: center;
}
.nav__burger.open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.nav__burger.open span:nth-child(2) { opacity: 0; transform: scaleX(0); }
.nav__burger.open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

.nav__mobile {
  display: none; position: fixed; inset: 0; z-index: 99;
  background: rgba(255,255,255,.98);
  flex-direction: column; padding: 100px 28px 40px;
  overflow-y: auto; backdrop-filter: blur(12px);
}
.nav__mobile.open { display: flex; }
.nav__mobile-link {
  font-family: var(--title); font-size: 1.54rem; font-weight: 800; color: var(--text);
  padding: 18px 0; border-bottom: 1px solid var(--border);
  display: flex; align-items: center; justify-content: space-between;
  transition: color .2s;
}
.nav__mobile-link:hover { color: var(--green); }
.nav__mobile-link i { font-size: 0.99rem; color: var(--green); }
.nav__mobile-cta { margin-top: 28px; display: flex; flex-direction: column; gap: 12px; }
.nav__mobile-cta .btn { justify-content: center; width: 100%; padding: 15px; font-size: 1.1rem; }


/* ══════════════════════════════════════════════════════════════
   7. HERO
══════════════════════════════════════════════════════════════ */
.hero {
  position: relative; min-height: 86vh;
  display: flex; align-items: center;
  overflow: hidden; border-bottom: 1px solid rgba(255,255,255,.1);
}
.hero__bg {
  display: block; position: absolute; inset: 0;
  overflow: hidden;
  transform: scale(1.03);
}
.hero__bg-img {
  position: absolute !important; inset: 0 !important;
  width: 100% !important; height: 100% !important;
  object-fit: cover !important; object-position: center !important;
  display: block !important; max-width: none !important;
}
.hero__grad {
  display: block; position: absolute; inset: 0;
  background:
    radial-gradient(circle at top center, rgba(255,153,0,.16), transparent 20%),
    linear-gradient(180deg, rgba(3,68,24,.26) 0%, rgba(3,68,24,.5) 38%, rgba(3,68,24,.72) 100%);
  pointer-events: none;
}
.hero__body {
  position: relative; z-index: 2; width: 100%;
  max-width: var(--max); margin: 0 auto; padding: 110px 28px 92px;
  display: flex; flex-direction: column; align-items: center; gap: 34px;
}
.hero__intro { width: 100%; max-width: 900px; text-align: center; }
.hero__eyebrow {
  font-size: 0.88rem; font-weight: 600; letter-spacing: .14em; text-transform: uppercase;
  color: rgba(255,255,255,.92); margin-bottom: 16px; display: inline-flex; align-items: center; justify-content: center; gap: 10px; flex-wrap: wrap;
}
.hero__eyebrow::before { content: none; }
.hero__eyebrow span {
  display: inline-flex;
  align-items: center;
}
.hero__eyebrow span + span {
  padding-left: 12px;
  border-left: 1px solid rgba(255,255,255,.32);
}
.hero__title {
  font-family: var(--title); font-size: clamp(2.64rem, 6.05vw, 4.4rem);
  font-weight: 900; line-height: 1.1; color: #ffffff; margin-bottom: 14px;
  text-shadow: 0 8px 28px rgba(0,0,0,.24);
}
.hero__title-kicker {
  display: block;
  margin-bottom: 14px;
  font-size: 0.88rem;
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: rgba(255,255,255,.92);
  text-shadow: none;
}
.hero__availability {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 20px;
  padding: 7px 14px;
  border: 1px solid rgba(255,255,255,.28);
  border-radius: 999px;
  background: rgba(255,255,255,.12);
  color: #ffffff;
  font-family: var(--title);
  font-size: 0.902rem;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
  backdrop-filter: blur(8px);
}
.hero__sub { font-size: 1.1rem; color: rgba(255,255,255,.88); max-width: 640px; line-height: 1.8; margin: 0 auto 28px; }
.hero__proofs { display: flex; flex-wrap: wrap; justify-content: center; gap: 0; margin: 0 0 30px; }
.hero__proof {
  display: inline-flex; align-items: center; gap: 0;
  padding: 0 18px; border-radius: 0; background: none; border: none;
  color: rgba(255,255,255,.96); font-size: 1.012rem; font-weight: 700;
  line-height: 1.2; position: relative;
  text-decoration: none;
  transition: color .2s ease, opacity .2s ease;
}
.hero__proof:hover {
  color: #ffffff;
  opacity: .72;
  text-decoration: none;
}
.hero__proof:first-child { padding-left: 0; }
.hero__proof:last-child { padding-right: 0; }
.hero__proof:not(:last-child)::after {
  content: ''; position: absolute; right: 0; top: 50%;
  width: 1px; height: 18px; background: rgba(255,255,255,.26); transform: translateY(-50%);
}
.hero__proof i { color: #111111; font-size: 0.935rem; display: none; }
.hero__ctas { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; }
.hero .btn-ghost { border-color: #ffffff; color: var(--green); background: #ffffff; }
.hero .btn-ghost:hover { border-color: rgba(255,255,255,.34); color: #ffffff; background: rgba(255,255,255,.06); }
.hero__microproof {
  display: flex; flex-wrap: wrap; justify-content: center; gap: 14px;
  margin-top: 26px; color: rgba(255,255,255,.84); font-size: 0.902rem; font-weight: 600;
}
.hero__microproof span { display: inline-flex; align-items: center; gap: 8px; }
.hero__microproof i { color: #111111; font-size: 0.924rem; display: none; }


/* ══════════════════════════════════════════════════════════════
   8. STATS BAR
══════════════════════════════════════════════════════════════ */
.statsbar {
  background: #ffffff;
  padding: 56px 0;
  border-bottom: 1px solid rgba(13,27,21,.08);
}
.statsbar__grid {
  display: flex;
  align-items: center;
  justify-content: center;
}
.statsbar__item {
  flex: 1;
  text-align: center;
  padding: 0 24px;
}
.statsbar__mark {
  width: 42px;
  height: 42px;
  margin: 0 auto 14px;
  border-radius: 12px;
  background: var(--green-bg);
  color: var(--green);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.1rem;
}
.statsbar__divider {
  width: 1px;
  height: 56px;
  background: rgba(4,84,27,.15);
  flex-shrink: 0;
}
.statsbar__val {
  display: block;
  font-size: 3.025rem;
  font-weight: 700;
  color: var(--green);
  line-height: 1;
  margin-bottom: 10px;
  font-family: var(--body);
}
.statsbar__unit {
  font-size: 1.485rem;
  font-weight: 600;
  color: var(--green);
}
.statsbar__label {
  display: block;
  font-size: 0.858rem;
  font-weight: 600;
  color: var(--text);
  opacity: .55;
  text-transform: uppercase;
  letter-spacing: .09em;
}
.statsbar__cta {
  display: flex; align-items: center; justify-content: center;
  flex-direction: column;
  text-align: center;
  gap: 20px; flex-wrap: wrap;
  border-top: 1px solid rgba(4,84,27,.1);
  margin-top: 40px; padding-top: 28px;
}
.statsbar__cta > span {
  font-size: 0.99rem; font-weight: 600; color: var(--text); opacity: .72;
}
.statsbar__cta-btns { display: flex; gap: 10px; flex-wrap: wrap; flex-shrink: 0; justify-content: center; }

@media (max-width: 640px) {
  .statsbar { padding: 40px 0; }
  .statsbar__grid { flex-wrap: wrap; row-gap: 36px; }
  .statsbar__divider { display: none; }
  .statsbar__item { flex: 0 0 50%; }
  .statsbar__cta { flex-direction: column; align-items: center; text-align: center; }
  .statsbar__cta-btns { width: 100%; }
  .statsbar__cta-btns .btn { flex: 1; justify-content: center; }
}


/* ══════════════════════════════════════════════════════════════
   8B. PARTENAIRES
══════════════════════════════════════════════════════════════════ */
.partners {
  padding: 64px 0;
  background: #ffffff;
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  overflow: hidden;
}
.secteurs__partners {
  margin-top: 72px;
  padding-top: 56px;
  border-top: 1px solid #eef2f6;
  overflow: hidden;
}
.secteurs__partners .partners__header {
  margin-bottom: 34px;
}
.secteurs__partners .partners__marquee::before { background: linear-gradient(to right, #ffffff, transparent); }
.secteurs__partners .partners__marquee::after  { background: linear-gradient(to left,  #ffffff, transparent); }
.partners__header { text-align: center; margin-bottom: 44px; }
.partners__header .h2 { font-size: clamp(1.54rem, 2.75vw, 2.09rem); margin-bottom: 0; }
.partners__marquee { position: relative; overflow: hidden; }
.partners__marquee::before,
.partners__marquee::after {
  content: ''; position: absolute; top: 0; bottom: 0;
  width: 140px; z-index: 2; pointer-events: none;
}
.partners__marquee::before { left: 0; background: linear-gradient(to right, #ffffff, transparent); }
.partners__marquee::after  { right: 0; background: linear-gradient(to left,  #ffffff, transparent); }
.partners__track {
  display: flex; align-items: center; gap: 0;
  width: max-content; padding: 8px 0;
  animation: partners-scroll 28s linear infinite;
  will-change: transform;
  backface-visibility: hidden;
}
@keyframes partners-scroll {
  from { transform: translate3d(0, 0, 0); }
  to   { transform: translate3d(calc(-100% / 3), 0, 0); }
}
.partners__item {
  display: flex; align-items: center; justify-content: center;
  width: 180px; height: 52px; flex-shrink: 0;
  margin-right: 100px;
  opacity: 1;
}
.partners__logo-img {
  height: 100%; width: auto; max-width: 160px;
  object-fit: contain; display: block;
}
@media (max-width: 480px) {
  .partners { padding: 48px 0; }
  .secteurs__partners { margin-top: 48px; padding-top: 42px; }
  .partners__item { width: 120px; height: 38px; margin-right: 48px; }
  .partners__logo-img { max-width: 110px; }
}

/* ══════════════════════════════════════════════════════════════
   9. ABOUT
══════════════════════════════════════════════════════════════ */
.about {
  padding: 112px 0; background: #f8fafc;
  border-top: 1px solid #f1f5f9; border-bottom: 1px solid #f1f5f9;
}
.about__inner { display: grid; grid-template-columns: 1fr 1fr; gap: 72px; align-items: center; }
.about__map-wrap { position: relative; }
.about__map { width: 100%; border-radius: 22px; object-fit: cover; height: 480px; box-shadow: 0 4px 20px rgba(0,0,0,.04); }
.about__contact-badges { display: flex; flex-direction: column; gap: 12px; margin-top: 24px; }
.about__badge-item {
  display: flex; align-items: center; gap: 14px;
  background: #ffffff; border: 1px solid #e5e7eb;
  border-radius: 10px; padding: 14px 18px;
  box-shadow: 0 4px 12px rgba(0,0,0,.03);
}
.about__badge-icon {
  width: 40px; height: 40px; border-radius: 8px;
  background: var(--green-bg); color: var(--green);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.1rem; flex-shrink: 0;
}
.about__badge-label { font-size: 0.748rem; font-weight: 700; text-transform: uppercase; letter-spacing: .1em; color: var(--muted); margin-bottom: 2px; }
.about__badge-val { font-size: 0.968rem; font-weight: 600; color: var(--text); }
.about__lead { color: var(--muted); margin-bottom: 20px; line-height: 1.8; }
.about__interventions { margin: 28px 0 32px; }
.about__interventions h4 { font-family: var(--title); font-size: 1.1rem; font-weight: 700; color: var(--green); margin-bottom: 14px; }
.about__int-list { display: flex; flex-direction: column; gap: 8px; }
.about__int-item {
  display: flex; align-items: center; gap: 10px;
  font-size: 0.968rem; font-weight: 600; color: var(--text);
  padding: 10px 14px; border-left: 3px solid var(--green);
  background: var(--green-bg); border-radius: 0 6px 6px 0;
}
.about__int-item i { color: var(--green); font-size: 0.935rem; }
.about__int-item:hover { background: #d6eedd; border-left-color: var(--green-dk); color: var(--green-dk); }


/* ══════════════════════════════════════════════════════════════
   10. ALLIANCE (Pourquoi Fieri Nuisible)
══════════════════════════════════════════════════════════════ */
.alliance {
  padding: 112px 0;
  background:
    radial-gradient(circle at 18% 18%, rgba(7,146,47,.5) 0%, rgba(7,146,47,0) 34%),
    radial-gradient(circle at 86% 78%, rgba(255,153,0,.14) 0%, rgba(255,153,0,0) 32%),
    linear-gradient(145deg, #022f12 0%, var(--green-dk) 58%, #01250d 100%);
}
.alliance__header { text-align: center; margin-bottom: 60px; }
.alliance__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; }
.alliance__card {
  background: #ffffff; border: 1px solid transparent;
  border-radius: var(--r); padding: 36px 28px;
  transition: transform .25s var(--ease), border-color .25s var(--ease), box-shadow .25s var(--ease);
  box-shadow: 0 4px 16px rgba(0,0,0,.04);
}
.alliance__card:hover { border-color: rgba(255,255,255,.3); transform: translateY(-2px); box-shadow: 0 8px 24px rgba(0,0,0,.06); }
.alliance__num { font-family: var(--title); font-size: 2.42rem; font-weight: 900; color: rgba(5,104,35,.16); margin-bottom: 16px; line-height: 1; }
.alliance__icon { color: var(--green); font-size: 1.43rem; margin-bottom: 14px; display: block; }
.alliance__title { font-family: var(--title); font-size: 1.045rem; font-weight: 700; color: var(--text); margin-bottom: 10px; line-height: 1.35; }
.alliance__text { font-size: 0.924rem; color: var(--muted); line-height: 1.7; }


/* ══════════════════════════════════════════════════════════════
   11. PROCESS
══════════════════════════════════════════════════════════════ */
.process { padding: 112px 0; background: #f8fafc; }
.process__header { text-align: center; margin-bottom: 60px; }
.process__steps { display: grid; grid-template-columns: 1fr 48px 1fr 48px 1fr; align-items: start; }
.process__step {
  text-align: center; padding: 36px 28px 32px;
  background: #ffffff; border: 1px solid #f1f5f9;
  border-radius: 18px; box-shadow: 0 4px 16px rgba(0,0,0,.04);
}
.process__circle {
  width: 72px; height: 72px; border-radius: 50%;
  background: var(--green-bg); border: 3px solid var(--green);
  display: flex; align-items: center; justify-content: center;
  margin: 0 auto 20px; position: relative;
}
.process__circle i { font-size: 1.375rem; color: var(--green); }
.process__num {
  position: absolute; top: -6px; right: -6px;
  width: 22px; height: 22px; border-radius: 50%;
  background: var(--green); color: #fff;
  font-size: 0.682rem; font-weight: 800;
  display: flex; align-items: center; justify-content: center;
}
.process__step-title { font-family: var(--title); font-size: 1.1rem; font-weight: 700; margin-bottom: 8px; }
.process__step-text  { font-size: 0.946rem; color: var(--muted); line-height: 1.65; }
.process__conn { align-self: center; padding-bottom: 52px; }
.process__conn::after { content: ''; display: block; border-top: 2px dashed #c3e2cc; }


/* ══════════════════════════════════════════════════════════════
   12. SECTEURS PROFESSIONNELS
══════════════════════════════════════════════════════════════ */
.secteurs { padding: 112px 0; background: #ffffff; border-top: 1px solid #f1f5f9; }
.secteurs__header { text-align: center; margin-bottom: 60px; }
.secteurs__header .sub { margin: 0 auto; }
.secteurs__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
.secteurs__item {
  background: #f8fafc;
  border: 1px solid #eef2f6;
  border-radius: 18px;
  padding: 36px 28px;
  transition: transform .25s var(--ease), box-shadow .25s var(--ease), border-color .25s var(--ease), background .25s;
}
.secteurs__item:hover {
  background: #ffffff;
  transform: translateY(-4px);
  box-shadow: 0 12px 32px rgba(4,84,27,.08);
  border-color: rgba(4,84,27,.18);
}
.secteurs__icon {
  width: 52px; height: 52px;
  border-radius: 14px;
  background: var(--green-bg);
  color: var(--green);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.43rem;
  margin-bottom: 20px;
  transition: background .25s, color .25s;
}
.secteurs__item:hover .secteurs__icon { background: var(--green); color: #fff; }
.secteurs__name {
  font-family: var(--title);
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--text);
  margin-bottom: 10px;
}
.secteurs__text {
  font-size: 0.946rem;
  color: var(--muted);
  line-height: 1.7;
}


/* ══════════════════════════════════════════════════════════════
   13. LOCAL SEO
══════════════════════════════════════════════════════════════ */
.local {
  padding: 112px 0;
  background:
    radial-gradient(circle at 82% 50%, rgba(7,146,47,.22) 0%, rgba(7,146,47,0) 42%),
    var(--green-dk);
}
.local .label { background: rgba(255,255,255,.12); color: #fff; border: 1px solid rgba(255,255,255,.14); }
.local .h2 { color: #fff; }
.local .sub { color: rgba(255,255,255,.82); }
.local__header { display: flex; justify-content: space-between; gap: 32px; align-items: end; margin-bottom: 44px; }
.local__intro { max-width: 620px; }
.local__grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: 26px; }
.local__grid--map { grid-template-columns: minmax(0, .9fr) minmax(360px, 1.05fr); align-items: center; gap: 72px; }
.local__content { max-width: 640px; }
.local__content .h2 { max-width: 620px; }
.local__content .sub { max-width: 610px; font-size: 1.1rem; }
.local__map-card {
  margin: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  padding: 0;
  box-shadow: none;
}
.local__map-card--plain {
  display: flex;
  justify-content: center;
  align-items: center;
}
.local__map-france-real {
  width: min(100%, 620px);
  height: auto;
  display: block;
  filter: drop-shadow(0 24px 40px rgba(0,0,0,.16));
}
.local__map-real-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}
.local__map-real-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  padding: 18px 14px 16px;
  border-radius: 18px;
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(255,255,255,.32);
}
.local__map-real-img {
  width: 100%;
  max-height: 280px;
  object-fit: contain;
}
.local__map-real-item span {
  font-family: var(--title);
  font-size: 0.946rem;
  font-weight: 800;
  color: var(--green-dk);
  text-transform: uppercase;
  letter-spacing: .08em;
}
.local__map-credit {
  margin-top: 12px;
  text-align: center;
  font-size: 0.748rem;
  color: rgba(255,255,255,.58);
}
.local__map { width: 100%; height: auto; display: block; overflow: visible; }
.local__map-france {
  fill: url(#franceMapFill);
  stroke: rgba(255,255,255,.78);
  stroke-width: 3;
}
.local__map-zone {
  fill: rgba(5,104,35,.72);
  stroke: #ffffff;
  stroke-width: 2;
}
.local__map-glow { fill: url(#southGlow); }
.local__map-pin {
  fill: #ffffff;
  stroke: var(--green);
  stroke-width: 5;
}
.local__map-label {
  fill: var(--green-dk);
  font-family: var(--title);
  font-size: 19.8px;
  font-weight: 800;
}
.local__map-caption {
  fill: rgba(255,255,255,.86);
  font-family: var(--title);
  font-size: 15.4px;
  font-weight: 700;
  letter-spacing: .04em;
}
.local__card { background: #ffffff; border: 1px solid #e5e7eb; border-radius: 20px; padding: 36px 30px; box-shadow: 0 4px 20px rgba(0,0,0,.04); }
.local__title { font-family: var(--title); font-size: 1.21rem; font-weight: 800; margin-bottom: 14px; }
.local__text { font-size: 1.012rem; color: var(--muted); line-height: 1.8; margin-bottom: 18px; }
.local__chips { display: flex; flex-wrap: wrap; gap: 10px; }
.local__chip {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 9px 13px; border-radius: 999px; background: #fff;
  border: 1px solid var(--border); color: var(--text); font-size: 0.88rem; font-weight: 700;
}
.local__chip i { color: var(--green); font-size: 0.924rem; }
.local__links { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.local__link {
  display: flex; align-items: center; justify-content: space-between; gap: 12px;
  padding: 14px 16px; border-radius: 12px;
  background: var(--green-bg); border: 1px solid rgba(5,104,35,.14);
  color: var(--green-dk); font-size: 0.935rem; font-weight: 700;
  transition: transform .2s, background .2s, border-color .2s;
}
.local__link:hover { transform: translateY(-2px); background: #fff; border-color: rgba(5,104,35,.28); }
.local__link i { color: var(--green); font-size: 0.88rem; }


/* ══════════════════════════════════════════════════════════════
   14. SERVICES GRID (spc)
══════════════════════════════════════════════════════════════ */
.spc { padding: 112px 0; background: #ffffff; }
.spc__header {
  max-width: var(--max); margin: 0 auto 44px; padding: 0 28px;
  display: flex; justify-content: space-between; align-items: end; gap: 28px;
}
.spc__intro { max-width: 700px; }
.spc__grid {
  max-width: var(--max); margin: 0 auto; padding: 0 28px;
  display: grid; grid-template-columns: 1.2fr .8fr .8fr; gap: 20px;
}
.spc-card {
  display: flex; flex-direction: column; justify-content: space-between;
  min-height: 260px; padding: 36px; border-radius: 24px;
  border: 1px solid #f1f5f9; background: #ffffff;
  box-shadow: 0 4px 20px rgba(0,0,0,.03);
  transition: transform .22s var(--ease), box-shadow .22s var(--ease), border-color .22s var(--ease);
}
.spc-card:hover { transform: translateY(-5px) scale(1.01); box-shadow: 0 16px 40px rgba(0,0,0,.09); border-color: #c8dfd0; }
.spc-card--featured {
  grid-row: span 2; min-height: 540px; color: #ffffff; border-color: rgba(255,255,255,.12);
  background:
    linear-gradient(180deg, rgba(4,84,27,.18) 0%, rgba(4,84,27,.68) 100%),
    url('https://fierinuisible.fr/wp-content/uploads/2026/05/technicien-poste-dappatage.jpg') 72% center/cover no-repeat;
}
.spc-card--featured .spc-card__eyebrow,
.spc-card--featured .spc-card__title,
.spc-card--featured .spc-card__text,
.spc-card--featured .spc-card__link { color: #ffffff; }
.spc-card--featured .spc-card__link { border-color: rgba(255,255,255,.22); background: rgba(255,255,255,.08); }
.spc-card--featured .spc-card__link:hover { background: #ffffff; color: var(--green); }
.spc-card--soft { background: #f2f6f3; border-color: rgba(5,104,35,.1); }
.spc-card--warm { background: #f7f2eb; border-color: rgba(31,31,31,.08); }
.spc-card--wide { grid-column: 1 / -1; min-height: 220px; }
.spc-card__top { display: flex; flex-direction: column; gap: 14px; }
.spc-card__eyebrow { font-size: 0.77rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: var(--green); }
.spc-card__title { font-family: var(--title); font-size: 1.595rem; font-weight: 800; line-height: 1.15; color: var(--text); }
.spc-card__text { font-size: 1.012rem; line-height: 1.75; color: var(--muted); }
.spc-card__link {
  display: inline-flex; align-items: center; gap: 10px; width: fit-content;
  margin-top: 22px; padding: 11px 16px; border-radius: 999px;
  border: 1px solid rgba(5,104,35,.16); background: #fff; color: var(--green);
  font-size: 0.902rem; font-weight: 800; transition: all .2s;
}
.spc-card__link:hover { background: var(--green); color: #fff; border-color: var(--green); }
.spc-card__list { display: flex; flex-direction: column; gap: 10px; margin-top: 6px; }
.spc-card__list span { display: inline-flex; align-items: center; gap: 10px; font-size: 0.924rem; font-weight: 700; color: var(--text); }
.spc-card__list span::before { content: ''; width: 7px; height: 7px; border-radius: 50%; background: var(--green); flex-shrink: 0; }

/* Cards génériques (utilisées pour les images services) */
.card {
  background: var(--white); border: 1px solid var(--border);
  border-radius: var(--r); overflow: hidden;
  transition: box-shadow .25s var(--ease), transform .25s var(--ease);
}
.card:hover { box-shadow: 0 10px 36px rgba(0,0,0,.09); transform: translateY(-3px); }
.card__img { height: 200px; background: #ddd center/cover no-repeat; }
.card__img--frelons  { background: url('https://fierinuisible.fr/wp-content/uploads/2026/04/Nid-de-frelons-asiatiques-card-service.png') center/cover no-repeat; }
.card__img--rats     { background: url('https://fierinuisible.fr/wp-content/uploads/2026/04/De%CC%81ratisation-terrain-card-service.png') center/cover no-repeat; }
.card__img--punaises { background: url('https://fierinuisible.fr/wp-content/uploads/2026/04/Punaises-de-lit-card-service.png') center/cover no-repeat; }
.card__img--tech     { background: url('https://fierinuisible.fr/wp-content/uploads/2026/04/Technicien-destruction-nid-en-hauteur.png') center/cover no-repeat; }
.card__img--icon     { background: var(--green-bg); display: flex; align-items: center; justify-content: center; }
.card__img--icon i   { font-size: 2.64rem; color: var(--green); }
.card__body { padding: 22px 24px 26px; }
.card__badge { display: inline-block; background: #fff0f0; color: var(--red); font-size: 0.715rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; padding: 3px 9px; border-radius: 3px; margin-bottom: 10px; }
.card__title { font-family: var(--title); font-size: 1.155rem; font-weight: 700; margin-bottom: 8px; }
.card__text  { font-size: 0.968rem; color: var(--muted); line-height: 1.65; margin-bottom: 16px; }
.card__link  { font-size: 0.924rem; font-weight: 700; color: var(--green); display: inline-flex; align-items: center; gap: 5px; }
.card__link:hover { color: var(--green-lt); }
.card--featured { grid-column: span 2; display: grid; grid-template-columns: 1fr 1fr; }
.card--featured .card__img { height: 100%; min-height: 260px; }


/* ══════════════════════════════════════════════════════════════
   15. TÉMOIGNAGES
══════════════════════════════════════════════════════════════ */
.temoignages { padding: 112px 0 64px; background: #f8fafc; }
.temoignages__inner { display: grid; grid-template-columns: 1fr 1.3fr; gap: 48px; align-items: start; }
.temoignages__header { margin-bottom: 32px; }
.temoignages__header .h2 { margin-bottom: 16px; }
.temoignages__header .sub { margin-bottom: 36px; }
.temoignages__score {
  display: flex; align-items: center; gap: 24px;
  background: #ffffff; padding: 24px 32px; border-radius: 16px;
  border: 1px solid #e5e7eb; box-shadow: 0 4px 16px rgba(0,0,0,.02);
}
.temoignages__score-val { font-family: var(--title); font-size: 3.52rem; font-weight: 800; color: var(--text); line-height: 1; }
.temoignages__stars { display: flex; gap: 4px; color: var(--gold); font-size: 1.21rem; margin-bottom: 6px; }
.temoignages__count { font-size: 0.935rem; font-weight: 600; color: var(--muted); }
.temoignages__google-icon { margin-left: auto; font-size: 2.42rem; color: var(--green); }
.temoignages__score--link {
  display: flex; text-decoration: none;
  transition: box-shadow .22s var(--ease), border-color .22s;
}
.temoignages__score--link:hover { box-shadow: 0 8px 28px rgba(0,0,0,.07); border-color: #c8dfd0; }
.temoignages__cta-google {
  display: inline-flex; align-items: center; gap: 8px;
  margin-top: 14px; padding: 10px 18px; border-radius: 999px;
  border: 1.5px solid #dadce0; background: #ffffff;
  font-size: 0.902rem; font-weight: 700; color: #3c4043;
  transition: background .2s, border-color .2s, box-shadow .2s;
}
.temoignages__cta-google i { color: #4285F4; font-size: 1.045rem; }
.temoignages__cta-google:hover { background: #f8f9fa; border-color: #bdc1c6; box-shadow: 0 2px 8px rgba(0,0,0,.08); }
.t-list { display: flex; flex-direction: column; gap: 20px; }
.t-row {
  background: #ffffff; border: 1px solid #e5e7eb; border-radius: 20px;
  padding: 28px 36px 28px 36px; box-shadow: 0 4px 16px rgba(0,0,0,.02);
  position: relative; transition: transform .25s var(--ease), box-shadow .25s var(--ease), border-color .25s;
}
.t-row:hover { transform: translateX(-4px); box-shadow: 0 8px 24px rgba(0,0,0,.05); border-color: #d1d5db; }
.t-row__stars { display: flex; gap: 3px; color: var(--gold); font-size: 0.968rem; margin-bottom: 12px; }
.t-row__quote { font-size: 1.045rem; color: var(--text); line-height: 1.75; font-weight: 500; margin-bottom: 16px; }
.t-row__author { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; font-size: 0.935rem; font-weight: 700; color: var(--text); }
.t-row__sep { color: var(--muted); }
.t-row__loc { color: var(--muted); font-weight: 500; }
.t-row__badge {
  display: inline-flex; align-items: center; gap: 5px;
  font-size: 0.792rem; font-weight: 600; color: #5f6368;
  background: #f1f3f4; border-radius: 4px; padding: 2px 7px;
  margin-left: auto;
}
.t-row__badge i { color: #4285F4; font-size: 0.88rem; }
.tcard__stars { color: var(--gold); font-size: 0.935rem; display: flex; gap: 2px; margin-bottom: 14px; }
.tcard__text { font-size: 0.99rem; color: var(--text); line-height: 1.7; margin-bottom: 20px; padding-left: 18px; position: relative; }
.tcard__text::before { content: '\201C'; position: absolute; left: 0; top: -4px; font-size: 2.2rem; color: var(--green); font-family: Georgia, serif; line-height: 1; }
.tcard__author { display: flex; gap: 10px; align-items: center; }
.tcard__avatar { width: 38px; height: 38px; border-radius: 50%; background: var(--green); color: #fff; font-size: 0.792rem; font-weight: 700; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.tcard__name { display: block; font-size: 0.935rem; font-weight: 700; }
.tcard__loc  { display: block; font-size: 0.825rem; color: var(--muted); margin-top: 2px; }


/* ══════════════════════════════════════════════════════════════
   16. BLOG PREVIEW
══════════════════════════════════════════════════════════════ */
.blog-prev { padding: 64px 0 112px; background: #f8fafc; border-top: none; }
.blog-prev__header {
  display: flex; justify-content: space-between; align-items: flex-end;
  gap: 24px; margin-bottom: 44px;
}
.blog-prev__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
.blog-card {
  background: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 20px;
  overflow: hidden;
  transition: transform .25s var(--ease), box-shadow .25s var(--ease), border-color .25s;
}
.blog-card:hover { transform: translateY(-4px); box-shadow: 0 12px 32px rgba(0,0,0,.07); border-color: #d1d5db; }
.blog-card__img-wrap { display: block; }
.blog-card__img {
  height: 200px;
  background: #ddd center/cover no-repeat;
}
.blog-card__img--punaises { background: url('https://fierinuisible.fr/wp-content/uploads/2026/04/Punaises-de-lit-card-service.png') center/cover no-repeat; }
.blog-card__img--frelons  { background: url('https://fierinuisible.fr/wp-content/uploads/2026/04/Nid-de-frelons-asiatiques-card-service.png') center/cover no-repeat; }
.blog-card__img--rats     { background: url('https://fierinuisible.fr/wp-content/uploads/2026/04/De%CC%81ratisation-terrain-card-service.png') center/cover no-repeat; }
.blog-card__body { padding: 24px 26px 28px; }
.blog-card__cat {
  display: inline-block;
  background: var(--green-bg); color: var(--green);
  font-size: 0.748rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase;
  padding: 3px 10px; border-radius: 4px; margin-bottom: 12px;
}
.blog-card__title {
  font-family: var(--title); font-size: 1.122rem; font-weight: 700;
  line-height: 1.35; margin-bottom: 10px;
}
.blog-card__title a { color: var(--text); transition: color .2s; }
.blog-card__title a:hover { color: var(--green); }
.blog-card__excerpt { font-size: 0.957rem; color: var(--muted); line-height: 1.65; margin-bottom: 18px; }
.blog-card__link {
  display: inline-flex; align-items: center; gap: 7px;
  font-size: 0.902rem; font-weight: 700; color: var(--green);
  transition: gap .2s;
}
.blog-card__link:hover { gap: 11px; }


/* ══════════════════════════════════════════════════════════════
   17. RECRUTEMENT  (numérotation mise à jour)
══════════════════════════════════════════════════════════════ */
.recrutement {
  padding: 112px 0; background: #0f172a; color: var(--white);
  position: relative; overflow: hidden;
}
.recrutement .label { background: rgba(255,255,255,.12); color: #fff; border: 1px solid rgba(255,255,255,.14); }
.recrutement .h2 { color: #fff; }
.recrutement .sub { color: rgba(255,255,255,.82); line-height: 1.8; }
.recrutement__inner { display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 64px; align-items: center; }
.recrutement__content { position: relative; z-index: 2; }
.recrutement__jobs { display: flex; flex-direction: column; gap: 16px; margin: 32px 0 38px; }
.recrutement__job {
  background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.12);
  padding: 20px 24px; border-radius: 16px;
  display: flex; align-items: center; justify-content: space-between;
  transition: background .25s, border-color .25s, transform .25s;
}
.recrutement__job:hover { background: rgba(255,255,255,.1); border-color: rgba(255,255,255,.24); transform: translateY(-2px); }
.recrutement__job-info h3 { font-family: var(--title); font-size: 1.155rem; font-weight: 700; margin-bottom: 4px; color: #ffffff; }
.recrutement__job-info p { font-size: 0.935rem; color: rgba(255,255,255,.7); }
.recrutement__job-icon {
  width: 44px; height: 44px; border-radius: 50%; background: var(--green);
  display: flex; align-items: center; justify-content: center;
  color: #fff; font-size: 1.32rem; flex-shrink: 0;
}
.recrutement__img-wrap { position: relative; z-index: 2; }
.recrutement__img { width: 100%; border-radius: 24px; box-shadow: 0 24px 48px rgba(0,0,0,.2); }
.recrutement__shape {
  position: absolute; top: -20%; right: -10%;
  width: 600px; height: 600px; border-radius: 50%;
  background: radial-gradient(circle, rgba(5,104,35,.35) 0%, transparent 60%);
  z-index: 1;
}
.recrutement .btn-green { font-size: 1.045rem; padding: 14px 28px; }


/* ══════════════════════════════════════════════════════════════
   17. FAQ
══════════════════════════════════════════════════════════════ */
.faq { padding: 112px 0; background: #ffffff; }
.faq__inner { display: grid; grid-template-columns: 1fr 360px; gap: 64px; align-items: start; }
.faq__header { margin-bottom: 32px; }
.faq-item { border-bottom: 1px solid var(--border); }
.faq-item__btn { width: 100%; background: none; border: none; cursor: pointer; font-family: var(--body); font-size: 1.023rem; font-weight: 600; color: var(--text); display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 18px 0; text-align: left; }
.faq-item__btn:hover { color: var(--green); }
.faq-item__icon { flex-shrink: 0; color: var(--green); font-size: 0.858rem; transition: transform .28s; }
.faq-item--open .faq-item__icon { transform: rotate(180deg); }
.faq-item__body { font-size: 0.968rem; color: var(--muted); line-height: 1.75; padding-bottom: 18px; display: none; }
.faq-item--open .faq-item__body { display: block; }
.faq__aside { position: sticky; top: 36px; }
.faq-aside { background: #ffffff; border: 1px solid #f1f5f9; border-radius: 20px; padding: 32px; text-align: center; box-shadow: 0 4px 20px rgba(0,0,0,.04); }
.faq-aside__icon { font-size: 2.2rem; color: var(--green); margin-bottom: 14px; }
.faq-aside__title { font-family: var(--title); font-size: 1.21rem; font-weight: 700; margin-bottom: 10px; }
.faq-aside__text { font-size: 0.935rem; color: var(--muted); line-height: 1.65; margin-bottom: 20px; }
.faq-aside__tel { display: block; margin-top: 12px; font-size: 0.913rem; font-weight: 600; color: var(--muted); transition: color .2s; }
.faq-aside__tel:hover { color: var(--green); }
.faq-aside__tel i { margin-right: 5px; }


/* ══════════════════════════════════════════════════════════════
   SECTION-CTA (mini blocs de conversion inter-sections)
══════════════════════════════════════════════════════════════ */
.section-cta {
  margin-top: 56px;
  padding: 36px 40px;
  border-radius: 16px;
  background: var(--green-bg);
  border: 1px solid rgba(4,84,27,.12);
  display: flex; align-items: center; justify-content: space-between;
  gap: 24px; flex-wrap: wrap;
}
.section-cta--dark {
  background: rgba(255,255,255,.08);
  border-color: rgba(255,255,255,.14);
}
.section-cta__text {
  font-size: 1.045rem; font-weight: 600; color: var(--text);
  max-width: 540px; line-height: 1.6; margin: 0;
}
.section-cta--dark .section-cta__text { color: rgba(255,255,255,.9); }
.section-cta__btns { display: flex; gap: 12px; flex-wrap: wrap; flex-shrink: 0; }
@media (max-width: 768px) {
  .section-cta { flex-direction: column; align-items: flex-start; padding: 28px 24px; }
  .section-cta__btns { width: 100%; }
  .section-cta__btns .btn { flex: 1; justify-content: center; }
}

/* ══════════════════════════════════════════════════════════════
   18. CTA FINAL
══════════════════════════════════════════════════════════════ */
.cta-final { padding: 112px 28px; text-align: center; background: var(--green-dk); }
.cta-final .reveal {
  max-width: 920px; margin: 0 auto; padding: 64px 40px;
  background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.1);
  border-radius: 28px; box-shadow: 0 8px 32px rgba(0,0,0,.1); backdrop-filter: blur(10px);
}
.cta-final__title { font-family: var(--title); font-size: clamp(2.2rem, 5.5vw, 3.96rem); font-weight: 900; color: #ffffff; margin-bottom: 14px; }
.cta-final__sub { color: rgba(255,255,255,.84); max-width: 500px; margin: 0 auto 32px; line-height: 1.75; }
.cta-final__actions { display: flex; justify-content: center; flex-wrap: wrap; gap: 12px; margin-bottom: 18px; }
.cta-final__note { font-size: 0.88rem; color: rgba(255,255,255,.84); display: flex; align-items: center; justify-content: center; gap: 5px; }
.cta-final .btn-outline-white { border-color: rgba(255,255,255,.34); color: #ffffff; background: rgba(255,255,255,.04); }
.cta-final .btn-outline-white:hover { border-color: #ffffff; color: var(--green); background: #ffffff; }


/* ══════════════════════════════════════════════════════════════
   19. FOOTER
══════════════════════════════════════════════════════════════ */
.footer { background: #ffffff; color: var(--text); padding: 72px 0 0; border-top: 1px solid var(--border); }
.footer__inner { display: grid; grid-template-columns: 1.5fr 1fr 1fr 1fr; gap: 40px; margin-bottom: 52px; }
.footer__logo { font-family: var(--title); font-size: 1.32rem; font-weight: 900; letter-spacing: .06em; margin-bottom: 10px; }
.footer__logo span { color: var(--green); }
.footer__tagline { color: var(--muted); font-size: 0.924rem; margin-bottom: 18px; line-height: 1.65; }
.footer__socials { display: flex; gap: 8px; }
.footer__social { width: 34px; height: 34px; border-radius: 6px; background: rgba(255,255,255,.7); border: 1px solid var(--border); color: var(--muted); display: flex; align-items: center; justify-content: center; font-size: 0.902rem; transition: all .2s; }
.footer__social:hover { background: var(--green); color: #fff; }
.footer__col-title { font-size: 0.759rem; font-weight: 700; text-transform: uppercase; letter-spacing: .14em; color: var(--muted); margin-bottom: 16px; }
.footer__nav { display: flex; flex-direction: column; gap: 9px; }
.footer__link { font-size: 0.924rem; color: var(--muted); transition: color .2s; }
.footer__link:hover { color: var(--green); }
.footer__addr { display: flex; flex-direction: column; gap: 9px; margin-bottom: 18px; }
.footer__addr a, .footer__addr span { font-size: 0.924rem; color: var(--muted); display: flex; gap: 9px; align-items: flex-start; transition: color .2s; }
.footer__addr a:hover { color: var(--green); }
.footer__addr i { color: var(--green); width: 13px; flex-shrink: 0; margin-top: 2px; }
.footer__bar { border-top: 1px solid rgba(221,221,221,.95); padding: 18px 0; margin: 0 28px; display: flex; justify-content: space-between; align-items: center; }
.footer__copyright { font-size: 0.858rem; color: var(--muted); }
.footer__recruit { display: inline-flex; align-items: center; gap: 7px; font-size: 0.836rem; font-weight: 700; color: var(--muted); transition: color .2s; }
.footer__recruit:hover { color: var(--green); }
.footer__rdot { width: 7px; height: 7px; border-radius: 50%; background: var(--red); display: inline-block; animation: pulse 1.6s ease-in-out infinite; }


/* ══════════════════════════════════════════════════════════════
   21. RESPONSIVE
══════════════════════════════════════════════════════════════ */
@media (max-width: 1080px) {
  .spc__grid { grid-template-columns: 1fr 1fr; }
  .spc-card--featured { grid-column: span 2; grid-row: span 1; min-height: 380px; }
  .spc-card--wide { grid-column: 1 / -1; }
}

@media (max-width: 1024px) {
  .hero__body { gap: 30px; }
  .about__inner, .alliance__grid { grid-template-columns: 1fr 1fr; }
  .alliance__grid { gap: 16px; }
  .process__steps { grid-template-columns: 1fr; gap: 28px; }
  .process__conn { display: none; }
  .local__grid { grid-template-columns: 1fr; }
  .local__grid--map { gap: 36px; }
  .local__map-card { max-width: 620px; width: 100%; justify-self: center; }
  .faq__inner { grid-template-columns: 1fr; }
  .faq__aside { position: static; }
  .footer__inner { grid-template-columns: 1fr 1fr; }
  .temoignages__inner { grid-template-columns: 1fr; gap: 48px; }
  .recrutement__inner { grid-template-columns: 1fr; gap: 48px; }
  .secteurs__grid { grid-template-columns: repeat(2, 1fr); }
  .blog-prev__grid { grid-template-columns: 1fr; }
  .blog-prev__header { flex-direction: column; align-items: flex-start; }
}

@media (max-width: 768px) {
  .nav__links { display: none; }
  .nav__burger { display: flex; }
  .nav__cta { display: none; }
  .about__inner { grid-template-columns: 1fr; gap: 36px; }
  .alliance__grid { grid-template-columns: 1fr 1fr; }
  .local__header { flex-direction: column; align-items: flex-start; }
  .local__links { grid-template-columns: 1fr; }
  .local__grid--map { grid-template-columns: 1fr; }
  .footer__inner { grid-template-columns: 1fr; gap: 32px; }
  .footer__bar { flex-direction: column; gap: 10px; text-align: center; }
  .hero__ctas { flex-direction: column; }
  .hero__proofs { flex-direction: column; gap: 12px; }
  .hero__proof { padding: 0; justify-content: center; font-size: 1.045rem; }
  .hero__proof:not(:last-child)::after { content: none; }
  .hero__microproof { flex-direction: column; gap: 10px; }
  .hero__body { padding: 96px 22px 72px; }
  .cta-final__actions { flex-direction: column; align-items: center; }
  .spc__header { flex-direction: column; align-items: flex-start; }
  .spc__grid { grid-template-columns: 1fr; }
  .spc-card, .spc-card--featured, .spc-card--wide { grid-column: auto; min-height: auto; }
  .secteurs__grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 480px) {
  .modal__header { padding: 24px 24px 0; }
  .modal__body { padding: 20px 24px 24px; }
  .hero { min-height: 100svh; }
  .hero__body { padding: 80px 20px 60px; gap: 0; }
  .hero__intro { max-width: 100%; }
  .hero__eyebrow { font-size: 0.792rem; margin-bottom: 12px; letter-spacing: .1em; gap: 7px; }
  .hero__eyebrow span + span { padding-left: 9px; }
  .hero__title { font-size: 2.035rem; line-height: 1.12; margin-bottom: 12px; }
  .hero__title-kicker { font-size: 0.792rem; margin-bottom: 10px; letter-spacing: .1em; }
  .hero__availability { font-size: 0.792rem; margin-bottom: 16px; padding: 6px 12px; }
  .hero__sub { font-size: 0.968rem; line-height: 1.65; margin-bottom: 22px; }
  .hero__proofs { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 0 0 22px; }
  .hero__proof { display: flex; align-items: center; justify-content: center; gap: 6px; padding: 8px 10px; font-size: 0.902rem; font-weight: 700; background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.18); border-radius: 8px; text-align: center; line-height: 1.3; }
  .hero__proof:first-child, .hero__proof:last-child { padding: 8px 10px; }
  .hero__proof:not(:last-child)::after { content: none; }
  .hero__ctas { flex-direction: column; gap: 10px; width: 100%; }
  .hero__ctas .btn { width: 100%; justify-content: center; padding: 14px 20px; font-size: 0.99rem; }
  .hero__microproof { margin-top: 18px; gap: 6px; font-size: 0.836rem; flex-direction: row; flex-wrap: wrap; justify-content: center; row-gap: 6px; }
  .statsbar__cta-btns,
  .section-cta__btns {
    flex-direction: column;
  }
  .statsbar__cta-btns .btn,
  .section-cta__btns .btn {
    width: 100%;
    justify-content: center;
  }
  .about, .alliance, .engage, .process, .local, .spc, .temoignages, .faq, .recrutement, .secteurs, .blog-prev { padding: 64px 0; }
  .cta-final { padding: 64px 18px; }
  .cta-final .reveal { padding: 40px 22px; }
  .topbar { height: auto; flex-direction: column; gap: 4px; padding: 8px 16px; text-align: center; font-size: 0.836rem; }
  .topbar > span { position: static; display: block; font-size: 0.792rem; color: rgba(255,255,255,.9); pointer-events: auto; }
  .about__map { height: 260px; }
  .about__badge-item { gap: 10px; padding: 12px 16px; }
  .local__map-card { padding: 0; border-radius: 0; }
  .local__map-france-real { width: min(100%, 400px); }
  .local__map-real-grid { grid-template-columns: 1fr; }
  .local__map-real-img { max-height: 220px; }
  .local__map-label { font-size: 17.6px; }
  .local__map-caption { font-size: 13.2px; }
  .spc-card { padding: 24px 20px; border-radius: 18px; }
  .spc-card__title { font-size: 1.43rem; }
  .alliance__grid, .local__grid, .process__steps { grid-template-columns: 1fr; }
  .alliance__card { padding: 24px 18px; }
  .recrutement__job { flex-direction: column; align-items: flex-start; gap: 12px; padding: 18px; }
  .recrutement__job-icon { align-self: flex-start; }
  .recrutement .btn-green { width: 100%; justify-content: center; }
  .process__circle { width: 56px; height: 56px; }
  .temoignages__score { flex-direction: column; align-items: flex-start; gap: 16px; padding: 24px; }
  .temoignages__google-icon { margin-left: 0; }
  .t-row { padding: 30px 24px; }
  .t-row::before { left: 14px; top: 12px; }
  .cta-final__title { font-size: 1.815rem; }
  .cta-final .btn { width: 100%; justify-content: center; }
  .footer { padding: 48px 0 0; }
  .footer__inner { gap: 32px; }
  .secteurs__grid { grid-template-columns: 1fr; }
  .blog-prev__grid { grid-template-columns: 1fr; }
}

/* Pleine largeur page accueil */
body.page-id-29006 .wd-page-content,
body.page-id-29006 .main-page-wrapper,
body.page-id-29006 #main-content,
body.page-id-29006 .content-layout-wrapper {
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: 100% !important;
}

/* FOOTER */

.elementor-element-438a1e88.wd-section-stretch {
    width: 100vw !important;
    max-width: 100vw !important;
}

/* LANDING PAGE */

/* SECTION INTERVENTION */

.fieri-steps,
.fieri-steps * {
  box-sizing: border-box; /* Inclut les padding et bordures dans la largeur réelle */
}

.fieri-steps {
  width: 100vw; /* Force la section à prendre toute la largeur de l’écran */
  max-width: 100vw; /* Empêche la section de dépasser la largeur de l’écran */
  margin-left: calc(50% - 50vw); /* Sort la section du conteneur Elementor pour l’aligner à gauche de l’écran */
  margin-right: calc(50% - 50vw); /* Sort la section du conteneur Elementor pour l’aligner à droite de l’écran */
  background: #2b2b28; /* Applique le fond sombre */
  color: #ffffff; /* Définit la couleur de texte par défaut en blanc */
  padding: 80px 8vw; /* Ajoute l’espace interne en haut, bas et côtés */
  font-family: inherit; /* Reprend la police du site */
  overflow: hidden; /* Cache les débordements visuels */
}

.fieri-steps-inner {
  width: 100%; /* Prend toute la largeur disponible */
  max-width: 1180px; /* Limite la largeur du contenu */
  margin: 0 auto; /* Centre le contenu dans la section */
  display: grid; /* Active la grille de mise en page */
  grid-template-columns: 0.9fr 1.1fr; /* Crée deux colonnes avec la timeline un peu plus large */
  gap: 70px; /* Ajoute l’espace entre les deux colonnes */
  align-items: stretch; /* Étire les deux colonnes à la même hauteur */
}

.fieri-steps-left {
  height: 100%; /* Prend toute la hauteur de la colonne */
  display: flex; /* Active l’alignement flexible */
  flex-direction: column; /* Place les éléments les uns sous les autres */
  justify-content: center; /* Centre le titre et le texte verticalement */
  align-self: stretch; /* Étire la colonne gauche sur toute la hauteur */
  transform: translateY(-20px); /* Remonte légèrement le bloc pour un meilleur équilibre visuel */
}

.fieri-steps-line {
  width: 48px; /* Définit la largeur du petit trait vert */
  height: 4px; /* Définit l’épaisseur du petit trait vert */
  background: #008b34; /* Applique le vert Fieri */
  border-radius: 999px; /* Arrondit complètement le trait */
  margin-bottom: 28px; /* Ajoute l’espace sous le trait */
}

.fieri-steps-title {
  color: #ffffff; /* Met le titre en blanc */
  font-size: 44px; /* Définit la taille du titre sur desktop */
  line-height: 1.1; /* Réduit l’espace entre les lignes du titre */
  font-weight: 900; /* Met le titre en graisse forte */
  margin: 0 0 18px; /* Retire les marges par défaut et ajoute un espace dessous */
  text-transform: uppercase; /* Passe le titre en majuscules */
  letter-spacing: -0.8px; /* Resserre légèrement les lettres */
}

.fieri-steps-title span {
  color: #008b34; /* Met le mot intervention en vert */
}

.fieri-steps-intro {
  color: #f1e7d8; /* Applique un blanc chaud au sous-titre */
  font-size: 18px; /* Définit la taille du sous-titre */
  line-height: 1.55; /* Améliore la lisibilité du sous-titre */
  margin: 0; /* Supprime les marges par défaut */
  max-width: 360px; /* Limite la largeur du sous-titre */
}

.fieri-timeline {
  position: relative; /* Sert de base pour les éléments positionnés */
  width: 100%; /* Prend toute la largeur de la colonne */
}

.fieri-step {
  position: relative; /* Sert de base à la ligne verticale entre les étapes */
  display: grid; /* Active la grille pour le numéro et le texte */
  grid-template-columns: 52px 1fr; /* Définit une colonne pour le rond et une pour le texte */
  gap: 22px; /* Ajoute l’espace entre le rond et le texte */
  margin-bottom: 42px; /* Ajoute l’espace entre les étapes */
}

.fieri-step:last-of-type {
  margin-bottom: 0; /* Retire l’espace sous la dernière étape */
}

.fieri-step:not(:last-of-type)::after {
  content: ""; /* Génère la ligne verticale entre les étapes */
  position: absolute; /* Place la ligne précisément */
  left: 25px; /* Centre la ligne sous le rond */
  top: 58px; /* Démarre la ligne sous le rond */
  width: 2px; /* Définit l’épaisseur de la ligne */
  height: calc(100% + 24px); /* Étend la ligne jusqu’à l’étape suivante */
  background: rgba(255, 255, 255, 0.18); /* Applique une ligne blanche transparente */
}

.fieri-step-number {
  width: 52px; /* Définit la largeur du rond */
  height: 52px; /* Définit la hauteur du rond */
  border-radius: 50%; /* Transforme le bloc en cercle */
  background: #008b34; /* Applique le vert sur le rond */
  color: #ffffff; /* Met le numéro en blanc */
  display: flex; /* Active le centrage du numéro */
  align-items: center; /* Centre verticalement le numéro */
  justify-content: center; /* Centre horizontalement le numéro */
  font-size: 19px; /* Définit la taille du numéro */
  font-weight: 900; /* Met le numéro en graisse forte */
  position: relative; /* Garde le rond au-dessus de la ligne */
  z-index: 2; /* Place le rond au-dessus de la ligne verticale */
}

.fieri-step-content h3 {
  color: #ffffff; /* Met le titre de l’étape en blanc */
  font-size: 17px; /* Définit la taille du titre de l’étape */
  line-height: 1.2; /* Réduit l’espace entre les lignes du titre */
  font-weight: 900; /* Met le titre en graisse forte */
  margin: 0 0 8px; /* Supprime la marge haute et ajoute un espace dessous */
  text-transform: uppercase; /* Passe le titre en majuscules */
}

.fieri-step-content p {
  color: #f1e7d8; /* Applique un blanc chaud au texte */
  font-size: 16px; /* Définit la taille du texte */
  line-height: 1.55; /* Améliore la lisibilité du paragraphe */
  margin: 0; /* Supprime les marges par défaut */
  max-width: 560px; /* Limite la largeur du texte */
}

.fieri-steps-cta {
  display: inline-flex; /* Affiche le bouton en ligne flexible */
  align-items: center; /* Centre le contenu verticalement */
  justify-content: center; /* Centre le contenu horizontalement */
  gap: 10px; /* Ajoute l’espace entre l’icône et le texte */
  margin-top: 34px; /* Ajoute l’espace au-dessus du bouton */
  margin-left: 74px; /* Aligne le bouton avec le texte de la timeline */
  background: #e60000; /* Applique le rouge vif du CTA */
  color: #ffffff !important; /* Force le texte du bouton en blanc */
  text-decoration: none !important; /* Supprime le soulignement du lien */
  padding: 18px 30px; /* Ajoute l’espace interne du bouton */
  border-radius: 10px; /* Arrondit les angles du bouton */
  font-size: 16px; /* Définit la taille du texte du bouton */
  font-weight: 900; /* Met le texte du bouton en graisse forte */
  text-transform: uppercase; /* Passe le texte du bouton en majuscules */
  box-shadow: 0 16px 36px rgba(230, 0, 0, 0.36); /* Ajoute une ombre rouge */
  transition: all 0.2s ease; /* Ajoute une transition fluide au survol */
}

.fieri-steps-cta:hover {
  background: #cc1414; /* Assombrit le bouton au survol */
  color: #ffffff !important; /* Garde le texte blanc au survol */
  transform: translateY(-2px); /* Remonte légèrement le bouton au survol */
  box-shadow: 0 20px 44px rgba(204, 20, 20, 0.42); /* Renforce l’ombre au survol */
}

.fieri-steps-cta span {
  font-size: 20px; /* Définit la taille de l’icône téléphone */
  line-height: 1; /* Évite un décalage vertical de l’icône */
}


/* SECTION DANGER */

.fieri-danger-section {
  width: 100vw; /* Force la section à prendre toute la largeur de l’écran */
  max-width: 100vw; /* Empêche la section de dépasser la largeur visible */
  margin-left: calc(50% - 50vw); /* Aligne la section au bord gauche de l’écran malgré le conteneur Elementor */
  margin-right: calc(50% - 50vw); /* Aligne la section au bord droit de l’écran malgré le conteneur Elementor */
  background: #f7f7f7; /* Applique le fond gris clair autour du bloc */
  padding: 60px 6vw; /* Garde le même espace en haut et en bas */
  box-sizing: border-box; /* Inclut les padding dans la largeur totale */
  overflow: hidden; /* Cache les débordements éventuels */
}

.fieri-danger-section * {
  box-sizing: border-box; /* Applique le bon calcul de largeur à tous les éléments internes */
}

.fieri-danger-inner {
  width: 100%; /* Prend toute la largeur disponible */
  max-width: 1240px; /* Limite la largeur maximale du bloc central */
  margin: 0 auto; /* Centre le bloc dans la section */
  display: grid; /* Active la mise en page en grille */
  grid-template-columns: 1.05fr 0.95fr; /* Donne un peu plus de place au texte qu’à l’image */
  gap: 0; /* Colle le bloc blanc à l’image sans espace entre les deux */
  align-items: stretch; /* Force les deux colonnes à avoir la même hauteur */
  background: #ffffff; /* Transforme l’ensemble texte plus image en un seul bloc blanc */
  border-radius: 22px; /* Arrondit les angles du bloc global */
  overflow: hidden; /* Coupe l’image et le contenu dans les coins arrondis */
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.08); /* Ajoute une ombre douce sur toute la section */
}

.fieri-danger-content {
  background: #ffffff; /* Garde le fond du bloc texte en blanc */
  border-left: 6px solid #e60000; /* Ajoute la bordure rouge à gauche du bloc texte */
  border-radius: 0; /* Retire l’arrondi séparé du bloc texte */
  padding: 44px; /* Ajoute l’espace interne autour du contenu */
  box-shadow: none; /* Supprime l’ombre séparée du bloc texte */
  display: flex; /* Active l’alignement flexible */
  flex-direction: column; /* Place les éléments les uns sous les autres */
  justify-content: center; /* Centre le contenu verticalement */
}

.fieri-danger-kicker {
  display: inline-block; /* Garde le badge à la largeur du texte */
  width: fit-content; /* Ajuste la largeur du badge à son contenu */
  background: rgba(230, 0, 0, 0.10); /* Ajoute un fond rouge clair au badge */
  color: #e60000; /* Met le texte du badge en rouge */
  padding: 8px 14px; /* Ajoute l’espace interne du badge */
  border-radius: 999px; /* Transforme le badge en pilule */
  font-size: 13px; /* Définit la taille du texte du badge */
  font-weight: 900; /* Met le badge en gras */
  text-transform: uppercase; /* Passe le badge en majuscules */
  margin-bottom: 18px; /* Ajoute l’espace sous le badge */
}

.fieri-danger-content h2 {
  color: #111111; /* Met le titre en noir */
  font-size: 42px; /* Définit la taille du titre sur desktop */
  line-height: 1.08; /* Resserre l’interligne du titre */
  font-weight: 900; /* Met le titre en gras fort */
  margin: 0 0 16px 0; /* Supprime la marge haute et ajoute un espace sous le titre */
}

.fieri-danger-intro {
  color: #333333; /* Met l’introduction en gris foncé */
  font-size: 17px; /* Définit la taille du texte d’introduction */
  line-height: 1.6; /* Améliore la lisibilité de l’introduction */
  margin: 0 0 28px 0; /* Ajoute l’espace sous l’introduction */
  max-width: 650px; /* Limite la largeur de l’introduction */
}

.fieri-danger-list {
  display: grid; /* Active une grille verticale pour les points */
  gap: 18px; /* Ajoute l’espace entre les lignes */
  margin-bottom: 32px; /* Ajoute l’espace avant le bouton */
}

.fieri-danger-item {
  display: grid; /* Active une grille pour l’icône et le texte */
  grid-template-columns: 34px 1fr; /* Définit une colonne pour l’icône et une colonne pour le texte */
  gap: 14px; /* Ajoute l’espace entre l’icône et le texte */
  align-items: start; /* Aligne l’icône en haut du texte */
}

.fieri-danger-item span {
  width: 30px; /* Définit la largeur du rond rouge */
  height: 30px; /* Définit la hauteur du rond rouge */
  background: #e60000; /* Met le rond en rouge */
  color: #ffffff; /* Met la croix en blanc */
  border-radius: 50%; /* Transforme le bloc en cercle */
  display: flex; /* Active le centrage de la croix */
  align-items: center; /* Centre la croix verticalement */
  justify-content: center; /* Centre la croix horizontalement */
  font-size: 15px; /* Définit la taille de la croix */
  font-weight: 900; /* Met la croix en gras */
  margin-top: 2px; /* Ajuste l’alignement vertical de l’icône */
}

.fieri-danger-item p {
  color: #111111; /* Met le texte en noir */
  font-size: 17px; /* Définit la taille du texte */
  line-height: 1.55; /* Améliore la lisibilité du texte */
  margin: 0; /* Supprime les marges par défaut */
}

.fieri-danger-item strong {
  font-weight: 900; /* Renforce les mots importants en gras */
}

.fieri-danger-btn {
  display: inline-flex; /* Affiche le bouton en flexible */
  width: fit-content; /* Garde le bouton à la largeur du texte */
  align-items: center; /* Centre le texte verticalement */
  justify-content: center; /* Centre le texte horizontalement */
  background: #e60000; /* Applique le rouge vif au bouton */
  color: #ffffff !important; /* Force le texte du bouton en blanc */
  text-decoration: none !important; /* Supprime le soulignement du lien */
  padding: 16px 30px; /* Ajoute l’espace interne du bouton */
  border-radius: 8px; /* Arrondit les angles du bouton */
  font-size: 16px; /* Définit la taille du texte du bouton */
  font-weight: 900; /* Met le texte du bouton en gras fort */
  text-transform: uppercase; /* Passe le texte du bouton en majuscules */
  box-shadow: 0 14px 30px rgba(230, 0, 0, 0.28); /* Ajoute une ombre rouge douce */
  transition: all 0.2s ease; /* Rend le survol plus fluide */
}

.fieri-danger-btn:hover {
  background: #cc1414; /* Assombrit le bouton au survol */
  color: #ffffff !important; /* Garde le texte blanc au survol */
  transform: translateY(-2px); /* Remonte légèrement le bouton au survol */
}

.fieri-danger-image-wrap {
  width: 100%; /* Prend toute la largeur de la colonne image */
  min-height: 560px; /* Donne une hauteur minimale à l’image */
  border-radius: 0; /* Supprime l’arrondi séparé de l’image */
  overflow: hidden; /* Coupe l’image proprement dans le bloc global */
  box-shadow: none; /* Supprime l’ombre séparée de l’image */
}

.fieri-danger-image-wrap img {
  width: 100%; /* Force l’image à prendre toute la largeur */
  height: 100%; /* Force l’image à remplir la hauteur */
  min-height: 560px; /* Garde une hauteur cohérente avec le bloc */
  object-fit: cover; /* Recadre l’image sans la déformer */
  object-position: center; /* Centre le cadrage de l’image */
  display: block; /* Supprime l’espace blanc sous l’image */
}

/* RESPONSIVE TABLETTE */

@media (max-width: 1024px) {
  .fieri-danger-section {
    padding: 48px 5vw; /* Garde un espace équilibré sur tablette */
  }

  .fieri-danger-inner {
    grid-template-columns: 1fr; /* Passe le texte et l’image en une seule colonne */
  }

  .fieri-danger-content {
    padding: 36px; /* Réduit l’espace interne du bloc texte */
  }

  .fieri-danger-content h2 {
    font-size: 36px; /* Réduit la taille du titre sur tablette */
  }

  .fieri-danger-image-wrap,
  .fieri-danger-image-wrap img {
    min-height: 460px; /* Réduit la hauteur de l’image sur tablette */
  }
}

/* RESPONSIVE MOBILE */

@media (max-width: 767px) {
  .fieri-danger-section {
    padding: 34px 18px; /* Garde un espace propre en haut et en bas sur mobile */
  }

  .fieri-danger-content {
    padding: 26px 22px; /* Réduit l’espace interne du bloc texte sur mobile */
    border-left-width: 5px; /* Réduit légèrement la bordure rouge sur mobile */
  }

  .fieri-danger-kicker {
    font-size: 11px; /* Réduit la taille du badge sur mobile */
    padding: 7px 12px; /* Réduit l’espace interne du badge sur mobile */
    margin-bottom: 14px; /* Réduit l’espace sous le badge */
  }

  .fieri-danger-content h2 {
    font-size: 28px; /* Réduit le titre sur mobile */
  }

  .fieri-danger-intro {
    font-size: 15px; /* Réduit le texte d’introduction sur mobile */
    margin-bottom: 22px; /* Réduit l’espace sous l’introduction */
  }

  .fieri-danger-list {
    gap: 16px; /* Réduit l’espace entre les points sur mobile */
    margin-bottom: 26px; /* Réduit l’espace avant le bouton */
  }

  .fieri-danger-item {
    grid-template-columns: 30px 1fr; /* Réduit la colonne de l’icône sur mobile */
    gap: 12px; /* Réduit l’espace entre l’icône et le texte */
  }

  .fieri-danger-item span {
    width: 26px; /* Réduit la largeur du rond rouge */
    height: 26px; /* Réduit la hauteur du rond rouge */
    font-size: 13px; /* Réduit la taille de la croix */
  }

  .fieri-danger-item p {
    font-size: 15px; /* Réduit la taille du texte sur mobile */
    line-height: 1.5; /* Garde une bonne lisibilité sur mobile */
  }

  .fieri-danger-btn {
    width: 100%; /* Met le bouton en pleine largeur sur mobile */
    padding: 15px 18px; /* Ajuste l’espace interne du bouton sur mobile */
    font-size: 14px; /* Réduit la taille du texte du bouton */
    text-align: center; /* Centre le texte dans le bouton */
  }

  .fieri-danger-image-wrap,
  .fieri-danger-image-wrap img {
    min-height: 380px; /* Réduit la hauteur de l’image sur mobile */
  }
}

/* RESPONSIVE TRÈS PETIT MOBILE */

@media (max-width: 380px) {
  .fieri-danger-section {
    padding: 28px 14px; /* Réduit l’espace de section sur petit mobile */
  }

  .fieri-danger-content {
    padding: 22px 18px; /* Réduit l’espace interne du bloc sur petit mobile */
  }

  .fieri-danger-content h2 {
    font-size: 25px; /* Réduit le titre sur petit mobile */
  }

  .fieri-danger-item p {
    font-size: 14px; /* Réduit le texte des points sur petit mobile */
  }

  .fieri-danger-image-wrap,
  .fieri-danger-image-wrap img {
    min-height: 330px; /* Réduit la hauteur de l’image sur petit mobile */
  }
}

.fieri-alert-full {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

.fieri-alert-bar {
  width: 100%;
  background: #d90000;
  color: #ffffff;
  padding: 14px 20px;
  text-align: center;
  font-size: 17px;
  font-weight: 900;
  line-height: 1.35;
  box-sizing: border-box;
  border: none;
}

.fieri-alert-icon {
  display: inline-block;
  margin-right: 6px;
  color: #ffffff;
  font-size: 18px;
  vertical-align: middle;
}

@media (max-width: 767px) {
  .fieri-alert-bar {
    font-size: 14px;
    padding: 12px 14px;
  }
}

.fieri-image-article {
  width: 100%;
  max-width: 900px;
  margin: 32px auto;
  box-sizing: border-box;
}

.fieri-image-article img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  border-radius: 18px;
  object-fit: cover;
}

.fieri-image-article .wp-caption,
.fieri-image-article figure,
.fieri-image-article .caption {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto;
  box-sizing: border-box;
}

.fieri-image-article .wp-caption-text,
.fieri-image-article figcaption {
  max-width: 820px;
  margin: 10px auto 0;
  font-size: 14px;
  line-height: 1.5;
  color: #555555;
  text-align: center;
}

.fieri-image-article img[width],
.fieri-image-article img[height] {
  width: 100% !important;
  height: auto !important;
}

@media (max-width: 768px) {
  .fieri-image-article {
    max-width: 100%;
    margin: 24px auto;
  }

  .fieri-image-article img {
    border-radius: 14px;
  }

  .fieri-image-article .wp-caption-text,
  .fieri-image-article figcaption {
    font-size: 13px;
    padding: 0 10px;
  }
}

@media (max-width: 480px) {
  .fieri-image-article {
    margin: 20px auto;
  }

  .fieri-image-article img {
    border-radius: 12px;
  }
}

/* Correctif final Elementor : contenu centré, fonds pleine largeur. */
body .fieri-derat-section,
body .fieri-derat-brand-section,
body .fieri-derat-final,
body .fieri-derat-index {
  position: relative !important;
  width: 100% !important;
  max-width: 100% !important;
  margin-right: 0 !important;
  margin-left: 0 !important;
  isolation: isolate;
  overflow: visible;
}

body .fieri-derat-section::before,
body .fieri-derat-brand-section::before,
body .fieri-derat-final::before,
body .fieri-derat-index::before {
  position: absolute;
  z-index: -1;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 100vw;
  width: 100dvw;
  background: inherit;
  content: "";
  pointer-events: none;
  transform: translateX(-50%);
}

body .fieri-derat-section > .fieri-derat-shell,
body .fieri-derat-brand-section > .fieri-derat-shell,
body .fieri-derat-final > .fieri-derat-shell {
  margin-right: auto !important;
  margin-left: auto !important;
}

body .fieri-derat-hero #fieri-derat-title {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

body .fieri-derat-hero #fieri-derat-title span {
  color: #d8ddd9 !important;
  -webkit-text-fill-color: #d8ddd9 !important;
}

/* ========================================================================== */
/* HERO PREMIUM — DÉRATISATION                                                */
/* Une seule scène immersive ; aucun style ci-dessous ne cible les sections.  */
/* ========================================================================== */

body.fieri-derat-preview .fieri-derat-header,
body.fieri-derat-preview .fieri-derat-pagehead {
  display: none !important;
}

body .fieri-premium-hero {
  --fieri-green: #056823;
  --fieri-red: #cc1414;
  --fieri-ink: #050705;
  --fieri-ivory: #f4f1e8;
  position: relative !important;
  width: 100vw !important;
  max-width: none !important;
  min-height: 696px;
  min-height: clamp(696px, 79svh, 804px);
  margin: 0 calc(50% - 50vw) !important;
  padding: 0 !important;
  overflow: hidden;
  isolation: isolate;
  color: var(--fieri-ivory);
  background: linear-gradient(122deg, #056823 0%, #06190b 54%, #030504 100%);
  font-family: "Karla", Arial, sans-serif;
}

body .fieri-premium-hero *,
body .fieri-premium-hero *::before,
body .fieri-premium-hero *::after {
  box-sizing: border-box;
}

body .fieri-premium-hero a {
  color: inherit;
  text-decoration: none;
}

body .fieri-premium-hero__veil {
  position: absolute;
  inset: 0;
}

body .fieri-premium-hero__veil {
  z-index: -2;
  background: linear-gradient(180deg, rgba(0, 0, 0, .22) 0%, transparent 44%, rgba(0, 0, 0, .34) 100%);
}

body .fieri-premium-hero__veil::after {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .13;
  pointer-events: none;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.42'/%3E%3C/svg%3E");
  mix-blend-mode: soft-light;
}

body .fieri-premium-hero__nav {
  position: absolute;
  z-index: 6;
  top: 0;
  left: clamp(22px, 4.4vw, 84px);
  right: clamp(22px, 4.4vw, 84px);
  min-height: 108px;
  display: grid;
  grid-template-columns: 78px 1fr auto;
  align-items: center;
  gap: clamp(24px, 4vw, 78px);
  border-bottom: 1px solid rgba(244, 241, 232, .28);
}

body .fieri-premium-hero__brand {
  width: 58px;
  height: 66px;
  display: grid;
  place-items: center;
}

body .fieri-premium-hero__brand img {
  display: block !important;
  width: 58px !important;
  height: 58px !important;
  max-width: 58px !important;
  object-fit: contain;
  filter: drop-shadow(0 6px 16px rgba(0, 0, 0, .34));
}

body .fieri-premium-hero__menu {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: clamp(20px, 2.6vw, 48px);
}

body .fieri-premium-hero__menu a {
  position: relative;
  font-family: "Karla", Arial, sans-serif;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: .08em;
  text-transform: uppercase;
  opacity: .82;
  transition: opacity .2s ease;
}

body .fieri-premium-hero__menu a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 100%;
  bottom: -9px;
  height: 1px;
  background: #65cf86;
  transition: right .25s ease;
}

body .fieri-premium-hero__menu a:hover,
body .fieri-premium-hero__menu a:focus-visible {
  opacity: 1;
}

body .fieri-premium-hero__menu a:hover::after,
body .fieri-premium-hero__menu a:focus-visible::after {
  right: 0;
}

body .fieri-premium-hero__phone {
  min-height: 48px;
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 0 20px;
  border: 1px solid rgba(244, 241, 232, .36);
  border-radius: 999px;
  background: rgba(5, 7, 5, .34);
  backdrop-filter: blur(10px);
  transition: background .2s ease, border-color .2s ease;
}

body .fieri-premium-hero__phone:hover,
body .fieri-premium-hero__phone:focus-visible {
  background: var(--fieri-red);
  border-color: var(--fieri-red);
}

body .fieri-premium-hero__phone span {
  color: #70d68d;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}

body .fieri-premium-hero__phone strong {
  color: #fff;
  font-family: "Karla", Arial, sans-serif;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .035em;
  white-space: nowrap;
}

body .fieri-premium-hero__phone:hover span,
body .fieri-premium-hero__phone:focus-visible span {
  color: #fff;
}

body .fieri-premium-hero__rule {
  position: absolute;
  z-index: 2;
  top: 108px;
  bottom: 0;
  left: clamp(22px, 4.4vw, 84px);
  width: 1px;
  background: rgba(244, 241, 232, .20);
}

body .fieri-premium-hero__vertical {
  position: absolute;
  z-index: 3;
  top: 53%;
  left: clamp(5px, 1.45vw, 28px);
  margin: 0 !important;
  color: rgba(244, 241, 232, .56) !important;
  font-size: 9px !important;
  font-weight: 800;
  letter-spacing: .28em;
  writing-mode: vertical-rl;
  transform: translateY(-50%) rotate(180deg);
}

body .fieri-premium-hero__folio {
  position: absolute;
  z-index: -1;
  top: 12%;
  right: -1.5vw;
  color: transparent;
  font-family: "Poppins", "Karla", Arial, sans-serif;
  font-size: clamp(220px, 28vw, 520px);
  font-weight: 600;
  line-height: .8;
  letter-spacing: -.09em;
  -webkit-text-stroke: 1px rgba(244, 241, 232, .11);
  opacity: .72;
  user-select: none;
}

body .fieri-premium-hero__content {
  position: absolute;
  z-index: 4;
  left: clamp(58px, 8.3vw, 158px);
  right: clamp(26px, 4.5vw, 86px);
  top: clamp(88px, 10vh, 108px);
  max-width: 1120px;
}

body .fieri-premium-hero__eyebrow {
  display: flex;
  align-items: center;
  gap: 16px;
  margin: 0 0 clamp(20px, 2.8vh, 34px) !important;
  color: #fff !important;
  font-size: clamp(10px, .72vw, 12px) !important;
  font-weight: 800;
  line-height: 1.2 !important;
  letter-spacing: .16em;
  text-transform: uppercase;
}

body .fieri-premium-hero__eyebrow span {
  display: inline-grid;
  place-items: center;
  width: 32px;
  height: 32px;
  color: var(--fieri-ivory);
  border: 1px solid rgba(244, 241, 232, .38);
  border-radius: 50%;
  letter-spacing: 0;
}

body .fieri-premium-hero h1,
body .fieri-premium-hero #fieri-premium-hero-title {
  max-width: 1120px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: var(--fieri-ivory) !important;
  font-family: "Poppins", "Karla", Arial, sans-serif !important;
  font-size: clamp(68px, 9.2vw, 176px) !important;
  font-weight: 600 !important;
  line-height: .78 !important;
  letter-spacing: -.075em !important;
  text-transform: none !important;
  -webkit-text-fill-color: var(--fieri-ivory) !important;
  text-wrap: balance;
}

body .fieri-premium-hero h1 > span,
body .fieri-premium-hero h1 > em {
  display: block;
}

body .fieri-premium-hero h1 > span {
  line-height: .96 !important;
}

body .fieri-premium-hero h1 > em {
  margin-top: .22em;
  color: #fff !important;
  font-family: "Karla", Arial, sans-serif !important;
  font-size: .36em;
  font-style: normal;
  font-weight: 500;
  line-height: 1 !important;
  letter-spacing: -.045em;
  -webkit-text-fill-color: #fff !important;
}

body .fieri-premium-hero__intro {
  width: min(760px, 63vw);
  margin: clamp(32px, 4.2vh, 52px) 0 0 clamp(6px, 8.6vw, 166px);
  display: grid;
  grid-template-columns: minmax(240px, 1fr) auto;
  align-items: end;
  gap: clamp(28px, 4vw, 72px);
}

body .fieri-premium-hero__intro > p {
  margin: 0 !important;
  color: rgba(244, 241, 232, .80) !important;
  font-size: clamp(14px, 1vw, 17px) !important;
  font-weight: 400;
  line-height: 1.55 !important;
}

body .fieri-premium-hero__actions {
  display: flex;
  align-items: center;
  gap: 22px;
  white-space: nowrap;
}

body .fieri-premium-hero__cta {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  min-width: 192px;
  min-height: 58px;
  padding: 0 18px 0 22px;
  color: #fff !important;
  background: var(--fieri-red);
  border: 1px solid var(--fieri-red);
  border-radius: 999px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .02em;
  transition: transform .2s ease, background .2s ease;
}

body .fieri-premium-hero__cta span:last-child {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  color: var(--fieri-red);
  background: #fff;
  border-radius: 50%;
  font-size: 16px;
}

body .fieri-premium-hero__cta:hover,
body .fieri-premium-hero__cta:focus-visible {
  transform: translateY(-2px);
  background: #ad0f0f;
}

body .fieri-premium-hero__quote {
  position: relative;
  padding: 10px 0;
  color: #fff !important;
  font-size: 12px;
  font-weight: 800;
}

body .fieri-premium-hero__quote::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 4px;
  height: 1px;
  background: rgba(255, 255, 255, .72);
}

body .fieri-premium-hero__meta {
  position: static;
  z-index: auto;
  display: flex;
  align-items: center;
  width: max-content;
  max-width: 100%;
  margin: 12px 0 0 clamp(6px, 8.6vw, 166px);
  border-top: 1px solid rgba(244, 241, 232, .28);
}

body .fieri-premium-hero__meta span {
  min-height: 56px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 clamp(18px, 2.2vw, 38px);
  color: rgba(244, 241, 232, .62);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  border-right: 1px solid rgba(244, 241, 232, .22);
}

body .fieri-premium-hero__meta span:first-child {
  padding-left: 0;
}

body .fieri-premium-hero__meta b {
  color: #fff;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .02em;
}

body .fieri-premium-hero__scroll {
  position: absolute;
  z-index: 5;
  right: clamp(22px, 4.4vw, 84px);
  bottom: clamp(42px, 6vh, 70px);
  display: flex;
  align-items: center;
  gap: 14px;
  color: rgba(244, 241, 232, .72) !important;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}

body .fieri-premium-hero__scroll i {
  position: relative;
  width: 36px;
  height: 36px;
  border: 1px solid rgba(244, 241, 232, .36);
  border-radius: 50%;
}

body .fieri-premium-hero__scroll i::before,
body .fieri-premium-hero__scroll i::after {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

body .fieri-premium-hero__scroll i::before {
  top: 9px;
  width: 1px;
  height: 14px;
  background: #fff;
}

body .fieri-premium-hero__scroll i::after {
  bottom: 9px;
  width: 6px;
  height: 6px;
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  transform: translateX(-50%) rotate(45deg);
}

@media (max-width: 1080px) {
  body .fieri-premium-hero__nav {
    grid-template-columns: 66px 1fr auto;
    gap: 24px;
  }

  body .fieri-premium-hero__menu {
    gap: 18px;
  }

  body .fieri-premium-hero__intro {
    width: min(710px, 74vw);
    margin-left: 0;
  }

  body .fieri-premium-hero__scroll span {
    display: none;
  }
}

@media (max-width: 1080px) {
  body .fieri-premium-hero {
    min-height: 674px;
    min-height: clamp(674px, 81svh, 774px);
  }

  body .fieri-premium-hero__veil {
    background: linear-gradient(180deg, rgba(0, 0, 0, .26) 0%, transparent 42%, rgba(0, 0, 0, .30) 100%);
  }

  body .fieri-premium-hero__nav {
    left: 22px;
    right: 22px;
    min-height: 88px;
    grid-template-columns: 54px 1fr;
  }

  body .fieri-premium-hero__brand,
  body .fieri-premium-hero__brand img {
    width: 48px !important;
    height: 48px !important;
    max-width: 48px !important;
  }

  body .fieri-premium-hero__menu {
    display: none;
  }

  body .fieri-premium-hero__phone {
    justify-self: end;
    min-height: 44px;
    padding: 0 15px;
  }

  body .fieri-premium-hero__phone span {
    display: none;
  }

  body .fieri-premium-hero__rule {
    top: 88px;
    left: 22px;
  }

  body .fieri-premium-hero__vertical {
    display: none;
  }

  body .fieri-premium-hero__content {
    top: clamp(88px, 10vh, 108px);
    left: 42px;
    right: 22px;
  }

  body .fieri-premium-hero h1,
  body .fieri-premium-hero #fieri-premium-hero-title {
    font-size: clamp(62px, 14.2vw, 104px) !important;
    line-height: .84 !important;
  }

  body .fieri-premium-hero h1 > em {
    max-width: 80vw;
    margin-top: .32em;
    font-size: .39em;
    line-height: 1.02 !important;
  }

  body .fieri-premium-hero__intro {
    width: min(520px, calc(100vw - 68px));
    margin-top: 34px;
    grid-template-columns: 1fr;
    gap: 24px;
  }

  body .fieri-premium-hero__intro > p {
    max-width: 410px;
  }

  body .fieri-premium-hero__meta {
    margin: 10px 0 0;
    max-width: calc(100vw - 64px);
  }

  body .fieri-premium-hero__meta span {
    min-height: 48px;
    padding: 0 15px;
  }

  body .fieri-premium-hero__scroll {
    right: 22px;
    bottom: 42px;
  }
}

@media (max-width: 520px) {
  body .fieri-premium-hero {
    min-height: 654px;
    min-height: clamp(654px, 83svh, 734px);
  }

  body .fieri-premium-hero__veil {
    background: linear-gradient(180deg, rgba(0, 0, 0, .28) 0%, transparent 40%, rgba(0, 0, 0, .32) 100%);
  }

  body .fieri-premium-hero__content {
    top: 72px;
    left: 30px;
  }

  body .fieri-premium-hero__eyebrow {
    align-items: flex-start;
    gap: 10px;
    max-width: 270px;
    line-height: 1.4 !important;
  }

  body .fieri-premium-hero__eyebrow span {
    flex: 0 0 28px;
    width: 28px;
    height: 28px;
  }

  body .fieri-premium-hero h1,
  body .fieri-premium-hero #fieri-premium-hero-title {
    font-size: clamp(52px, 16vw, 76px) !important;
    letter-spacing: -.07em !important;
  }

  body .fieri-premium-hero h1 > em {
    max-width: 88vw;
    font-size: .42em;
  }

  body .fieri-premium-hero__intro {
    width: calc(100vw - 52px);
    margin-top: 28px;
    gap: 20px;
  }

  body .fieri-premium-hero__intro > p {
    font-size: 13px !important;
    line-height: 1.48 !important;
  }

  body .fieri-premium-hero__actions {
    gap: 16px;
    flex-wrap: wrap;
  }

  body .fieri-premium-hero__cta {
    min-width: 178px;
    min-height: 52px;
    padding-left: 18px;
  }

  body .fieri-premium-hero__meta {
    margin-top: 8px;
    max-width: calc(100vw - 54px);
  }

  body .fieri-premium-hero__meta span {
    display: block;
    min-height: 44px;
    padding: 9px 13px 0;
    font-size: 8px;
    line-height: 1.2;
  }

  body .fieri-premium-hero__meta b {
    display: block;
    margin-bottom: 3px;
    font-size: 10px;
  }

  body .fieri-premium-hero__scroll {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  body .fieri-premium-hero *,
  body .fieri-premium-hero *::before,
  body .fieri-premium-hero *::after {
    scroll-behavior: auto !important;
    transition: none !important;
  }
}
