/******************************************************************
                    ICF HOME CSS
*******************************************************************/

#home-column {
  width: 100%;
  max-width: 1264px;
  margin:auto;
  padding-left: 20px;
  padding-right: 20px;
}

#home-column-wide {
  width: 100%;
}


/******************************************************************
    Mosaique
*******************************************************************/

div.icf-home-grid-title {
  margin:auto;
  margin-top: 40px;
  margin-bottom: 0px;
  padding: 0px;
}
div.icf-home-grid-title > img {
  display: block;
  width: 100%;
}

#icf-home-grid-4-cols-title { display: none; width: 1200px; }
#icf-home-grid-3-cols-title { display: none; width: 897px; }
#icf-home-grid-2-cols-title { display: none; width: 594px; }
#icf-home-grid-1-cols-title { 
  display: none; 
  width: 100% !important;
  max-width: 594px  !important; 
  padding: 0px 6px 0px 6px !important;   
  text-align: center !important; 
}

#icf-home-grid-4-cols-title > img { width: 100%; }
#icf-home-grid-3-cols-title > img { width: 100%; }
#icf-home-grid-2-cols-title > img { width: 100%; }
#icf-home-grid-1-cols-title > img { 
  display: block;
  box-sizing: border-box;
  max-width: 594px;
  width: 100% !important;   
  margin: 0px auto 0px auto !important; 
}


/* ---------------- Grid main ---------------- */

.tab {
  display: table;
  table-layout: fixed;
  margin: 0 auto 0 auto !important;
  padding: 0 !important;
  background: transparent;
  border: none !important;
  border-collapse: separate;
  border-spacing: 12px;
}
.tab row {
  margin: 0 !important;
  border: none !important;
  padding: 0 !important;
  box-sizing: content-box;
  height:291px !important;
}
.tab .cell {
  display: table-cell;
  margin: 0 !important;
  border: none !important;
  padding: 0 !important;
  box-sizing: content-box;
  background: #ddd;
  text-align: center;
  vertical-align: center;
  overflow: hidden;
}

.tab .cell .a { display: block; }

.tab .cell-11 { min-width:291px !important; width:291px !important; max-width:291px !important; height:291px !important; max-height:291px !important; }
.tab .cell-12 { min-width:291px !important; width:291px !important; max-width:291px !important; height:594px; !important; max-height:594px !important; }
.tab .cell-21 { min-width:594px !important; width:594px !important; max-width:594px !important; height:291px !important; max-height:291px !important; }
.tab .cell-22 { min-width:594px !important; width:594px !important; max-width:594px !important; height:594px !important; max-height:594px !important; }


/* ---------------- 1 col ------------------- */


.tab1 {
  width: 100%;
  max-width: 594px !important;
  margin: 0px auto 0px auto;
  border: none;
  padding: 0px;
  background-color: #FFFFFF; /*#DDD6D0;*/
}

.tab1-row {
  width: 100%;
  max-width: 594px !important;
  margin: 0px;
  border: none;
  padding: 0px;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: flex-start;
  align-content: center;
}
.tab1-row-fixed { height: 160px; }
.tab1-row-fluid {}

div.tab1-cell {
  width: 100%;
  max-width: 594px !important;
  margin: 0px;
  border: none;
  padding: 0px;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  border: solid 6px #fff !important;
}
.tab1-cell-height-fixed { height: 160px; }
.tab1-cell-height-fluid {}

.tab1-cell-content-1 {
  width: 100%;
  max-width: 594px !important;
}
.tab1-cell-content-2 {
  width: 50%;
  max-width: 297px !important;;    
}

.tab1-cell-picto > a,
.tab1-cell-picto > a > img {
  max-width: 80%;
  max-height: 80%;
}

.tab1-cell-photo > a,
.tab1-cell-photo > a > img {
  max-width: 100%;
  max-height: 100%;
}

/* specific */

.tab1-row1 {
  height: 100% !important;
  max-height: 594px;
}

.tab1 .cell-id-profil-1col {
  background-color: #DDD6D0 !important;
  height: 100% !important;
  max-height: 594px;
}

.tab1 .cell-id-appels > a,
.tab1 .cell-id-appels > a > img {
  max-width: 90% !important;
  max-height: 90% !important;
}

/* cell profil overrides */

.tab1 .cell-id-profil-inner {
  box-sizing: content-box !important;
  width: 100% !important;
  max-width: 100% !important;
}

