/* Kelvea Energies — charte "tech épuré"
   Encre #0E0E0C · Solaire #FFB400 · Blanc #FFFFFF · Sable #F6F6F2 · Gris #55554F
   Titres : Space Grotesk — Texte : Inter */

:root{
  --ink:#0E0E0C;
  --ink-soft:#55554F;
  --paper:#FFFFFF;
  --paper-alt:#F6F6F2;
  --line:#E6E6DF;
  --accent:#FFB400;
  --accent-dark:#E5A200;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Inter',sans-serif;color:var(--ink);background:var(--paper);line-height:1.6;font-size:16px}
h1,h2,h3,h4,.brand{font-family:'Space Grotesk',sans-serif}
.wrap{max-width:1080px;margin:0 auto;padding:0 24px}
section{padding:80px 0}

/* NAV */
nav{position:sticky;top:0;background:rgba(255,255,255,.95);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);z-index:10}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:72px}
.brand{display:flex;flex-direction:column;align-items:flex-end;text-decoration:none;color:var(--ink);line-height:1.1}
.brand .row{display:flex;align-items:baseline}
.brand .word{font-weight:700;font-size:1.45rem;letter-spacing:-0.02em}
.brand .sq{width:10px;height:10px;background:var(--accent);display:inline-block;margin-left:3px}
.brand .suffix{font-size:.66rem;letter-spacing:.3em;color:var(--ink-soft);font-weight:500;margin-top:2px;margin-right:-0.3em}
.nav-links{display:flex;gap:28px;align-items:center}
.nav-links a{text-decoration:none;color:var(--ink-soft);font-size:.9rem;font-weight:500}
.nav-links a:hover{color:var(--ink)}
.nav-links a.active{color:var(--ink);box-shadow:inset 0 -2px 0 var(--accent)}
.btn{display:inline-block;background:var(--ink);color:#fff;padding:11px 22px;text-decoration:none;font-weight:600;font-size:.9rem;border:none}
.btn:hover{background:#000}
.btn-accent{background:var(--accent);color:var(--ink)}
.btn-accent:hover{background:var(--accent-dark)}

/* HERO */
.hero{padding:100px 0 72px}
.hero h1{font-size:clamp(2.3rem,5.2vw,3.8rem);line-height:1.06;letter-spacing:-0.03em;font-weight:700}
.hero h1 .hl{box-shadow:inset 0 -0.28em 0 var(--accent)}
.hero p.lead{max-width:620px;margin:28px 0 36px;font-size:1.13rem;color:var(--ink-soft)}
.hero-page{padding:80px 0 24px}
.hero-page h1{font-size:clamp(2rem,4.5vw,3rem);letter-spacing:-0.03em;line-height:1.1}
.hero-page p.lead{max-width:640px;margin:20px 0 0;font-size:1.08rem;color:var(--ink-soft)}

/* IMAGES */
.hero-flex{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}
.photo{width:100%;display:block;object-fit:cover;filter:saturate(.85) contrast(1.04)}
.hero-photo{aspect-ratio:4/3;border:1px solid var(--line)}
.band-photo{aspect-ratio:21/7;margin-top:44px;border:1px solid var(--line)}
.band-photo-dark{aspect-ratio:21/7;margin-top:44px;border:1px solid #2a2a26;filter:saturate(.6) contrast(1.08) brightness(.85)}

/* STATS */
.stats{display:flex;gap:0;border:1px solid var(--line);margin-top:64px}
.stat{flex:1;padding:28px 32px;border-right:1px solid var(--line)}
.stat:last-child{border-right:none}
.stat .n{font-family:'Space Grotesk';font-size:2.2rem;font-weight:700;letter-spacing:-0.02em}
.stat .n em{color:var(--accent-dark);font-style:normal}
.stat .l{font-size:.85rem;color:var(--ink-soft);margin-top:2px}

/* SECTION HEADERS */
.kicker{display:inline-flex;align-items:center;gap:8px;font-size:.78rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:18px}
.kicker::before{content:"";width:10px;height:10px;background:var(--accent)}
h2{font-size:clamp(1.6rem,3.2vw,2.3rem);letter-spacing:-0.02em;line-height:1.15;margin-bottom:18px}
.sub{max-width:640px;color:var(--ink-soft);margin-bottom:44px}
.alt{background:var(--paper-alt)}

/* PILIERS */
.pillars{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.pillar{background:var(--paper);border:1px solid var(--line);padding:40px}
.pillar h3{font-size:1.35rem;margin-bottom:14px;letter-spacing:-0.01em}
.pillar p{color:var(--ink-soft);font-size:.95rem;margin-bottom:18px}
.pillar ul{list-style:none}
.pillar li{padding:9px 0;border-top:1px solid var(--line);font-size:.92rem}
.pillar li::before{content:"— ";color:var(--accent-dark);font-weight:700}
.pillar .more{display:inline-block;margin-top:18px;font-size:.9rem;font-weight:600;color:var(--ink);text-decoration:none;box-shadow:inset 0 -2px 0 var(--accent)}

/* PARCOURS */
.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;margin-top:8px}
.step{border-top:3px solid var(--ink);padding-top:18px}
.step.acc{border-top-color:var(--accent)}
.step .num{font-family:'Space Grotesk';font-weight:700;font-size:.85rem;color:var(--ink-soft)}
.step h4{font-size:1rem;margin:6px 0 8px}
.step p{font-size:.84rem;color:var(--ink-soft)}
.claim{margin-top:50px;font-family:'Space Grotesk';font-size:1.45rem;font-weight:600;letter-spacing:-0.01em}
.claim span{box-shadow:inset 0 -0.28em 0 var(--accent)}

/* SEGMENTS / CARDS */
.segs{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.seg{border:1px solid var(--line);padding:30px;background:var(--paper)}
.seg h4{font-size:1.05rem;margin-bottom:10px}
.seg p{font-size:.88rem;color:var(--ink-soft)}

/* PRESTATIONS DÉTAILLÉES */
.prestas{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.presta{border:1px solid var(--line);background:var(--paper);padding:32px}
.presta .num{font-family:'Space Grotesk';font-weight:700;color:var(--accent-dark);font-size:.85rem}
.presta h4{font-size:1.1rem;margin:6px 0 10px}
.presta p{font-size:.9rem;color:var(--ink-soft)}

/* FACE B / BANDEAU SOMBRE */
.pro{background:var(--ink);color:#fff}
.pro .kicker{color:#9a9a92}
.pro h2{color:#fff}
.pro .sub{color:#b8b8b0}
.pro-grid{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:36px}
.chip{border:1px solid #3a3a36;padding:10px 18px;font-size:.88rem;color:#e8e8e2}
.chip strong{color:var(--accent)}
.pro .note{font-size:.88rem;color:#9a9a92;max-width:560px}

/* RÉFÉRENCES */
.refs{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.refs .big{font-family:'Space Grotesk';font-size:clamp(3rem,7vw,4.6rem);font-weight:700;letter-spacing:-0.03em;line-height:1}
.refs .big em{color:var(--accent-dark);font-style:normal}
.refs ul{list-style:none;margin-top:8px}
.refs li{padding:13px 0;border-bottom:1px solid var(--line);font-size:.95rem}

/* CTA BANDEAU */
.cta-band{background:var(--paper-alt);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:56px 0}
.cta-band .inner{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.cta-band h2{margin-bottom:6px}
.cta-band p{color:var(--ink-soft)}

/* CONTACT */
.contact .mail{font-family:'Space Grotesk';font-size:clamp(1.4rem,3.5vw,2.2rem);font-weight:600;text-decoration:none;color:var(--ink);box-shadow:inset 0 -0.22em 0 var(--accent)}
.contact .meta{margin-top:26px;color:var(--ink-soft);font-size:.92rem}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-top:24px}
.contact-card{border:1px solid var(--line);padding:32px;background:var(--paper)}
.contact-card h4{font-size:1.05rem;margin-bottom:10px}
.contact-card p{font-size:.9rem;color:var(--ink-soft)}

footer{border-top:1px solid var(--line);padding:28px 0;font-size:.8rem;color:var(--ink-soft)}
.foot-inner{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px}
footer a{color:var(--ink-soft)}

@media(max-width:860px){
  .pillars,.segs,.refs,.prestas,.contact-grid,.hero-flex{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr 1fr}
  .stats{flex-direction:column}
  .stat{border-right:none;border-bottom:1px solid var(--line)}
  .nav-links a:not(.btn){display:none}
}
