/* ===================================================================
   GTEC Immobilier — feuille de style partagée (pages de contenu)
   Reprend l'identité de la vitrine : bleu marine + vert d'eau + blanc.
   =================================================================== */
:root{
  --teal-dark:#2E6357; --teal:#3D8074; --teal-light:#5FA08F;
  --bleu:#1A2738;
  --gris-fonce:#4A5A5E; --gris-clair:#C9D0D3; --gris-bg:#F4F6F7;
  --noir:#2A3338; --blanc:#fff;
  --ombre:0 2px 14px rgba(42,51,56,.08);
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Inter',sans-serif;color:var(--noir);background:var(--blanc);line-height:1.5}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}

/* ---------- En-tête : bandeau logo (bleu) + barre menu (vert) ---------- */
.topbar{background:var(--bleu);text-align:center;padding:16px 0}
.topbar img{height:62px;display:inline-block}
header{position:sticky;top:0;z-index:50;background:var(--teal);box-shadow:0 2px 10px rgba(42,51,56,.15)}
.menu{display:flex;justify-content:center;flex-wrap:wrap}
.menu a{display:flex;align-items:center;height:52px;padding:0 22px;color:#fff;font-weight:500;font-size:.95rem;
  border-left:1px solid rgba(255,255,255,.16);transition:background .15s}
.menu a:last-child{border-right:1px solid rgba(255,255,255,.16)}
.menu a:hover,.menu a.actif{background:rgba(255,255,255,.16)}

/* ---------- Boutons ---------- */
.btn{display:inline-block;background:linear-gradient(135deg,var(--teal),var(--teal-dark));color:#fff;padding:12px 24px;
  border-radius:10px;font-weight:600;border:none;cursor:pointer;transition:transform .15s,box-shadow .15s;box-shadow:0 4px 14px rgba(46,99,87,.3)}
.btn:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(46,99,87,.4)}
.btn-ghost{background:transparent;color:var(--teal);border:1.5px solid var(--teal);box-shadow:none}
.btn-ghost:hover{background:var(--teal);color:#fff;box-shadow:0 6px 18px rgba(46,99,87,.32)}

/* ---------- Bandeau de page (hero allégé) ---------- */
.page-hero{position:relative;color:#fff;padding:62px 0 70px;overflow:hidden;
  background:linear-gradient(112deg,rgba(11,38,33,.97) 0%,rgba(17,78,67,.9) 45%,rgba(30,140,120,.62) 100%)}
.page-hero::after{content:'';position:absolute;inset:0;opacity:.14;pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.6) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(255,255,255,.6) 1px,transparent 1px);
  background-size:64px 64px;
  -webkit-mask-image:linear-gradient(112deg,#000 5%,transparent 70%);
          mask-image:linear-gradient(112deg,#000 5%,transparent 70%)}
.page-hero .wrap{position:relative;z-index:2}
.breadcrumb{font-size:.86rem;opacity:.85;margin-bottom:14px}
.breadcrumb a:hover{text-decoration:underline}
.page-hero h1{font-size:2.7rem;font-weight:800;letter-spacing:-.015em;line-height:1.08;max-width:820px}
.page-hero h1 .accent{color:var(--teal-light)}
.page-hero p{margin-top:14px;font-size:1.12rem;opacity:.94;max-width:680px}

/* ---------- Sections / titres ---------- */
section{padding:62px 0}
.section-label{display:inline-block;font-size:.76rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--teal);margin-bottom:10px}
.section-label::before{content:'';display:inline-block;width:22px;height:2px;background:var(--teal-light);vertical-align:middle;margin-right:9px;border-radius:2px}
.section-title{font-size:1.95rem;font-weight:800;margin-bottom:7px;color:var(--noir);letter-spacing:-.01em}
.section-title .accent{color:var(--teal)}
.section-sub{color:var(--gris-fonce);margin-bottom:30px;font-size:1.04rem;max-width:760px}

/* ---------- Contenu rédactionnel ---------- */
.prose{max-width:820px}
.prose p{color:#3a464b;font-size:1.04rem;margin-bottom:16px}
.prose h3{font-size:1.25rem;color:var(--bleu);margin:26px 0 10px}
.prose strong{color:var(--noir)}
.prose ul{margin:0 0 16px 0;padding-left:0;list-style:none}
.prose ul li{position:relative;padding-left:26px;margin-bottom:9px;color:#3a464b}
.prose ul li::before{content:'';position:absolute;left:0;top:9px;width:9px;height:9px;border-radius:2px;
  background:var(--teal);transform:rotate(45deg)}

/* ---------- Blocs en deux colonnes (texte + encart) ---------- */
.split{display:grid;grid-template-columns:1.3fr 1fr;gap:40px;align-items:start}
.encart{background:var(--gris-bg);border:1px solid var(--gris-clair);border-radius:16px;padding:26px 24px}
.encart h4{color:var(--bleu);font-size:1.1rem;margin-bottom:12px}
.encart .row{display:flex;gap:10px;padding:9px 0;border-bottom:1px solid var(--gris-clair);font-size:.96rem;color:var(--gris-fonce)}
.encart .row:last-child{border-bottom:none}
.encart .row b{color:var(--noir)}

/* ---------- Valeurs (4 cartes) ---------- */
.valeurs{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.valeur{display:flex;gap:18px;background:#fff;border:1px solid var(--gris-clair);border-radius:16px;padding:24px 24px;
  transition:transform .18s,box-shadow .18s,border-color .18s}
.valeur:hover{transform:translateY(-3px);box-shadow:var(--ombre);border-color:transparent}
.valeur .ico{flex:none;width:54px;height:54px;border-radius:13px;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,var(--bleu),#243a54);color:var(--teal-light);font-size:1.5rem}
.valeur h4{color:var(--noir);font-size:1.12rem;margin-bottom:6px}
.valeur p{color:var(--gris-fonce);font-size:.95rem}

/* ---------- Articles / actualités ---------- */
.articles{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.article{border:1px solid var(--gris-clair);border-radius:16px;overflow:hidden;background:#fff;display:flex;flex-direction:column;
  transition:transform .18s,box-shadow .18s}
.article:hover{transform:translateY(-4px);box-shadow:0 14px 36px rgba(42,51,56,.16)}
.article .vignette{height:160px;display:flex;align-items:center;justify-content:center;font-size:2.6rem;color:#fff;
  background:linear-gradient(135deg,var(--teal-dark),var(--teal))}
.article .corps{padding:18px 18px 20px;display:flex;flex-direction:column;gap:10px;flex:1}
.article .tag{align-self:flex-start;background:rgba(61,128,116,.12);color:var(--teal-dark);font-size:.72rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.04em;padding:5px 11px;border-radius:20px}
.article h3{font-size:1.1rem;line-height:1.3;color:var(--noir)}
.article .meta{font-size:.8rem;color:var(--gris-fonce)}
.article p{color:#3a464b;font-size:.94rem;flex:1}
.article .lire{color:var(--teal-dark);font-weight:700;font-size:.9rem}

/* ---------- Bloc d'appel (CTA) ---------- */
.cta{background:var(--bleu);border-radius:18px;padding:42px 36px;color:#fff;text-align:center}
.cta h2{font-size:1.7rem;margin-bottom:8px}
.cta p{opacity:.85;max-width:600px;margin:0 auto 22px}

/* ---------- Newsletter ---------- */
.news{background:var(--gris-bg);border:1px solid var(--gris-clair);border-radius:16px;padding:28px 26px;
  display:flex;gap:20px;align-items:center;flex-wrap:wrap;justify-content:space-between}
.news .txt h4{color:var(--bleu);font-size:1.18rem;margin-bottom:4px}
.news .txt p{color:var(--gris-fonce);font-size:.96rem}
.news form{display:flex;gap:10px;flex-wrap:wrap}
.news input{padding:12px 14px;border:1.5px solid var(--gris-clair);border-radius:10px;font:inherit;min-width:240px}
.news input:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px rgba(61,128,116,.16)}

/* ---------- Pied de page ---------- */
footer{background:var(--bleu);color:#c5cfdb;padding:46px 0 30px;margin-top:20px}
footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}
footer h5{color:#fff;font-size:1rem;margin-bottom:12px}
footer a:hover{color:#fff}
footer .bas{border-top:1px solid #3a464b;margin-top:30px;padding-top:18px;font-size:.84rem;color:#8a989d}

@media(max-width:900px){
  .topbar img{height:50px}
  .menu a{padding:0 13px;font-size:.82rem;height:46px}
  .page-hero h1{font-size:1.9rem}
  .split{grid-template-columns:1fr}
  .valeurs{grid-template-columns:1fr}
  .articles{grid-template-columns:1fr}
  footer .cols{grid-template-columns:1fr}
  .news{flex-direction:column;align-items:flex-start}
}
