/* ============================================================
   CERCLE BTP — home.css (page d'accueil uniquement)
   ============================================================ */

.hero{padding:clamp(54px,8vw,100px) 0 clamp(44px,6vw,70px);position:relative;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;background:radial-gradient(700px 420px at 12% -10%,var(--orange-soft),transparent 68%)}
.hero .wrap{position:relative;z-index:1}
.hero h1{max-width:17ch}
.hero .lead{margin-top:24px}
.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px;align-items:center}
.micro{font-size:.8rem;color:var(--gris);margin-top:16px;display:flex;flex-wrap:wrap;gap:18px}
.micro span{display:flex;align-items:center;gap:7px}
.micro span::before{content:"";width:6px;height:6px;background:var(--orange);border-radius:50%;flex:none}

.gauge{margin-top:clamp(44px,6vw,68px);display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line-2);border:1px solid var(--line-2)}
.gauge div{background:var(--noir);padding:24px 22px}
.gauge b{display:block;font-size:clamp(1.5rem,2.8vw,2rem);font-weight:900;letter-spacing:-.045em}
.gauge span{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:var(--gris);display:block;margin-top:7px;font-weight:600}

.trades{border-top:1px solid var(--line-2);border-bottom:1px solid var(--line-2);padding:20px 0;overflow:hidden}
.trades-lbl{font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:#6E6E6E;text-align:center;margin-bottom:14px;font-weight:600}
.marquee{display:flex;width:max-content;animation:slide 44s linear infinite}
.marquee span{font-weight:800;font-size:clamp(.98rem,1.9vw,1.28rem);letter-spacing:-.03em;color:#4E4E4E;padding:0 24px;white-space:nowrap;display:flex;align-items:center;gap:24px}
.marquee span::after{content:"";width:5px;height:5px;background:var(--orange);opacity:.6;border-radius:50%;flex:none}
@keyframes slide{to{transform:translateX(-50%)}}

.sec{padding:clamp(62px,8.5vw,112px) 0}
.sec-head{max-width:66ch;margin-bottom:clamp(34px,5vw,56px)}
.sec-head.center{margin-left:auto;margin-right:auto;text-align:center}
.sec-head.center .lead{margin-left:auto;margin-right:auto}
.sec-head p{margin-top:18px}

/* Pains */
.pains{display:grid;grid-template-columns:repeat(auto-fit,minmax(275px,1fr));gap:1px;background:var(--line-2);border:1px solid var(--line-2)}
.pain{background:var(--noir-2);padding:30px 28px;transition:background .2s}
.pain:hover{background:var(--noir-3)}
.pain.wide{grid-column:1/-1}
.pain .n{font-size:.72rem;font-weight:700;color:var(--orange);letter-spacing:.12em;display:block;margin-bottom:14px}
.pain p{color:#BDBDBD;font-size:1rem;line-height:1.55}
.pain strong{color:var(--blanc);font-weight:700}
.verdict{margin-top:32px;border-left:3px solid var(--orange);padding:24px 28px;background:var(--noir-2)}
.verdict p{color:#D6D6D6;font-size:1.06rem}
.verdict strong{color:var(--blanc);font-weight:700}

/* Stack offre */
.stack{border:1px solid var(--line);background:var(--noir-2);border-radius:8px;overflow:hidden}
.stack-row{display:flex;gap:20px;padding:24px clamp(22px,3vw,34px);border-bottom:1px solid var(--line-2);align-items:flex-start}
.stack-row:last-child{border-bottom:0}
.stack-row .ck{width:26px;height:26px;flex:none;border-radius:50%;background:var(--orange-soft);color:var(--orange);display:grid;place-items:center;font-weight:900;font-size:.8rem;margin-top:2px}
.stack-row b{display:block;font-size:1.02rem;font-weight:700;letter-spacing:-.02em}
.stack-row p{font-size:.94rem;margin-top:5px}
.stack-foot{background:var(--noir-3);padding:26px clamp(22px,3vw,34px);display:flex;flex-wrap:wrap;gap:18px;align-items:center;justify-content:space-between}
.stack-foot p{font-size:.92rem;color:var(--gris-2);max-width:46ch}

/* Garanties */
.garanties{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line-2);border:1px solid var(--line-2);margin-top:28px}
.garantie{background:var(--noir-2);padding:28px 26px}
.garantie .g-label{font-size:.68rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--orange);display:block;margin-bottom:12px}
.garantie h4{font-size:1.05rem;font-weight:800;letter-spacing:-.025em;margin-bottom:10px}
.garantie p{font-size:.94rem;line-height:1.55}

/* Cas types (aperçu sur l'accueil) */
.cas-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line-2);border:1px solid var(--line-2)}
.cas-card{background:var(--noir-2);padding:clamp(24px,3vw,38px);display:flex;flex-direction:column;transition:background .2s}
.cas-card:hover{background:var(--noir-3)}
.cas-tag{font-size:.68rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--orange);display:block;margin-bottom:14px}
.cas-card h3{font-size:clamp(1rem,1.5vw,1.18rem);margin-bottom:14px;letter-spacing:-.025em}
.cas-problem{font-size:.93rem;color:#BDBDBD;line-height:1.55;border-left:3px solid #2A2A2A;padding-left:14px;margin-bottom:22px}
.cas-kpis{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line-2);border:1px solid var(--line-2);margin-bottom:22px}
.cas-kpi{background:var(--noir);padding:14px 16px}
.cas-kpi b{display:block;font-size:clamp(1.1rem,1.8vw,1.4rem);font-weight:900;letter-spacing:-.04em;color:var(--blanc)}
.cas-kpi span{font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;color:var(--gris);font-weight:600;display:block;margin-top:4px}
.cas-kpi.hi b{color:var(--orange)}
.cas-note{font-size:.76rem;color:#6E6E6E;margin-top:20px;line-height:1.55;font-style:italic}

/* Score BTP */
.score-band{position:relative;overflow:hidden}
.score-band::before{content:"";position:absolute;inset:0;background:radial-gradient(620px 380px at 82% 40%,var(--orange-soft),transparent 68%)}
.score-band .wrap{position:relative;z-index:1}
.score-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:clamp(30px,5vw,64px);align-items:center}