.tab1 .cell-id-filiales {}
.tab1 .cell-id-filiales #cell-id-filiales-inner {
  width: 100%;
  height: 100%;    
}
.tab1 .cell-id-filiales #cell-id-filiales-title {
  width: 40%;
  max-width: 140px;
}
.tab1 .cell-id-filiales #cell-id-filiales-carte {
  max-height: 140px;
  margin-top: 20px;
  margin-bottom: 20px;
}

.tab1 .cell-id-savoir {
  background-image: url('/themes/icf_main/img/home/wall_img_savoirfaire.jpg');
  background-repeat: no-repeat;
  background-position: center; 
  display: flex;
  justify-content: center;
  align-items: flex-end;
}
.tab1 .cell-id-savoir > a {
  display: inline-block;
  margin: 0px !important;
  padding: 0px !important;
}
.tab1 .cell-id-savoir > a > img {
  margin: 0px !important;
  padding: 0px !important;    
  max-width: 100% !important;
  max-height: 100% !important;    
}


/* ---------------- Picto style cells ---------------- */

.cell-picto > a {
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  -webkit-transition: all .2s ease-in-out;
  -moz-transition: all .2s ease-in-out;
  -ms-transition: all .2s ease-in-out;
  -o-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out;
}
.cell-picto > a:hover {
  -webkit-transform: scale(1.10);
  -ms-transform: scale(1.10);
  transform: scale(1.10);
}


/* ---------------- Photo style cells ---------------- */

/*.cell-photo > a img { vertical-align: top !important; } */
.cell-photo > a {
  position: relative;
}
.cell-photo > a:hover img.cell-photo-bg {
  -webkit-transform: scale(1.10);
  -ms-transform: scale(1.10);
  transform: scale(1.10);
}
.cell-photo-bg {
  z-index: 9;
  -webkit-transition: all .2s ease-in-out;
  -moz-transition: all .2s ease-in-out;
  -ms-transition: all .2s ease-in-out;
  -o-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out;
}
.cell-photo-tx {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  max-width: 100%;
  z-index: 10;
}

.cell-11 .cell-photo-tx { width:291px !important; }
.cell-21 .cell-photo-tx { width:594px !important; }

.cell-photo-bg { max-height:291px !important; }


/* ---------------- Profil cell ---------------- */

.cell-id-profil * {
  box-sizing: content-box !important;
  margin:0 !important;
  border:none !important;
  padding:0 !important;
}

.cell-id-profil *::before,
.cell-id-profil *::after, {
  box-sizing: content-box !important;
  display: none !important;
  width: 0px !important;
  height: 0px !important;
}

.cell-id-profil,
.cell-id-profil-inner {
  box-sizing: content-box;
  margin:0 !important;
  border:none !important;
  padding:0 !important;
  overflow: hidden;
}
.icf-home-grid-fixed .cell-id-profil,
.icf-home-grid-fixed .cell-id-profil-inner {
  min-width:594px !important;
  width:594px !important;
  max-width:594px !important;
  min-height:594px !important;
  height:594px !important;
  max-height:594px !important;
}
.icf-home-grid-fluid .cell-id-profil,
.icf-home-grid-fluid .cell-id-profil-inner {
  min-width:100% !important;
  width:100% !important;
  max-width:100% !important;
  min-height:100% !important;
  height:100% !important;
  max-height:100% !important;
}

#cell-id-profil-link-wrapper {
  margin:0 !important;
  border:none !important;
  padding:0 !important;
  display: block;
  position: relative;
  overflow: hidden;
  -webkit-transition: all .2s ease-in-out;
  -moz-transition: all .2s ease-in-out;
  -ms-transition: all .2s ease-in-out;
  -o-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out;
}
.icf-home-grid-fixed #cell-id-profil-link-wrapper {
  min-width:594px !important;
  width:594px !important;
  max-width:594px !important;
  min-height:594px !important;
  height:594px !important;
  max-height:594px !important;
}
.icf-home-grid-fluid #cell-id-profil-link-wrapper {
  min-width:100% !important;
  width:100% !important;
  max-width:100% !important;
  min-height:100% !important;
  height:100% !important;
  max-height:100% !important;
}
#cell-id-profil-link-wrapper:hover {
  -webkit-transform: scale(1.05);
  -ms-transform: scale(1.05);
  transform: scale(1.05);
}

