/* ================= IMAGINOVE — design system ================= */
:root{
  --ima-red:#b0201a; --ima-red-dk:#8e1914;
  --ima-grey:#575756; --ima-grey-dk:#3f3f3e;
  --ima-ink:#3c3c3b; --ima-muted:#6f6f6e;
  --ima-line:#e8e8e5; --ima-soft:#f6f5f3;
}
#page-container,body{background:#fff}
body,.et_pb_text,p,li,.et_pb_blurb_description{font-family:Inter,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--ima-ink)}
h1,h2,h3,h4,h5,h6,.et_pb_module h1,.et_pb_module h2,.et_pb_module h3,.et_pb_module h4{
  font-family:Poppins,Helvetica,Arial,sans-serif;color:var(--ima-grey);letter-spacing:-.01em}
.et_pb_section h2{font-size:34px;line-height:1.2;font-weight:700;margin-bottom:.2em}
@media(max-width:782px){.et_pb_section h2{font-size:25px}}

/* ---------- header ---------- */
#main-header{box-shadow:0 1px 0 rgba(0,0,0,.05),0 10px 34px rgba(0,0,0,.05)}
#logo{max-height:46px!important}
.et-fixed-header #logo{max-height:38px!important}
#et-top-navigation{padding-top:26px!important}
.et-fixed-header #et-top-navigation{padding-top:0!important}
#top-menu li a{font-family:Poppins,sans-serif;font-weight:600;font-size:14px}
#top-menu>li>a:hover,#top-menu>li.current-menu-item>a,#top-menu>li.current_page_item>a{color:var(--ima-red)!important;opacity:1}
#top-menu li.menu-item-cta{margin-left:8px}
#top-menu li.menu-item-cta a{background:var(--ima-red);color:#fff!important;border-radius:7px;padding:10px 22px!important;transition:.18s}
#top-menu li.menu-item-cta a:hover{background:var(--ima-red-dk)}
@media(max-width:980px){#top-menu li.menu-item-cta a{background:none;color:var(--ima-grey)!important;padding:10px 5%!important}}

/* ---------- section rhythm ---------- */
.et_pb_section{padding:76px 0}
.et_pb_section .et_pb_row{padding:0}
.et_pb_section .et_pb_row+.et_pb_row{margin-top:8px}
@media(max-width:980px){.et_pb_section{padding:54px 0}}
.et_pb_row{max-width:1180px!important}
/* kill the empty first column padding that creates big gaps */
.et_pb_row .et_pb_column_4_4:first-child:last-child{padding-bottom:14px}

/* eyebrow (first small red text in a heading block) */
.et_pb_text[style*="letter-spacing"],.et_pb_text.et_pb_text_align_center>p:first-child{}
/* ---------- HERO ---------- */
#page-container .et_pb_section.ima-hero{
  background-color:#3a3a39!important;
  background-image:linear-gradient(118deg,rgba(46,46,45,.82) 22%,rgba(46,46,45,.30) 60%,rgba(176,32,26,.42)),
    url(https://imaginove.winning-digital.sn/wp-content/uploads/2026/08/hero-bg.jpg)!important;
  background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important;
  padding:118px 0 112px!important}
#page-container .ima-hero .et_pb_row{max-width:860px!important}
#page-container .ima-hero h1{font-size:50px;line-height:1.12;font-weight:700;color:#fff!important;letter-spacing:-.02em;margin-bottom:6px}
#page-container .ima-hero .et_pb_text+.et_pb_text{font-size:18px;color:rgba(255,255,255,.9)!important;margin-top:10px}
#page-container .ima-hero .et_pb_button{margin-top:22px!important;padding:15px 38px!important;font-size:15px}
@media(max-width:980px){.ima-hero{padding:96px 0 80px!important}#page-container .ima-hero h1{font-size:31px}}

/* ---------- CARDS (blurbs) ---------- */
.et_pb_blurb{background:#fff;border:1px solid var(--ima-line);border-radius:14px;
  padding:34px 28px!important;height:100%;box-shadow:0 1px 2px rgba(16,16,16,.04);
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s}
.et_pb_blurb:hover{transform:translateY(-6px);box-shadow:0 20px 44px rgba(87,87,86,.16);border-color:#fff}
/* brand icon badge — CSS-drawn, independent of the Divi icon font */
.et_pb_blurb .et_pb_main_blurb_image{
  margin:0 auto 20px!important;min-height:0;position:relative;
  width:62px;height:62px;border-radius:16px;background:rgba(176,32,26,.10);
  display:flex;align-items:center;justify-content:center;transition:.22s}
.et_pb_blurb .et_pb_main_blurb_image:after{
  content:"";width:24px;height:24px;border-radius:7px;background:var(--ima-red);transition:.22s}
.et_pb_blurb:hover .et_pb_main_blurb_image{background:var(--ima-red)}
.et_pb_blurb:hover .et_pb_main_blurb_image:after{background:#fff}
.et_pb_blurb .et-pb-icon,.et_pb_blurb .et_pb_main_blurb_image span,
.et_pb_blurb .et_pb_main_blurb_image img{display:none!important}
.et_pb_blurb .et_pb_module_header,.et_pb_blurb h4{font-size:19px!important;font-weight:600;color:var(--ima-grey)!important;margin-bottom:9px}
.et_pb_blurb .et_pb_blurb_description{color:var(--ima-muted);font-size:15px;line-height:1.72}
.et_pb_blurb .et_pb_button{margin-top:16px!important;padding:6px 0!important;background:none!important;
  border:none!important;color:var(--ima-red)!important;font-weight:600;box-shadow:none!important}
.et_pb_blurb .et_pb_button:hover{transform:none;letter-spacing:.02em}
.et_pb_column{padding-bottom:30px}
.et_pb_row .et_pb_column .et_pb_blurb{margin-bottom:0}

/* ---------- dark bands ---------- */
#page-container .et_pb_section.ima-dark{background:var(--ima-grey-dk)!important}
#page-container .ima-dark h1,#page-container .ima-dark h2,#page-container .ima-dark h3,#page-container .ima-dark .et_pb_text,#page-container .ima-dark p{color:#fff!important}
#page-container .ima-dark .et_pb_text a{color:#fff;text-decoration:underline}
#page-container .ima-dark .et_pb_number_counter .title{color:rgba(255,255,255,.75)!important}
.et_pb_number_counter .percent p{font-family:Poppins,sans-serif!important;font-weight:700!important;
  color:var(--ima-red)!important;font-size:50px!important}
#page-container .ima-dark .et_pb_number_counter .percent p{color:#ff6f64!important}
.et_pb_number_counter .title{font-size:13px!important;letter-spacing:.05em;text-transform:uppercase;font-weight:600}

/* ---------- CTA band ---------- */
#page-container .et_pb_section.ima-cta{
  background-image:linear-gradient(90deg,rgba(176,32,26,.95),rgba(142,25,20,.95)),
    url(https://imaginove.winning-digital.sn/wp-content/uploads/2026/08/cta-bg.jpg)!important;
  background-size:cover!important;background-position:center!important;padding:76px 0!important}
#page-container .ima-cta h2,#page-container .ima-cta .et_pb_text{color:#fff!important}
#page-container .ima-cta .et_pb_button{background:#fff!important;color:var(--ima-red)!important;border:none!important;font-weight:700}
#page-container .ima-cta .et_pb_button:hover{background:#f0f0f0!important;transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,0,0,.2)}

/* ---------- buttons (global) ---------- */
.et_pb_button{font-family:Poppins,sans-serif!important;font-weight:600!important;font-size:14px;
  letter-spacing:.02em;border-radius:8px;padding:14px 32px;
  transition:transform .18s ease,background-color .18s,box-shadow .18s}
.et_pb_section .et_pb_button:not(.et_pb_more_button):not(.et_pb_blurb .et_pb_button){
  background:var(--ima-red);color:#fff;border:2px solid var(--ima-red)}
.et_pb_button:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(176,32,26,.26)}

/* ---------- about image ---------- */
.et_pb_image img{border-radius:14px}
.et_pb_column .et_pb_image{box-shadow:none}

/* ---------- filterable portfolio ---------- */
.et_pb_filterable_portfolio .et_pb_portfolio_filters li a{font-family:Poppins,sans-serif;font-weight:600;
  font-size:13px;border-radius:20px;padding:7px 16px;color:var(--ima-muted)}
.et_pb_filterable_portfolio .et_pb_portfolio_filters li a.active,
.et_pb_filterable_portfolio .et_pb_portfolio_filters li a:hover{background:var(--ima-red);color:#fff}
.et_pb_portfolio_item{border-radius:12px;overflow:hidden;box-shadow:0 3px 14px rgba(0,0,0,.07)}
.et_pb_portfolio_item h2{font-size:17px}

/* ---------- footer ---------- */
#main-footer{background:var(--ima-grey-dk)}
#footer-widgets{padding:66px 0 34px}
#footer-widgets .fwidget h4,#main-footer .fwidget h4{font-family:Poppins,sans-serif;font-weight:600;
  font-size:15px!important;letter-spacing:.03em;color:#fff!important;margin-bottom:14px}
#footer-widgets,#footer-widgets p,#footer-widgets a,#footer-widgets li{color:#c6c6c5!important;font-size:14px;line-height:1.95}
#footer-widgets a:hover{color:#fff!important}
#footer-bottom{background:#333332;padding:16px 0}
#footer-info,#footer-bottom #footer-info,#footer-info a{color:#9d9d9c!important;font-size:13px}

/* ---------- forms ---------- */
.fluentform .ff-el-group>label,.fluentform .ff-el-input--label label{font-family:Poppins,sans-serif;
  font-weight:600;font-size:14px;color:var(--ima-grey)}
.fluentform input:not([type=submit]),.fluentform textarea,.fluentform select{
  border:1px solid var(--ima-line)!important;border-radius:8px!important;padding:12px 14px!important;
  font-size:15px!important;background:#fff!important}
.fluentform input:focus,.fluentform textarea:focus,.fluentform select:focus{
  border-color:var(--ima-red)!important;box-shadow:0 0 0 3px rgba(176,32,26,.12)!important;outline:none}
.fluentform .ff-btn-submit{background:var(--ima-red)!important;border:none!important;border-radius:8px!important;
  font-family:Poppins,sans-serif!important;font-weight:600!important;letter-spacing:.03em;
  padding:14px 34px!important;transition:.18s}
.fluentform .ff-btn-submit:hover{background:var(--ima-red-dk)!important;transform:translateY(-2px)}

/* ---------- map ---------- */
.et_pb_map,.et_pb_code iframe{border-radius:12px;overflow:hidden}

/* ---------- misc polish ---------- */
.et_pb_text ul li{margin-bottom:.4em}
.et_pb_section.et_pb_with_background{overflow:hidden}
a{color:var(--ima-red)}
a:hover{color:var(--ima-red-dk)}

/* hero / CTA buttons must never be dimmed by scroll animation */
#page-container .ima-hero .et_pb_button,#page-container .ima-cta .et_pb_button{opacity:1!important;transform:none!important}
#page-container .et_pb_section.ima-hero .et_pb_button_module_wrapper a.et_pb_button{background:#fff!important;color:var(--ima-red)!important;border:none!important;font-weight:700!important}
#page-container .ima-hero .et_pb_button:hover{background:#f0f0f0!important;transform:translateY(-2px)!important}
