/* ============================================================
   FRANCE HABITAT CONSEIL — dest.css
   Styles spécifiques à la page déstratificateurs
   ============================================================ */

:root {
  --steel:      #1E40AF;
  --steel-deep: #1E3A8A;
  --steel-light:#DBEAFE;
}

/* ── HERO ── */
.hero {
  background: linear-gradient(135deg, #0F172A 0%, #1E3A5F 50%, #1E40AF 100%);
  padding-top: 64px;
  min-height: 100vh;
  display: flex;
  align-items: center;
  position: relative;
  overflow: hidden;
}

/* Grille décorative */
.hero::before {
  content: '';
  position: absolute; inset: 0;
  background-image:
    linear-gradient(rgba(255,255,255,0.02) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.02) 1px, transparent 1px);
  background-size: 60px 60px;
  pointer-events: none;
}

.hero::after {
  content: '';
  position: absolute;
  top: -100px; right: -100px;
  width: 500px; height: 500px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(30,64,175,0.3) 0%, transparent 70%);
  pointer-events: none;
}

.hero .container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 48px;
  padding-top: 60px;
  padding-bottom: 60px;
  position: relative;
  z-index: 2;
}

.badge-row { display: flex; gap: 10px; flex-wrap: wrap; margin-bottom: 26px; }