.cell-id-profil-slide-img {
  margin:0 !important;
  border:none !important;
  padding:0 !important;
  max-width: 100%;
  max-height: 100%;
}

.cell-id-profil-slider {
  margin:0 !important;
  border:none !important;
  padding:0 !important;
  max-height: 100%;
}

.cell-id-profil-slider-title {
  margin:0 !important;
  border:none !important;
  padding:0 !important;
  position: absolute;
  top: 0;
  width: 100%;
  max-width: 100%;
  max-height: 100%;
  z-index: 1000;
}

.cell-id-profil-slider-overlay {
  margin:0 !important;
  border:none !important;
  padding:0 !important;
  background: rgba(0,0,0,0.4);
  position: absolute;
  padding: 0;
  padding-left: 25% !important;
  padding-right: 5% !important;
  height: 25%;
  top: 75%;
  z-index: 2000;
}
.icf-home-grid-fixed .cell-id-profil-slider-overlay { width: 70% !important; }
.icf-home-grid-fluid .cell-id-profil-slider-overlay { width: 100% !important; }

.cell-id-profil-slider-overlay-text {
  color: #fff;
  font-family: 'Catamaran', sans-serif;
  font-size: 1.3em;
  line-height: 1.0em;
  font-weight: 700;
  text-align: left;
  padding-top: 5% !important;
}

.cell-id-profil .slick-list {
  margin:0 !important;
  border:none !important;
  padding:0 !important;
  overflow: hidden;
}
.icf-home-grid-fixed .cell-id-profil .slick-list {
  min-width:594px !important;
  width:594px !important;
  max-width:594px !important;
  min-height:594px !important;
  height:594px !important;
  max-height:594px !important;
}
.icf-home-grid-fluid .cell-id-profil .slick-list {
  min-width:100% !important;
  width:100% !important;
  max-width:100% !important;
  min-height:100% !important;
  height:100% !important;
  max-height:100% !important;
}

.cell-id-profil .slick-track::before {
  display: none !important;
  width: 0px !important;
  height: 0px !important;
}
.cell-id-profil .slick-track {
  margin:0 !important;
  border:none !important;
  padding:0 !important;
  overflow: hidden;
}
.icf-home-grid-fixed .cell-id-profil .slick-track {
  min-height:594px !important;
  height:594px !important;
  max-height:594px !important;
}
.icf-home-grid-fluid .cell-id-profil .slick-track {
  min-height:100% !important;
  height:100% !important;
  max-height:100% !important;
}
.cell-id-profil .slick-track::after {
  display: none !important;
  width: 0px !important;
  height: 0px !important;
}

.cell-id-profil .slick-slide > div {
  margin:0 !important;
  border:none !important;
  padding:0 !important;
}
.icf-home-grid-fixed .cell-id-profil .slick-slide > div {
  min-height:594px !important;
  height:594px !important;
  max-height:594px !important;
}
.icf-home-grid-fluid .cell-id-profil .slick-slide > div {
  min-height:100% !important;
  height:100% !important;
  max-height:100% !important;
}

/* ---------------- ICF map cell ---------------- */

#icf-home-map-container {
  width: 291px;
  height: 594px;
  XXXbox-sizing: border-box;
  background-color: #988F86;
  text-align: center;
  padding: 20px;
}

.icf-home-map-img { margin: 20px auto 20px auto; }

#icf-home-map-img-tit, #icf-home-map-img-tit img {
  width:172px;
  height:70px;
}
#icf-home-map-img-soc, #icf-home-map-img-soc img,
#icf-home-map-img-lib, #icf-home-map-img-lib img,
#icf-home-map-img-imm, #icf-home-map-img-imm img {
  width:172px;
  height:39px;
}

.icf-home-map-scalable-1-2 { transition: all .2s ease-in-out; }
.icf-home-map-scalable-1-2:hover { transform: scale(1.2); }

#icf-home-map-img-map {
  width:240px;
  height:247px;
  background-image: url(/themes/icf_main/img/icfmap/carte_base.png);
  background-repeat: no-repeat;
  background-position: 0px 0px;
}
#icf-home-map-img-map-base {
  width:240px;
  height:247px;
  background-image: url(/themes/icf_main/img/icfmap/cartes_france_rollover_1200.png);
  background-repeat: no-repeat;
  background-position: 0px 0px;
}


/* ---------------- Grid style ---------------- */

