/* ==========================================================================
   CABALION — Page À propos
   ========================================================================== */
.cab-about{max-width:1100px;margin:0 auto;padding:clamp(40px,7vh,90px) 24px 90px;}
.cab-about-hero{display:grid;grid-template-columns:1.4fr .8fr;gap:48px;align-items:center;margin-bottom:60px;}
@media(max-width:760px){.cab-about-hero{grid-template-columns:1fr;gap:30px;}}
.cab-about-eyebrow{font-family:var(--font-mono);font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:var(--soft);}
.cab-about-title{font-family:var(--font-mono);font-weight:700;text-transform:uppercase;font-size:clamp(2rem,5.5vw,3.6rem);line-height:.98;color:var(--light);margin:14px 0 0;}
.cab-about-lead{font-size:clamp(1.05rem,2vw,1.3rem);line-height:1.55;color:var(--soft);margin:22px 0 0;font-weight:300;}
.cab-about-portrait{justify-self:center;}
.cab-about-portrait img{width:clamp(180px,26vw,300px);aspect-ratio:3/4;object-fit:cover;border-radius:18px;box-shadow:0 30px 70px -25px rgba(0,0,0,.7);}
.cab-about-bio{max-width:720px;margin:0 0 70px;}
.cab-about-bio p{color:var(--soft);font-size:1.08rem;line-height:1.75;margin:0 0 1.2em;}
.cab-about-bio strong{color:var(--light);font-weight:600;}
.cab-method{margin:0 0 70px;}
.cab-method-title,.cab-about-cta h2{font-family:var(--font-mono);text-transform:uppercase;color:var(--light);font-size:clamp(1.6rem,4vw,2.4rem);margin:0 0 28px;}
.cab-method-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
@media(max-width:760px){.cab-method-grid{grid-template-columns:1fr;}}
.cab-method-step{background:var(--bg-1);border:1px solid var(--line);border-radius:16px;padding:26px;transition:transform .35s var(--ease),border-color .35s;}
.cab-method-step:hover{transform:translateY(-4px);border-color:var(--mut);}
.cab-step-num{font-family:var(--font-mono);font-size:.85rem;color:var(--mut);}
.cab-method-step h3{font-family:var(--font-mono);text-transform:uppercase;color:var(--light);font-size:1.15rem;margin:10px 0 10px;}
.cab-method-step p{color:var(--soft);font-size:.97rem;line-height:1.6;margin:0;}
.cab-about-cta{text-align:center;border-top:1px solid var(--line);padding-top:54px;}
.cab-about-cta p{font-family:var(--font-mono);color:var(--soft);letter-spacing:.05em;margin:0 0 26px;text-transform:uppercase;font-size:.82rem;}

/* --- Encart Recherche alternance --- */
.cab-alt{background:var(--bg-1);border:1px solid var(--mut);border-radius:18px;padding:32px clamp(24px,4vw,44px);margin:0 0 70px;position:relative;overflow:hidden;}
.cab-alt::before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--soft);}
.cab-alt-badge{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--soft);}
.cab-alt-badge i{width:8px;height:8px;border-radius:50%;background:var(--soft);box-shadow:0 0 0 4px rgba(155,168,171,.15);animation:cabPulse 2s ease-in-out infinite;}
@keyframes cabPulse{0%,100%{opacity:1;}50%{opacity:.35;}}
.cab-alt-title{font-family:var(--font-mono);text-transform:uppercase;color:var(--light);font-size:clamp(1.3rem,3vw,1.9rem);line-height:1.06;margin:12px 0 12px;}
.cab-alt-body p{color:var(--soft);font-size:1rem;line-height:1.65;margin:0 0 20px;max-width:640px;}

.cab-alt--feature{box-shadow:0 24px 70px -34px rgba(0,0,0,.7);}
.cab-alt--feature .cab-alt-title{font-size:clamp(1.5rem,3.6vw,2.3rem);}
.cab-alt--feature::before{width:5px;background:linear-gradient(180deg,var(--soft),var(--mut));}
