/* ==========================================================
   C2F IMMOBILIER
   Page type "Investir en région" — v2.0
   ========================================================== */


/* ----------------------------------------------------------
   HERO
   ---------------------------------------------------------- */

.region-page .region-hero:before{
  background:linear-gradient(
    90deg,
    rgba(0,0,0,.58) 0%,
    rgba(0,0,0,.40) 40%,
    rgba(0,0,0,.10) 75%,
    rgba(0,0,0,0) 100%
  );
}


/* ----------------------------------------------------------
   CHIFFRES CLÉS
   ---------------------------------------------------------- */

.region-chiffres{
  background:#fff;
}

.region-chiffres-grid{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:16px;
  margin-top:34px;
}

.region-chiffre{
  min-height:190px;
  padding:28px 20px 24px;
  border:1px solid #e9e4dc;
  border-radius:14px;
  background:#faf7f2;
  text-align:center;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.region-chiffre strong{
  display:block;
  margin-bottom:8px;
  color:#31556f;
  font-size:34px;
  font-weight:750;
  line-height:1;
}

.region-chiffre span{
  display:block;
  color:#222;
  font-size:16px;
  font-weight:700;
  line-height:1.3;
}

.region-chiffre small{
  display:block;
  margin-top:8px;
  color:#777;
  font-size:12px;
  line-height:1.4;
}

.region-chiffres-source{
  margin:18px 0 0;
  text-align:center;
  color:#888;
  font-size:12px;
}


/* ----------------------------------------------------------
   INTRO / PORTRAIT
   ---------------------------------------------------------- */

.region-intro{
  background:#f7f7f7;
}

.region-intro .comprendre-texte > p:not(.comprendre-surtitre){
  color:#5f5f5f;
  font-size:16px;
  line-height:1.75;
}


/* ----------------------------------------------------------
   ATOUTS
   ---------------------------------------------------------- */

.region-atouts{
  background:#fff;
}

.region-atouts-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:27px;
}

.region-atouts-grid article{
  min-height:300px;
  padding:35px 31px;
  border:1px solid #ececec;
  border-radius:15px;
  background:#fff;
  box-shadow:0 10px 30px rgba(0,0,0,.06);
}

.region-atouts-grid span{
  color:rgba(199,155,95,.32);
  font-size:52px;
  font-weight:750;
  line-height:1;
}

.region-atouts-grid h3{
  margin:18px 0 15px;
  color:#222;
  font-size:24px;
  line-height:1.28;
}

.region-atouts-grid p{
  margin:0;
  color:#666;
  font-size:16px;
  line-height:1.65;
}


/* ----------------------------------------------------------
   TERRITOIRES
   ---------------------------------------------------------- */

.region-territoires{
  background:#f6f1e8;
}

.region-territoires-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:22px;
  max-width:1120px;
  margin:0 auto;
}

.region-territoire-card{
  padding:28px 28px 25px;
  border:1px solid #dfd4c4;
  border-radius:14px;
  background:#fff;
  box-shadow:0 8px 22px rgba(0,0,0,.045);
}

.region-territoire-entete span{
  display:block;
  margin-bottom:7px;
  color:#c79b5f;
  font-size:11px;
  font-weight:750;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.region-territoire-entete h3{
  margin:0 0 14px;
  color:#31556f;
  font-size:23px;
  line-height:1.25;
}

.region-territoire-card > p{
  margin:0;
  color:#626262;
  font-size:15px;
  line-height:1.7;
}

.region-territoire-strategie{
  margin-top:20px;
  padding-top:16px;
  border-top:1px solid #eee7dd;
}

.region-territoire-strategie small{
  display:block;
  margin-bottom:3px;
  color:#888;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.region-territoire-strategie strong{
  color:#222;
  font-size:14px;
}


/* ----------------------------------------------------------
   STRATÉGIES
   ---------------------------------------------------------- */

.region-strategies{
  background:#fff;
}

.region-strategies-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:20px;
}

.region-strategies-grid article{
  padding:27px 24px;
  border-radius:13px;
  background:#faf7f2;
  border-top:4px solid #c79b5f;
}

.region-strategies-grid h3{
  margin:0 0 10px;
  color:#31556f;
  font-size:21px;
  line-height:1.25;
}

.region-strategies-grid strong{
  display:block;
  min-height:42px;
  margin-bottom:12px;
  color:#222;
  font-size:13px;
  line-height:1.5;
}

.region-strategies-grid p{
  margin:0;
  color:#666;
  font-size:14px;
  line-height:1.65;
}


/* ----------------------------------------------------------
   VIGILANCE
   ---------------------------------------------------------- */

.region-vigilance{
  background:#f7f7f7;
}