.cell-id-profil { background-color: #DDD6D0 !important; }

.cell-id-location { background-color: #E05200 !important; }

.cell-id-vente { background-color: #8A6F90 !important; }

.cell-id-filiales { background-color: #988F86 !important; }

.cell-id-savoir { background-color: #DDD6D0 !important; }
.cell-id-savoir a img.cell-photo-tx { top: 132px !important; }

.cell-id-locataires { background-color: #DDD6D0 !important; }
.cell-id-locataires a img.cell-photo-tx { top: 100px !important; }

.cell-id-sncf { background-color: #FFB612 !important; }

.cell-id-presse { background-color: #957657 !important; }

.cell-id-appels { background-color: #82BF00 !important; }

.cell-id-residences { background-color: #DDD6D0 !important; }
.cell-id-residences a img.cell-photo-tx { top: 100px !important; }
.cell-11.cell-id-residences a img.cell-photo-tx { top: 130px !important; }


/***************************************************************
 *             Responsive Home content
 ***************************************************************/

 @media screen and (min-width: 1280px) {

  /* Home grid = 4 cols */
  table.icf-home-grid {
    table-layout: fixed;
    width: 1224px !important;
  }
  #icf-home-grid-4-cols-title { display: block; }
  #icf-home-grid-3-cols-title { display: none; }
  #icf-home-grid-2-cols-title { display: none; }
  #icf-home-grid-1-cols-title { display: none; }
  #icf-home-grid-4-cols { display: block; }
  #icf-home-grid-3-cols { display: none; }
  #icf-home-grid-2-cols { display: none; }
  #icf-home-grid-1-cols { display: none; }

}

@media screen and (min-width: 980px) and (max-width: 1279px) {

  /* Home grid = 3 cols */
  #icf-home-grid-4-cols-title { display: none; }
  #icf-home-grid-3-cols-title { display: block; }
  #icf-home-grid-2-cols-title { display: none; }
  #icf-home-grid-1-cols-title { display: none; }
  #icf-home-grid-4-cols { display: none; }
  #icf-home-grid-3-cols { display: block; }
  #icf-home-grid-2-cols { display: none; }
  #icf-home-grid-1-cols { display: none; }

  /* reajust position of "Nos residences" title */
  td.icf-home-grid-cell-residences a img.icf-home-grid-cell-photo-tx { top: 0px !important; }

}

@media screen and (min-width: 641px) and (max-width: 979px) {

  /* Home grid = 2 cols */
  #icf-home-grid-4-cols-title { display: none; }
  #icf-home-grid-3-cols-title { display: none; }
  #icf-home-grid-2-cols-title { display: block; }
  #icf-home-grid-1-cols-title { display: none; }
  #icf-home-grid-4-cols { display: none; }
  #icf-home-grid-3-cols { display: none; }
  #icf-home-grid-2-cols { display: block; }
  #icf-home-grid-1-cols { display: none; }

  /* reajust position of "Nos residences" title */
  td.icf-home-grid-cell-residences a img.icf-home-grid-cell-photo-tx { top: 226px !important; }

}

@media screen and (max-width: 640px) {

  /* Home grid = 1 cols */
  #icf-home-grid-4-cols-title { display: none; }
  #icf-home-grid-3-cols-title { display: none; }
  #icf-home-grid-2-cols-title { display: none; }
  #icf-home-grid-1-cols-title { display: block; }
  #icf-home-grid-4-cols { display: none; }
  #icf-home-grid-3-cols { display: none; }
  #icf-home-grid-2-cols { display: none; }
  #icf-home-grid-1-cols { display: block; }

  .cell-id-profil-slider-overlay-text { font-size: 4vw !important; }

  /* Restyle icfmap */
  div#icf-home-map-container { 
    border: solid 6px #fff;
    width: 100%; 
    height: inherit;
  }
  div#icf-home-map-img-tit > img { display: none; }
  div#icf-home-map-img-tit {
    margin: 0;
    width: 100%;
    height: inherit;
  }
  div#icf-home-map-img-tit:before {
    content: "ICF Habitat près de chez vous";
    text-transform: uppercase;
    color:#fff;
    font-size: 4.2vw;
    font-weight: 900;    
  }
  div#icf-home-map-img-soc { display: none; }
  div#icf-home-map-img-lib { display: none; }
  div#icf-home-map-img-imm { display: none; }

  /* reajust position of "Nos residences" title */
  /*.icf-home-grid-cell-residences a img.icf-home-grid-cell-photo-tx { top: 226px !important; }*/

}