.score-preview{border:1px solid var(--line);border-radius:8px;background:var(--noir-2);padding:clamp(26px,3vw,34px)}
.score-ring{width:132px;height:132px;border-radius:50%;border:3px solid var(--orange);display:grid;place-content:center;
  text-align:center;margin:0 auto 26px;background:var(--orange-soft)}
.score-ring b{display:block;font-size:2.7rem;font-weight:900;letter-spacing:-.03em;line-height:1;color:var(--orange)}
.score-ring span{display:block;margin-top:4px;font-size:.72rem;font-weight:600;color:var(--gris)}
.score-preview .score-lbl{text-align:center;font-size:.62rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gris);margin:-14px 0 22px}

.score-themes{list-style:none;display:flex;flex-direction:column;gap:11px}
.score-themes li{display:flex;align-items:center;gap:14px;font-size:.84rem;color:var(--gris-2)}
.score-themes span{flex:1;min-width:0}
.score-themes i{width:78px;height:6px;border-radius:99px;background:var(--line);flex:none;position:relative;overflow:hidden}
.score-themes i::after{content:"";position:absolute;left:0;top:0;bottom:0;border-radius:99px}
.score-themes .lvl-low::after{width:28%;background:#E53E3E}
.score-themes .lvl-mid::after{width:58%;background:#D69E2E}
.score-themes .lvl-high::after{width:88%;background:#38A169}

/* Fondateur */
.founder{display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(28px,5vw,62px);align-items:center}
.founder-visual{position:relative;border-radius:8px;overflow:hidden;border:1px solid var(--line)}
.founder-visual img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 22%}
.founder-visual .cap{position:absolute;left:0;right:0;bottom:0;padding:26px 22px 20px;background:linear-gradient(transparent,rgba(10,10,10,.92));font-size:.8rem;color:var(--gris-2);font-weight:600}
.founder blockquote{font-weight:800;font-size:clamp(1.08rem,1.8vw,1.36rem);line-height:1.35;letter-spacing:-.03em;color:var(--blanc);border-left:3px solid var(--orange);padding-left:20px;margin:24px 0}
.sig{margin-top:24px}
.sig b{font-size:1.02rem;font-weight:800;letter-spacing:-.03em;display:block}
.sig span{font-size:.85rem;color:var(--gris)}

/* Sélection */
.fit{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.fit-col{border:1px solid var(--line);border-radius:8px;padding:clamp(26px,3vw,36px)}
.fit-col.yes{border-color:rgba(255,117,31,.45);background:linear-gradient(var(--orange-soft),transparent 60%)}
.fit-col h3{margin-bottom:20px}
.fit-col ul{list-style:none;display:flex;flex-direction:column;gap:14px}
.fit-col li{font-size:.97rem;color:var(--gris-2);padding-left:28px;position:relative;line-height:1.5}
.fit-col.yes li::before{content:"✓";position:absolute;left:0;top:-1px;color:var(--orange);font-weight:900}
.fit-col.no li::before{content:"✕";position:absolute;left:0;top:-1px;color:#5A5A5A;font-weight:800;font-size:.9rem}
.fit-col.no li{color:var(--gris)}

/* FAQ */
.faq{max-width:840px}
details{border-bottom:1px solid var(--line-2)}
summary{list-style:none;cursor:pointer;padding:24px 44px 24px 0;position:relative;font-weight:700;font-size:clamp(1rem,1.6vw,1.14rem);letter-spacing:-.025em}
summary::-webkit-details-marker{display:none}
summary::after{content:"";position:absolute;right:8px;top:50%;width:12px;height:12px;border-right:2px solid var(--orange);border-bottom:2px solid var(--orange);transform:translateY(-70%) rotate(45deg);transition:transform .2s}
details[open] summary::after{transform:translateY(-30%) rotate(225deg)}
details p{padding-bottom:26px;max-width:68ch;font-size:1rem}

/* Candidature */
.apply{background:var(--noir-2);border-top:1px solid var(--line)}
.apply-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,70px);align-items:start}
.steps{list-style:none;display:flex;flex-direction:column;gap:22px;margin-top:30px}
.steps li{display:flex;gap:16px;align-items:flex-start}
.steps i{font-style:normal;font-size:.8rem;font-weight:800;color:var(--orange);border:1px solid var(--line);width:32px;height:32px;flex:none;display:grid;place-items:center;border-radius:50%}
.steps b{display:block;font-size:1rem;font-weight:700}
.steps span{font-size:.92rem;color:var(--gris)}
.reassure{margin-top:32px;border:1px solid var(--line);border-radius:8px;padding:22px 24px;background:var(--noir)}
.reassure b{display:block;font-size:.98rem;font-weight:700;margin-bottom:7px}
.reassure p{font-size:.92rem}

/* Final */
.final{padding:clamp(70px,10vw,124px) 0;text-align:center;border-top:1px solid var(--line-2);position:relative;overflow:hidden}
.final::before{content:"";position:absolute;inset:0;background:radial-gradient(620px 340px at 50% 120%,var(--orange-soft),transparent 70%)}
.final .wrap{position:relative}
.final h2{max-width:20ch;margin:0 auto}
.final .lead{margin:22px auto 0}
.final .cta-row{justify-content:center}
.final .micro{justify-content:center}

@media(max-width:980px){
  .founder{grid-template-columns:1fr}
  .founder-visual{max-width:420px}
  .apply-grid{grid-template-columns:1fr}
  .fit{grid-template-columns:1fr}
  .cas-cards{grid-template-columns:1fr}
  .score-grid{grid-template-columns:1fr}
  .score-preview{max-width:420px}
  .garanties{grid-template-columns:1fr}
  .gauge{grid-template-columns:repeat(2,1fr)}
  .dock{display:block}
  body{padding-bottom:76px}
}
@media(max-width:560px){
  .cta-row .btn{width:100%}
  .stack-foot{flex-direction:column;align-items:stretch}
  .stack-foot .btn{width:100%}
}