.region-vigilance-inner{
  max-width:980px;
  padding:42px!important;
  background:#faf6ef;
  border-left:5px solid #c79b5f;
  border-radius:10px;
}

.region-vigilance-inner h2{
  margin:0 0 22px;
  color:#222;
  font-size:40px;
}

.region-vigilance-inner > p:not(.comprendre-surtitre){
  margin:0;
  color:#5d5d5d;
  font-size:18px;
  line-height:1.75;
}

.region-vigilance-points{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-top:27px;
}

.region-vigilance-points span{
  padding:8px 12px;
  border:1px solid #dfd4c4;
  border-radius:999px;
  background:#fff;
  color:#31556f;
  font-size:12px;
  font-weight:700;
}


/* ----------------------------------------------------------
   PROGRAMMES
   ---------------------------------------------------------- */

.region-programmes{
  background:#fff;
}

.region-programmes-attente{
  max-width:850px;
  margin:auto;
  padding:40px;
  border-radius:15px;
  background:#f7f7f7;
  text-align:center;
  box-shadow:0 10px 30px rgba(0,0,0,.045);
}

.region-programmes-attente strong{
  display:block;
  margin-bottom:12px;
  color:#222;
  font-size:22px;
}

.region-programmes-attente p{
  margin:0 0 26px;
  color:#666;
  font-size:16px;
  line-height:1.65;
}


/* ----------------------------------------------------------
   SOURCES
   ---------------------------------------------------------- */

.region-sources{
  background:#f7f7f7;
}

.region-sources-inner{
  max-width:950px;
  margin:0 auto;
}

.region-sources-inner h2{
  margin-top:0;
}

.region-sources-list{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:12px;
  margin-top:25px;
}

.region-sources-list a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  padding:14px 16px;
  border:1px solid #e5e5e5;
  border-radius:9px;
  background:#fff;
  color:#31556f;
  text-decoration:none;
  font-size:13px;
  font-weight:700;
}

.region-sources-list a span{
  color:#c79b5f;
  font-size:16px;
}

.region-sources-list a:hover{
  border-color:#c79b5f;
  color:#c79b5f;
}

.region-sources-note{
  margin:18px 0 0;
  color:#777;
  font-size:12px;
  line-height:1.6;
}


/* ==========================================================
   TABLETTE
   ========================================================== */

@media(max-width:1000px){

  .region-chiffres-grid{
    grid-template-columns:repeat(3,1fr);
  }

  .region-strategies-grid{
    grid-template-columns:repeat(2,1fr);
  }

}

@media(max-width:900px){

  .region-atouts-grid{
    grid-template-columns:1fr;
  }

  .region-territoires-grid{
    grid-template-columns:1fr;
  }

}


/* ==========================================================
   MOBILE
   ========================================================== */

@media(max-width:600px){

  .region-page .region-hero:before{
    background:rgba(0,0,0,.42);
  }

  .region-chiffres-grid{
    grid-template-columns:repeat(2,1fr);
    gap:10px;
  }

  .region-chiffre{
    min-height:150px;
    padding:22px 12px;
  }

  .region-chiffre strong{
    font-size:27px;
  }

  .region-chiffre span{
    font-size:14px;
  }

  .region-chiffre small{
    font-size:10px;
  }

  .region-atouts-grid{
    gap:18px;
  }

  .region-atouts-grid article{
    min-height:0;
    padding:28px 24px;
  }

  .region-territoire-card{
    padding:24px 21px;
  }

  .region-territoire-entete h3{
    font-size:21px;
  }

  .region-strategies-grid{
    grid-template-columns:1fr;
  }

  .region-vigilance-inner{
    padding:28px 22px!important;
  }

  .region-vigilance-inner h2{
    font-size:31px;
  }

  .region-vigilance-inner > p:not(.comprendre-surtitre){
    font-size:16px;
  }

  .region-programmes-attente{
    padding:28px 22px;
  }

  .region-sources-list{
    grid-template-columns:1fr;
  }

}


/* Crédit photo régionale */
.region-photo-credit{
  margin:7px 0 0;
  text-align:right;
  font-size:10px;
  line-height:1.35;
}
.region-photo-credit a{
  color:#888;
  text-decoration:none;
}
.region-photo-credit a:hover{
  color:#c79b5f;
}

/* Le bandeau est propre à chaque région, mais le gabarit reste commun */
.region-page .region-hero{
  background-position:center center;
  background-size:cover;
}

/* Bouton programmes région */
.region-programmes-action{
    width:100%;
    margin-top:32px;
    text-align:center !important;
}

.region-programmes-action .comprendre-bouton{
    display:inline-block !important;
    margin-left:auto !important;
    margin-right:auto !important;
}