  :root {
    --bleu: #1A2B4C;
    --terra: #D96C52;
    --sable: #F7F5F0;
    --sauge: #7B9E87;
    --blanc: #FFFFFF;
    --bleu-light: #2A3F6F;
    --terra-light: #F08070;
    --dark: #0E1A30;
  }
  * { margin: 0; padding: 0; box-sizing: border-box; }
  html { scroll-behavior: smooth; }
  body { font-family: 'Outfit', sans-serif; background: var(--sable); color: var(--bleu); overflow-x: hidden; }

  /* NAV */
  nav {
    position: fixed; top: 0; left: 0; right: 0; z-index: 100;
    padding: 18px 56px; display: flex; align-items: center; justify-content: space-between;
    background: rgba(247,245,240,0.9); backdrop-filter: blur(18px);
    border-bottom: 1px solid rgba(26,43,76,0.07); transition: box-shadow .3s;
  }
  .logo-wrap { display: flex; flex-direction: column; text-decoration: none; }
  .logo { font-size: 1.5rem; font-weight: 800; color: var(--bleu); letter-spacing: -0.03em; line-height: 1; }
  .logo span { color: var(--terra); }
  .logo-sub { font-size: 0.65rem; color: var(--bleu); opacity: 1; font-weight: 500; letter-spacing: 0.02em; margin-top: 3px; }
  .nav-links { display: flex; align-items: center; gap: 36px; list-style: none; }
  .nav-links a { text-decoration: none; font-size: 0.88rem; font-weight: 500; color: var(--bleu); opacity: 1; transition: opacity .2s; }
  .nav-links a:hover { opacity: 1; }
  .btn-nav { background: var(--terra) !important; color: white !important; opacity: 1 !important; padding: 10px 22px; border-radius: 100px; font-weight: 700 !important; font-size: 0.86rem !important; transition: background .2s, transform .2s !important; }
  .btn-nav:hover { background: var(--bleu) !important; transform: translateY(-1px); }

  /* MOBILE MENU BURGER */
  .menu-toggle { display: none; flex-direction: column; gap: 6px; cursor: pointer; border: none; background: none; padding: 4px; z-index: 101; }
  .menu-toggle span { width: 24px; height: 2px; background: var(--bleu); transition: .3s; border-radius: 2px; }
  .menu-toggle.active span:nth-child(1) { transform: translateY(8px) rotate(45deg); }
  .menu-toggle.active span:nth-child(2) { opacity: 0; }
  .menu-toggle.active span:nth-child(3) { transform: translateY(-8px) rotate(-45deg); }

  /* ATOMS */
  .section-label { font-size: 0.74rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.14em; color: var(--terra); margin-bottom: 14px; }
  .section-title { font-size: clamp(2rem, 2.8vw, 3rem); font-weight: 800; line-height: 1.1; letter-spacing: -0.03em; color: var(--bleu); }
  .section-title em { font-style: italic; font-family: 'Lora', serif; color: var(--terra); }
  .btn-primary { display: inline-flex; align-items: center; gap: 8px; background: var(--terra); color: white; padding: 16px 32px; border-radius: 100px; font-size: 0.98rem; font-weight: 700; text-decoration: none; transition: transform .25s, box-shadow .25s, background .25s; box-shadow: 0 8px 24px rgba(217,108,82,0.3); }
  .btn-primary:hover { transform: translateY(-3px); box-shadow: 0 14px 32px rgba(217,108,82,0.4); background: #C55A42; }
  .btn-outline { display: inline-flex; align-items: center; gap: 8px; border: 2px solid var(--bleu); color: var(--bleu); padding: 14px 30px; border-radius: 100px; font-size: 0.98rem; font-weight: 700; text-decoration: none; transition: background .2s, color .2s; }
  .btn-outline:hover { background: var(--bleu); color: white; }
  .reveal { opacity: 0; transform: translateY(28px); transition: opacity .7s ease, transform .7s ease; }
  .reveal.visible { opacity: 1; transform: translateY(0); }
  @media (prefers-reduced-motion: reduce) { .reveal { opacity: 1; transform: none; } }
  noscript .reveal { opacity: 1; transform: none; }
  @keyframes fadeUp { from{opacity:0;transform:translateY(22px)} to{opacity:1;transform:translateY(0)} }
  @keyframes slideLeft { from{opacity:0;transform:translateX(36px)} to{opacity:1;transform:translateX(0)} }
  @keyframes blink { 0%,100%{opacity:1} 50%{opacity:.3} }
  @keyframes grow { from{width:0} to{width:68%} }

  /* ── HERO ── */
  .hero { min-height: 100vh; display: grid; grid-template-columns: 1fr 1.15fr; padding-top: 65px; overflow: hidden; }
  .hero-left { display: flex; flex-direction: column; justify-content: center; padding: 80px 64px 80px 80px; }
  .hero-badge { display: inline-flex; align-items: center; gap: 8px; background: rgba(217,108,82,0.1); color: var(--terra); font-size: 0.75rem; font-weight: 700; padding: 6px 14px; border-radius: 100px; margin-bottom: 32px; width: fit-content; text-transform: uppercase; letter-spacing: 0.06em; animation: fadeUp .6s ease both; }
  .hero-dot { width: 7px; height: 7px; background: var(--terra); border-radius: 50%; animation: blink 2s infinite; }
  .hero-left h1 { font-size: clamp(2.8rem, 3.8vw, 4.4rem); font-weight: 800; line-height: 1.06; letter-spacing: -0.045em; color: var(--bleu); margin-bottom: 24px; animation: fadeUp .6s .1s ease both; }
  .hero-left h1 em { font-style: italic; font-family: 'Lora', serif; color: var(--terra); }
  .hero-sub { font-size: 1.05rem; line-height: 1.65; color: var(--bleu); opacity: 0.65; max-width: 460px; margin-bottom: 40px; animation: fadeUp .6s .2s ease both; }
  .hero-ctas { display: flex; gap: 14px; align-items: center; flex-wrap: wrap; animation: fadeUp .6s .3s ease both; }
  .hero-stats { display: flex; gap: 44px; margin-top: 56px; padding-top: 40px; border-top: 1px solid rgba(26,43,76,0.1); animation: fadeUp .6s .4s ease both; }
  .stat-num { font-size: 2.1rem; font-weight: 800; color: var(--bleu); letter-spacing: -0.04em; line-height: 1; }
  .stat-num span { color: var(--terra); }
  .stat-label { font-size: 0.77rem; color: var(--bleu); opacity: 0.45; margin-top: 4px; line-height: 1.35; max-width: 100px; font-weight: 500; }
  .hero-right { position: relative; overflow: hidden; background: var(--bleu); -webkit-clip-path: polygon(7% 0%, 100% 0%, 100% 100%, 0% 100%); clip-path: polygon(7% 0%, 100% 0%, 100% 100%, 0% 100%); min-height: 400px; }
  .hero-bg-photo { position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: url('../images/Gestionnaire locatif independant GLI.png') 15% center/cover no-repeat; opacity: 1.0; z-index: 1; }
  .hero-cards { position: relative; z-index: 3; display: flex; flex-direction: column; justify-content: center; padding: 80px 56px 80px 80px; height: 100%; gap: 16px; }
  .hcard { background: rgba(255,255,255,0.09); border: 1px solid rgba(255,255,255,0.14); border-radius: 18px; padding: 22px 26px; backdrop-filter: blur(12px); animation: slideLeft .7s ease both; transition: transform .3s; }
  .hcard:hover { transform: translateX(6px); }
  .hcard:nth-child(1){animation-delay:.25s}
  .hcard:nth-child(2){animation-delay:.45s; margin-left:28px;}
  .hcard:nth-child(3){animation-delay:.65s}
  .hcard-top { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; }
  .hcard-icon { width: 36px; height: 36px; background: var(--terra); border-radius: 10px; display: flex; align-items: center; justify-content: center; font-size: 1rem; }
  .hcard-label { font-size: 0.72rem; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: rgba(255,255,255,0.5); }
  .hcard-val { font-size: 1.6rem; font-weight: 800; color: white; letter-spacing: -0.03em; }
  .hcard-sub { font-size: 0.78rem; color: rgba(255,255,255,0.45); margin-top: 3px; }
  .hcard-bar { height: 4px; background: rgba(255,255,255,0.1); border-radius: 100px; margin-top: 10px; overflow: hidden; }
  .hcard-fill { height: 100%; background: linear-gradient(90deg,var(--terra),var(--terra-light)); border-radius: 100px; width: 68%; animation: grow 1.6s .9s ease both; }

  /* ── S2 CONCEPT ── */
  .concept-section { background: var(--bleu); padding: 140px 80px; position: relative; overflow: hidden; }
  .concept-section::before { content:''; position:absolute; top:-180px; right:-180px; width:560px; height:560px; background:radial-gradient(circle,rgba(217,108,82,.12) 0%,transparent 70%); border-radius:50%; }
  .concept-header { max-width: 680px; margin-bottom: 72px; }
  .concept-header .section-title { color: white; }
  .concept-sub { font-size: 1.05rem; line-height: 1.65; color: rgba(255,255,255,0.5); margin-top: 18px; }
  .steps-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; position: relative; }
  .steps-grid::before { content:''; position:absolute; top:40px; left:calc(16.5% + 16px); right:calc(16.5% + 16px); height:2px; background:linear-gradient(90deg,var(--terra),var(--sauge)); }
  .step-card { background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.08); border-radius: 20px; padding: 36px 28px; display:flex; flex-direction:column; align-items:center; text-align:center; transition: background .3s, transform .3s; }
  .step-card:hover { background: rgba(255,255,255,0.09); transform: translateY(-4px); }
  .step-num { width:52px; height:52px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-weight:800; font-size:1.3rem; color:white; margin-bottom:22px; position:relative; z-index:1; }
  .sn1{background:var(--terra)} .sn2{background:var(--sauge)} .sn3{background:rgba(255,255,255,0.15);border:2px solid rgba(255,255,255,.2)}
  .step-icon { font-size:1.6rem; margin-bottom:14px; }
  .step-title { font-size:1rem; font-weight:700; color:white; margin-bottom:10px; }
  .step-desc { font-size:0.85rem; color:rgba(255,255,255,0.5); line-height:1.65; }

  /* Photo band */
  .photo-band { display:grid; grid-template-columns:1.3fr 1fr 1fr; height:360px; overflow:hidden; }
  .pb-img { position:relative; overflow:hidden; }
  .pb-img img { width:100%; height:100%; object-fit:cover; transition:transform .6s; filter:brightness(.8); }
  .pb-img:hover img { transform:scale(1.06); filter:brightness(1); }
  .pb-caption { position:absolute; bottom:0; left:0; right:0; background:linear-gradient(to top,rgba(26,43,76,.85),transparent); padding:22px 18px 14px; font-size:.78rem; font-weight:600; color:rgba(255,255,255,.8); text-transform:uppercase; letter-spacing:.08em; opacity:0; transition:opacity .3s; }
  .pb-img:hover .pb-caption { opacity:1; }

  /* BACK TO TOP */
  .back-to-top {
    position: fixed; bottom: 30px; right: 30px; width: 48px; height: 48px;
    background: var(--blanc); border: 1px solid rgba(26,43,76,0.1);
    color: var(--bleu); border-radius: 50%; display: flex; align-items: center;
    justify-content: center; text-decoration: none; font-size: 1.2rem;
    box-shadow: 0 10px 25px rgba(0,0,0,0.05); z-index: 99; opacity: 0;
    pointer-events: none; transition: .3s;
  }
  .back-to-top.visible { opacity: 1; pointer-events: auto; }
  .back-to-top:hover { transform: translateY(-4px); background: var(--bleu); color: white; }

  /* ── S3 VALEUR ── */
  .valeur-section { padding: 140px 80px 80px 80px;  background: var(--sable); }
  .valeur-header { max-width: 560px; margin-bottom: 64px; }
  .valeur-desc { font-size:1rem; line-height:1.7; color:var(--bleu); opacity:.6; margin-top:16px; }
  .valeur-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
  .vcard { background:white; border-radius:22px; padding:36px 30px; border:1px solid rgba(26,43,76,.06); transition:transform .3s, box-shadow .3s; }
  .vcard:hover { transform:translateY(-6px); box-shadow:0 20px 48px rgba(26,43,76,.09); }
  .vcard-icon { font-size:1.8rem; margin-bottom:18px; display:block; }
  .vcard-title { font-size:1rem; font-weight:700; color:var(--bleu); margin-bottom:10px; }
  .vcard-desc { font-size:.85rem; color:var(--bleu); opacity:.55; line-height:1.65; }

  /* ── S4 MODÈLE FINANCIER ── */
  .finance-section { padding: 80px 80px 80px 80px; }
  .finance-inner { background:var(--bleu); border-radius:32px; padding:80px; position:relative; overflow:hidden; display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; }
  .finance-inner::before { content:''; position:absolute; bottom:-200px; right:-100px; width:500px; height:500px; background:radial-gradient(circle,rgba(217,108,82,.12) 0%,transparent 65%); border-radius:50%; }
  .finance-left { position:relative; z-index:1; }
  .finance-left .section-title { color:white; }
  .finance-cycle { margin-top:40px; }
  .cycle-step { display:flex; align-items:flex-start; gap:16px; padding:18px 0; border-bottom:1px solid rgba(255,255,255,.07); }
  .cycle-step:last-child { border-bottom:none; }
  .cycle-num { width:30px; height:30px; border-radius:50%; flex-shrink:0; display:flex; align-items:center; justify-content:center; font-size:.78rem; font-weight:800; color:white; background:rgba(255,255,255,.1); }
  .cycle-text { font-size:.88rem; color:rgba(255,255,255,.55); line-height:1.55; padding-top:4px; }
  .cycle-text strong { color:white; font-weight:700; }
  .finance-right { display:flex; flex-direction:column; gap:20px; position:relative; z-index:1; }
  .rev-card { border-radius:20px; padding:36px 32px; position:relative; overflow:hidden; transition:transform .3s; }
  .rev-card:hover { transform:translateY(-4px); }
  .rc1 { background:var(--terra); }
  .rc2 { background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.12); }
  .rev-tag { display:inline-block; background:rgba(255,255,255,.18); color:white; font-size:.7rem; font-weight:700; padding:4px 12px; border-radius:100px; text-transform:uppercase; letter-spacing:.07em; margin-bottom:18px; }
  .rev-icon { font-size:2rem; margin-bottom:12px; display:block; }
  .rev-title { font-size:1.3rem; font-weight:800; color:white; letter-spacing:-.02em; margin-bottom:10px; line-height:1.2; }
  .rev-desc { font-size:.87rem; color:rgba(255,255,255,.7); line-height:1.6; }
  .rev-blob { position:absolute; width:150px; height:150px; background:rgba(255,255,255,.07); border-radius:50%; bottom:-50px; right:-30px; }

  

  /* ── S5 COMPARATIF ── */
  .comp-section { padding:80px 80px; background:var(--sable); }
  .comp-header { max-width:540px; margin-bottom:64px; }
  .comp-desc { font-size:1rem; line-height:1.65; color:var(--bleu); opacity:.6; margin-top:16px; }
  .comp-table { background:white; border-radius:24px; overflow:hidden; border:1px solid rgba(26,43,76,.07); }
  .comp-row { display:grid; grid-template-columns:2fr 1fr 1fr 1.2fr; align-items:center; padding:20px 36px; border-bottom:1px solid rgba(26,43,76,.05); transition:background .2s; }
  .comp-row:last-child{border-bottom:none}
  .comp-row:hover:not(.comp-head){background:rgba(247,245,240,.9)}
  .comp-head { background:var(--bleu); padding:22px 36px; display:grid; grid-template-columns:2fr 1fr 1fr 1.2fr; }
  .comp-head-cell { font-size:.8rem; font-weight:700; text-transform:uppercase; letter-spacing:.06em; color:rgba(255,255,255,.55); text-align:center; }
  .comp-head-cell:first-child { text-align:left; color:rgba(255,255,255,.3); }
  .comp-head-cell.aelion-head { color:var(--terra) !important; font-weight:800; }
  .comp-label { font-size:.9rem; font-weight:600; color:var(--bleu); }
  .comp-cell { text-align:center; font-size:.85rem; }
  .c-no{color:#D0D0D0;font-size:1rem} .c-yes{color:var(--sauge);font-size:1rem} .c-ae{color:var(--terra);font-weight:700;font-size:.88rem}
  .comp-hi { background:rgba(217,108,82,.04); }

  /* ── S6 PREUVES ── */
  .proof-section { padding: 80px 80px 80px 80px;  }
  .proof-inner { display:grid; grid-template-columns:1fr 1fr; border-radius:28px; overflow:hidden; min-height:500px; }
  .proof-left { background:var(--bleu); padding:72px 64px; display:flex; flex-direction:column; justify-content:center; position:relative; overflow:hidden; }
  .proof-left::after { content:''; position:absolute; bottom:-120px; left:-80px; width:400px; height:400px; background:radial-gradient(circle,rgba(217,108,82,.15) 0%,transparent 65%); border-radius:50%; }
  .proof-left .section-title { color:white; position:relative; z-index:1; }
  .proof-left-sub { font-size:.95rem; color:rgba(255,255,255,.5); margin-top:16px; line-height:1.6; max-width:340px; position:relative; z-index:1; }
  .proof-photo { background:url('https://images.unsplash.com/photo-1573496359142-b8d87734a5a2?w=700&q=80') center/cover no-repeat; position:relative; min-height:300px; }
  .proof-photo::after { content:''; position:absolute; inset:0; background:linear-gradient(to right,rgba(26,43,76,.3) 0%,transparent 40%); }
  .proof-right { background:white; padding:64px 56px; display:flex; flex-direction:column; justify-content:center; gap:32px; }
  .tcard { display:flex; flex-direction:column; gap:14px; }
  .tcard+.tcard { padding-top:32px; border-top:1px solid rgba(26,43,76,.07); }
  .t-stars { color:var(--terra); font-size:.9rem; letter-spacing:2px; }
  .t-quote { font-size:.95rem; color:var(--bleu); opacity:.75; line-height:1.7; font-style:italic; }
  .t-author { display:flex; align-items:center; gap:12px; }
  .t-avatar { width:42px; height:42px; border-radius:50%; overflow:hidden; flex-shrink:0; }
  .t-avatar img { width:100%; height:100%; object-fit:cover; }
  .t-name { font-size:.9rem; font-weight:700; color:var(--bleu); }
  .t-meta { font-size:.76rem; color:var(--bleu); opacity:.4; margin-top:2px; }

  /* ── S7 FORMULAIRE ── */
  .form-section { padding:80px 80px; background:var(--sable); }
  .form-inner { display:grid; grid-template-columns:1fr 1.1fr; gap:100px; align-items:center; }
  .form-left .section-title { margin-bottom:20px; }
  .form-check { display:flex; align-items:center; gap:8px; font-size:.85rem; color:var(--bleu); opacity:.6; margin-top:14px; font-weight:500; }
  .form-check::before { content:'✓'; color:var(--sauge); font-weight:800; opacity:1; }
  .form-photo-wrap { margin-top:40px; border-radius:20px; overflow:hidden; height:350px; position:relative; background: var(--bleu); }
  .form-photo-wrap img { width:100%; height:100%; object-fit:cover; filter:brightness(.88); display: block; }
  .form-photo-caption { position:absolute; bottom:0; left:0; right:0; background:linear-gradient(to top,rgba(26,43,76,.8),transparent); padding:20px 20px 14px; font-size:.8rem; font-weight:600; color:rgba(255,255,255,.85); }
  .form-box { background:white; border-radius:28px; padding:52px 48px; border:1px solid rgba(26,43,76,.07); box-shadow:0 16px 48px rgba(26,43,76,.06); }
  .form-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
  .fg { display:flex; flex-direction:column; gap:6px; margin-bottom:14px; }
  .fg.full { grid-column:1/-1; }
  label { font-size:.78rem; font-weight:700; color:var(--bleu); text-transform:uppercase; letter-spacing:.05em; opacity:.65; }
  input,select,textarea { font-family:'Outfit',sans-serif; font-size:.94rem; color:var(--bleu); background:var(--sable); border:1.5px solid rgba(26,43,76,.1); border-radius:12px; padding:12px 16px; outline:none; transition:border-color .2s,box-shadow .2s; width:100%; }
  input:focus,select:focus,textarea:focus { border-color:var(--terra); box-shadow:0 0 0 4px rgba(217,108,82,.1); }
  textarea { resize:vertical; min-height:90px; }
  select { cursor:pointer; -webkit-appearance:none; appearance:none; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%231A2B4C' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 14px center; background-size:12px; padding-right:38px; }
  .btn-submit { width:100%; background:var(--terra); color:white; border:none; cursor:pointer; font-family:'Outfit',sans-serif; font-size:1rem; font-weight:700; padding:17px 32px; border-radius:100px; margin-top:10px; transition:transform .25s,box-shadow .25s,background .25s; box-shadow:0 8px 24px rgba(217,108,82,.3); }
  .btn-submit:hover { transform:translateY(-3px); box-shadow:0 14px 32px rgba(217,108,82,.4); background:#C55A42; }
  .form-note { font-size:.76rem; color:var(--bleu); opacity:.3; text-align:center; margin-top:12px; }
  .form-success { display:none; flex-direction:column; align-items:center; text-align:center; gap:14px; padding:24px 0; }
  .form-success .success-icon { font-size:3rem; }
  .form-success h3 { font-size:1.4rem; font-weight:800; color:var(--bleu); }
  .form-success p { font-size:.92rem; color:var(--bleu); opacity:.6; line-height:1.6; }

  /* ── S8 FAQ ── */
  .faq-section { padding:140px 80px; background:white; }
  .faq-inner { display:grid; grid-template-columns:1fr 1.7fr; gap:100px; align-items:start; }
  .faq-sticky { position:sticky; top:110px; }
  .faq-intro { font-size:.95rem; line-height:1.65; color:var(--bleu); opacity:.55; margin-top:18px; max-width:280px; }
  .faq-cta-wrap { margin-top:40px; }
  .faq-list { display:flex; flex-direction:column; }
  .faq-item { border-bottom:1px solid rgba(26,43,76,.08); }
  .faq-item:first-child { border-top:1px solid rgba(26,43,76,.08); }
  .faq-btn { width:100%; background:none; border:none; cursor:pointer; padding:26px 0; display:flex; align-items:center; justify-content:space-between; gap:20px; text-align:left; font-family:'Outfit',sans-serif; font-size:.98rem; font-weight:600; color:var(--bleu); transition:color .2s; }
  .faq-btn:hover { color:var(--terra); }
  .faq-btn.open { color:var(--terra); }
  .faq-chevron { font-size:1rem; flex-shrink:0; color:var(--terra); opacity:.5; transition:transform .35s cubic-bezier(.4,0,.2,1),opacity .2s; }
  .faq-btn.open .faq-chevron { transform:rotate(180deg); opacity:1; }
  .faq-answer { max-height:0; overflow:hidden; transition:max-height .4s cubic-bezier(.4,0,.2,1); }
  .faq-answer.open { max-height:280px; }
  .faq-answer p { font-size:.9rem; line-height:1.75; color:var(--bleu); opacity:.62; padding-bottom:26px; }
  .faq-answer strong { color:var(--terra); font-weight:700; }



  /* FOOTER */
  footer { background:var(--dark); padding:56px 80px 36px; }
  .footer-row { display:flex; align-items:center; justify-content:space-between; padding-bottom:36px; margin-bottom:28px; border-bottom:1px solid rgba(255,255,255,.06); }
  .footer-logo { font-size:1.4rem; font-weight:800; color:white; letter-spacing:-0.03em; }
  .footer-logo span { color:var(--terra); }
  .footer-tagline { font-size:.82rem; color:rgba(255,255,255,.28); margin-top:5px; }
  .footer-links { display:flex; gap:28px; list-style:none; }
  .footer-links a { font-size:.84rem; color:rgba(255,255,255,.35); text-decoration:none; transition:color .2s; }
  .footer-links a:hover { color:white; }
  .footer-bottom { font-size:.76rem; color:rgba(255,255,255,.2); text-align:center; }

  ::-webkit-scrollbar{width:5px} ::-webkit-scrollbar-track{background:var(--sable)} ::-webkit-scrollbar-thumb{background:rgba(26,43,76,.18);border-radius:100px}

  /* ── RESPONSIVE ── */
  @media (max-width: 1024px) {
    nav { padding: 18px 40px; }
    .hero { grid-template-columns: 1fr; padding-top: 100px; height: auto; min-height: auto; }
    .hero-left { padding: 40px 40px 60px; order: 1; }
    .hero-right { padding: 60px 40px; clip-path: none; min-height: 400px; order: 2; }
    .hero-cards { padding: 0; }
    .concept-section, .valeur-section, .finance-section, .comp-section, .proof-section, .form-section, .faq-section { padding: 80px 40px; }
    .finance-inner { grid-template-columns: 1fr; gap: 40px; padding: 60px 40px; }
    .form-inner { grid-template-columns: 1fr; gap: 60px; }
    .faq-inner { grid-template-columns: 1fr; gap: 40px; }
    .faq-sticky { position: static; }
    .faq-intro { max-width: 100%; }
    .comp-table { overflow-x: auto; -webkit-overflow-scrolling: touch; }
    .comp-head, .comp-row { min-width: 800px; }
    .photo-band { height: 280px; }
  }

  @media (max-width: 768px) {
    nav { padding: 14px 24px; }
    .logo { font-size: 1.3rem; }
    .logo-sub { font-size: 0.58rem; }
    .menu-toggle { display: flex; }
    .nav-links {
      position: fixed; top: 0; right: -100%; width: 80%; height: 100vh;
      background: var(--sable); flex-direction: column; justify-content: center;
      box-shadow: -10px 0 30px rgba(0,0,0,0.1); transition: .4s cubic-bezier(0.4,0,0.2,1);
      z-index: 100; gap: 24px; padding: 40px;
    }
    .nav-links.active { right: 0; }
    .nav-links li { width: 100%; text-align: center; }
    .nav-links a { font-size: 1.1rem; width: 100%; display: block; }
    .btn-nav { width: 100%; padding: 14px !important; }

    .hero-left { padding: 40px 24px; }
    .hero-left h1 { font-size: 2.6rem; }
    .hero-stats { gap: 24px; flex-wrap: wrap; }
    .hero-right { padding: 40px 24px; min-height: 350px; }
    .hcard { padding: 18px; }
    .hcard:nth-child(2) { margin-left: 0; }

    .concept-section, .valeur-section, .finance-section, .comp-section, .proof-section, .form-section, .faq-section { padding: 60px 24px; }
    .steps-grid { grid-template-columns: 1fr; gap: 40px; }
    .steps-grid::before { display: none; }
    .valeur-grid { grid-template-columns: 1fr; }
    .photo-band { grid-template-columns: 1fr; height: auto; }
    .pb-img { height: 250px; }
    
    .proof-inner { grid-template-columns: 1fr; border-radius: 20px; }
    .proof-left { padding: 40px 24px; }
    .proof-right { padding: 40px 24px; }
    
    .form-box { padding: 32px 24px; border-radius: 24px; }
    .form-grid { grid-template-columns: 1fr; }
    .form-photo-wrap { height: 200px; }

    footer { padding: 40px 24px 30px; }
    .footer-row { flex-direction: column; text-align: center; gap: 40px; }
    .footer-links { flex-direction: column; gap: 16px; }
  }