h1 { color: var(--white); margin-bottom: 20px; }
h1 .accent { color: #60A5FA; }

.hero-desc { font-size: 1rem; color: rgba(255,255,255,0.65); line-height: 1.75; max-width: 460px; margin-bottom: 34px; }
.hero-kpis { display: flex; gap: 28px; flex-wrap: wrap; }
.kpi { display: flex; flex-direction: column; gap: 2px; }
.kpi-val { font-family: 'Clash Display', sans-serif; font-size: 1.9rem; font-weight: 700; color: #60A5FA; line-height: 1; }
.kpi-lbl { font-size: 0.72rem; color: rgba(255,255,255,0.45); }

/* Surcharge formulaire */
.prog-seg.active { background: var(--steel); }
.fld input:focus, .fld select:focus { border-color: var(--steel); }
.opt:hover { border-color: var(--steel); background: var(--steel-light); }
.opt.sel   { border-color: var(--steel); background: var(--steel-light); }
.opt.sel::after { color: var(--steel-deep); }

.btn-submit {
  width: 100%; padding: 15px;
  background: linear-gradient(135deg, var(--steel), var(--steel-deep));
  color: var(--white);
  font-family: 'Clash Display', sans-serif; font-weight: 700; font-size: 0.95rem;
  border: none; border-radius: 12px; cursor: pointer;
  display: flex; align-items: center; justify-content: center; gap: 8px;
  box-shadow: 0 4px 20px rgba(30,64,175,0.4);
  transition: all 0.2s;
}
.btn-submit:hover { transform: translateY(-2px); box-shadow: 0 8px 28px rgba(30,64,175,0.5); }

/* Trust bar */
.trust-bar { background: #0F172A; padding: 18px 0; border-top: 1px solid rgba(30,64,175,0.2); }
.trust-bar .container { display: flex; align-items: center; justify-content: center; gap: 36px; flex-wrap: wrap; }
.trust-bar .t-ico { background: rgba(30,64,175,0.2); border-color: rgba(30,64,175,0.3); }

/* ── SECTIONS ── */
.probleme-section { background: var(--white); padding: var(--section-py) 0; }
.roi-section      { background: linear-gradient(135deg, #0F172A, var(--navy-mid)); padding: var(--section-py) 0; }
.roi-section h2         { color: var(--white); }
.roi-section .section-lead { color: rgba(255,255,255,0.55); }
.roi-section .eyebrow   { color: #60A5FA; }
.types-dest-section { background: var(--cream); padding: var(--section-py) 0; }
.aides-dest-section { background: var(--white); padding: var(--section-py) 0; }
.elig-section       { background: var(--steel-light); padding: var(--section-py) 0; }
.faq-dest-section   { background: var(--white); padding: var(--section-py) 0; }

.cta-banner {
  padding: var(--section-py) 0;
  background: linear-gradient(135deg, var(--steel), var(--steel-deep));
  text-align: center;
}
.cta-banner h2 { color: var(--white); }
.cta-banner p  { color: rgba(255,255,255,0.75); max-width: 480px; margin: 14px auto 32px; font-size: 0.95rem; }

/* ── PROBLÈME / SOLUTION ── */
.prob-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: center; margin-top: 48px; }
.prob-visual { background: linear-gradient(135deg,#0F172A,#1E3A5F); border-radius: 20px; padding: 32px; }
.label-svg  { font-family: 'Clash Display', sans-serif; font-size: 11px; fill: rgba(255,255,255,0.7); }
.label-hot  { fill: #FB923C; }
.label-cold { fill: #93C5FD; }
.heat-arrow { fill: none; stroke-width: 2; stroke-linecap: round; }
.heat-up    { stroke: rgba(234,88,12,0.7); }
.bldg-wall  { fill: none; stroke: rgba(96,165,250,0.3); stroke-width: 1.5; }
.prob-note  { margin-top: 16px; background: rgba(234,88,12,0.1); border: 1px solid rgba(234,88,12,0.2); border-radius: 10px; padding: 12px; font-size: 0.78rem; color: rgba(251,146,60,0.9); text-align: center; }
.prob-facts { display: flex; flex-direction: column; gap: 18px; }
.fact-card  { display: flex; gap: 14px; align-items: flex-start; padding: 18px; background: var(--cream); border-radius: 14px; border: 1px solid rgba(12,27,51,0.07); }
.fact-ico   { width: 38px; height: 38px; border-radius: 10px; display: flex; align-items: center; justify-content: center; font-size: 1.1rem; flex-shrink: 0; }
.fact-ico.prob { background: #FEF2F2; }
.fact-ico.sol  { background: #ECFDF5; }
.fact-title { font-family: 'Clash Display', sans-serif; font-weight: 600; font-size: 0.9rem; color: var(--navy); margin-bottom: 4px; }
.fact-desc  { font-size: 0.8rem; color: var(--slate); line-height: 1.6; }

/* ── ROI ── */
.roi-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(180px,1fr)); gap: 16px; margin-top: 48px; }
.roi-card { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 16px; padding: 24px; text-align: center; transition: all 0.3s; }
.roi-card:hover { background: rgba(96,165,250,0.08); border-color: rgba(96,165,250,0.2); }
.roi-ico { font-size: 2rem; margin-bottom: 12px; display: block; }
.roi-val { font-family: 'Clash Display', sans-serif; font-size: 2rem; font-weight: 700; color: #60A5FA; margin-bottom: 4px; }
.roi-label { font-size: 0.8rem; color: rgba(255,255,255,0.45); }

/* ── TYPES ── */
.types-dest-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(260px,1fr)); gap: 20px; margin-top: 48px; }
.type-dest-card { background: var(--white); border-radius: 18px; padding: 26px; border: 1px solid rgba(12,27,51,0.08); box-shadow: var(--shadow-sm); transition: all 0.3s; }
.type-dest-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-md); }
.type-dest-badge { display: inline-block; font-size: 0.68rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em; padding: 3px 9px; border-radius: 50px; margin-bottom: 14px; }
.type-dest-badge.b1 { background: var(--steel-light); color: var(--steel-deep); }
.type-dest-badge.b2 { background: #FFF7ED; color: #C2410C; }
.type-dest-badge.b3 { background: var(--green-light); color: var(--green); }
.type-dest-ico { font-size: 2.2rem; margin-bottom: 12px; display: block; }
.type-dest-title { font-family: 'Clash Display', sans-serif; font-weight: 700; font-size: 1rem; color: var(--navy); margin-bottom: 8px; }
.type-dest-desc { font-size: 0.82rem; color: var(--slate); line-height: 1.65; margin-bottom: 14px; }
.type-dest-tags { display: flex; flex-wrap: wrap; gap: 6px; }
.type-dest-tag { font-size: 0.7rem; font-weight: 500; padding: 3px 9px; border-radius: 50px; background: var(--cream); color: var(--slate); border: 1px solid var(--slate-light); }

/* ── AIDES ── */
.aides-dest-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(240px,1fr)); gap: 18px; margin-top: 48px; }
.aide-dest-card { border-radius: 16px; padding: 24px; border: 1px solid rgba(12,27,51,0.08); background: var(--cream); }
.aide-dest-name   { font-family: 'Clash Display', sans-serif; font-weight: 600; font-size: 0.9rem; color: var(--navy); margin-bottom: 6px; }
.aide-dest-amount { font-family: 'Clash Display', sans-serif; font-size: 1.5rem; font-weight: 700; margin-bottom: 8px; }
.aide-dest-amount.green  { color: var(--green); }
.aide-dest-amount.orange { color: #EA580C; }
.aide-dest-amount.steel  { color: var(--steel); }
.aide-dest-desc { font-size: 0.8rem; color: var(--slate); line-height: 1.6; }

/* ── ÉLIGIBILITÉ ── */
.elig-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin-top: 48px; }
.elig-card { background: var(--white); border-radius: 16px; padding: 24px; }
.elig-title { font-family: 'Clash Display', sans-serif; font-weight: 700; font-size: 1rem; color: var(--navy); margin-bottom: 14px; }
.elig-list  { display: flex; flex-direction: column; gap: 10px; }
.elig-item  { display: flex; align-items: flex-start; gap: 10px; font-size: 0.83rem; color: var(--slate); }
.elig-item span { flex-shrink: 0; font-size: 1rem; }

/* ── RESPONSIVE ── */
@media (max-width: 900px) {
  .hero .container { grid-template-columns: 1fr; gap: 36px; }
  .prob-grid  { grid-template-columns: 1fr; }
  .elig-grid  { grid-template-columns: 1fr; }
}
