.elementor-163 .elementor-element.elementor-element-d70ecce{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-163 .elementor-element.elementor-element-d70ecce:not(.elementor-motion-effects-element-type-background), .elementor-163 .elementor-element.elementor-element-d70ecce > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0D2B5E;}.elementor-163 .elementor-element.elementor-element-c7ed981{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:50px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-163 .elementor-element.elementor-element-c7ed981:not(.elementor-motion-effects-element-type-background), .elementor-163 .elementor-element.elementor-element-c7ed981 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-163 .elementor-element.elementor-element-0c13232{width:var( --container-widget-width, 94.109% );max-width:94.109%;--container-widget-width:94.109%;--container-widget-flex-grow:0;}.elementor-163 .elementor-element.elementor-element-0c13232.elementor-element{--align-self:center;--flex-grow:0;--flex-shrink:0;}.elementor-163 .elementor-element.elementor-element-67ca9f5{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-163 .elementor-element.elementor-element-67ca9f5:not(.elementor-motion-effects-element-type-background), .elementor-163 .elementor-element.elementor-element-67ca9f5 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-163 .elementor-element.elementor-element-6e4dab2{padding:50px 0px 20px 0px;}.elementor-163 .elementor-element.elementor-element-0122de5{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-163 .elementor-element.elementor-element-0122de5:not(.elementor-motion-effects-element-type-background), .elementor-163 .elementor-element.elementor-element-0122de5 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-163 .elementor-element.elementor-element-5608e44{--display:grid;--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(3, 1fr);--grid-auto-flow:row;--padding-top:0px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-163 .elementor-element.elementor-element-5608e44:not(.elementor-motion-effects-element-type-background), .elementor-163 .elementor-element.elementor-element-5608e44 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-163 .elementor-element.elementor-element-8bacabc{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-163 .elementor-element.elementor-element-8bacabc:not(.elementor-motion-effects-element-type-background), .elementor-163 .elementor-element.elementor-element-8bacabc > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0D2B5E;}.elementor-163 .elementor-element.elementor-element-c033dc0{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-163 .elementor-element.elementor-element-c033dc0:not(.elementor-motion-effects-element-type-background), .elementor-163 .elementor-element.elementor-element-c033dc0 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-163 .elementor-element.elementor-element-92a37e3{width:var( --container-widget-width, 102.829% );max-width:102.829%;--container-widget-width:102.829%;--container-widget-flex-grow:0;}.elementor-163 .elementor-element.elementor-element-92a37e3.elementor-element{--flex-grow:0;--flex-shrink:0;}body.elementor-page-163:not(.elementor-motion-effects-element-type-background), body.elementor-page-163 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-163 .elementor-element.elementor-element-5608e44{--grid-auto-flow:row;}}@media(min-width:768px){.elementor-163 .elementor-element.elementor-element-5608e44{--content-width:1250px;}}@media(max-width:767px){.elementor-163 .elementor-element.elementor-element-5608e44{--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(2, 1fr);--grid-auto-flow:row;}}/* Start custom CSS for html, class: .elementor-element-6e4dab2 */.proj-card { font-family: 'Plus Jakarta Sans', sans-serif; }

  /* ===== CARD HOVER EFFECTS ===== */
  .proj-card:hover { border-color: rgba(45,127,255,0.5) !important; transform: translateY(-4px) !important; }
  .proj-card:hover .proj-img { transform: scale(1.06) !important; }
  .proj-card:hover .proj-details { max-height: 120px !important; }

  /* ===== CRITICAL FIX: Override Elementor's grid with flexbox ===== */
  /* 
     Replace .elementor-element-9d35c07 with your actual container class.
     Find it: right-click cards → Inspect → look for the parent 
     with "e-con-full e-grid e-con" classes.
  */
  .elementor-element-9d35c07.e-con-full.e-grid,
  .e-con-full.e-grid:has(> .elementor-widget .proj-card) {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 1.5rem !important;
    align-items: stretch !important;
    /* Kill the grid completely */
    grid-template-columns: none !important;
    grid-template-rows: none !important;
    grid-auto-rows: auto !important;
  }

  /* Each card widget in flex layout */
  .elementor-element-9d35c07.e-con-full.e-grid > .elementor-element,
  .e-con-full.e-grid:has(> .elementor-widget .proj-card) > .elementor-element {
    flex: 0 1 calc(33.333% - 1rem) !important;
    min-width: 300px !important;
    max-width: 400px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Hidden widgets collapse completely in flexbox */
  .elementor-element-9d35c07.e-con-full.e-grid > .elementor-element[style*="display: none"],
  .e-con-full.e-grid > .elementor-element[style*="display: none"] {
    display: none !important;
    flex: 0 0 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    overflow: hidden !important;
  }

  /* ===== BIGGER CLOSE BUTTON ===== */
  .proj-close-btn {
    width: 48px !important;
    height: 48px !important;
    top: 20px !important;
    right: 20px !important;
  }
  .proj-close-btn svg {
    width: 22px !important;
    height: 22px !important;
  }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-7906378 */.proj-close-btn {
    width: 48px !important;
    height: 48px !important;
    top: 20px !important;
    right: 20px !important;
  }
  .proj-close-btn svg {
    width: 22px !important;
    height: 22px !important;
  }
  .proj-close-btn:hover {
    background: rgba(240,244,255,0.15) !important;
    color: #fff !important;
    transform: scale(1.05);
  }/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-5608e44 */.elementor-element-5608e44 {
  background: #0D1117;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8bacabc *//* Cibler le container parent Elementor */
.elementor-element-8bacabc {
    background-color: #0d2b5e !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}/* End custom CSS */