/* Page À propos : utilise uniquement les variables de main.css (--dl-*) */
body:has(.dl-about){overflow-x:clip}
.dl-about{width:100vw;margin-left:calc(50% - 50vw);position:relative;overflow:hidden;color:var(--dl-ink)}
.dl-about *{box-sizing:border-box}
.dl-about h1,.dl-about h2,.dl-about h3{font-family:Georgia,serif;font-weight:500;margin:0;letter-spacing:-.06em}

/* Hero */
.da-hero{position:relative;isolation:isolate;display:grid;grid-template-columns:46% 54%;min-height:clamp(640px,calc(100svh - 180px),840px);background:var(--dl-sage);perspective:1200px}
.da-hero:before{content:"";position:absolute;z-index:-1;left:44%;top:-20%;width:75vw;height:120%;border-radius:50%;background:var(--dl-cream);transform:rotate(-14deg)}
.da-copy{align-self:center;padding:8vw 3vw 6vw clamp(7vw,11vw,160px);z-index:3}
.da-hero h1{font-size:clamp(52px,6.8vw,112px);line-height:.9;color:var(--dl-ink)}
.da-l{display:block;overflow:hidden;padding-bottom:.06em}
.da-l b{display:block;font-weight:inherit;transform:translateY(110%) rotate(3deg);animation:da-rise 1s var(--dl-ease) forwards}
.da-l:nth-child(2) b{animation-delay:.14s}.da-l:nth-child(3) b{animation-delay:.28s}
.da-em{color:var(--dl-coral)}
@keyframes da-rise{to{transform:none}}
.da-copy p{max-width:360px;margin:30px 0;color:#34553b;font-size:17px;opacity:0;animation:da-show .8s .7s forwards}
.da-copy .dl-button{opacity:0;animation:da-show .8s .9s forwards}
@keyframes da-show{to{opacity:1}}

/* Scène 3D */
.da-stage{position:relative;min-height:620px;transform-style:preserve-3d}
.da-halo{position:absolute;left:15%;top:10%;width:68%;aspect-ratio:1;border:1px solid rgba(77,154,69,.35);border-radius:50%;animation:da-orbit 18s linear infinite}
.da-halo:after{content:"";position:absolute;right:5%;top:13%;width:15px;height:15px;background:var(--dl-coral);border-radius:50%;box-shadow:0 0 0 8px rgba(212,49,50,.12)}
.da-halo--s{left:29%;top:22%;width:42%;border-color:rgba(39,130,198,.35);animation-direction:reverse;animation-duration:13s}
@keyframes da-orbit{to{transform:rotate(360deg)}}
.da-cube{position:absolute;left:50%;top:50%;width:190px;height:190px;margin:-95px 0 0 -95px;transform-style:preserve-3d;animation:da-spin 24s linear infinite}
.da-cube b{position:absolute;inset:0;display:grid;place-items:center;font:500 32px Georgia,serif;letter-spacing:-.05em;color:#fff;border:2px solid rgba(255,255,255,.4);box-shadow:inset 0 0 40px rgba(0,0,0,.14)}
.da-cube b:nth-child(1){background:var(--dl-coral);transform:translateZ(95px)}
.da-cube b:nth-child(2){background:var(--dl-forest);transform:rotateY(90deg) translateZ(95px)}
.da-cube b:nth-child(3){background:var(--dl-blue);transform:rotateY(180deg) translateZ(95px)}
.da-cube b:nth-child(4){background:var(--dl-ink);transform:rotateY(-90deg) translateZ(95px)}
.da-cube b:nth-child(5){background:var(--dl-yellow);color:var(--dl-ink);transform:rotateX(90deg) translateZ(95px)}
.da-cube b:nth-child(6){background:var(--dl-sage);color:var(--dl-ink);transform:rotateX(-90deg) translateZ(95px)}
@keyframes da-spin{from{transform:rotateX(-22deg) rotateY(0)}to{transform:rotateX(-22deg) rotateY(360deg)}}
.da-sat{position:absolute;transition:transform .25s ease-out}
.da-sphere{width:96px;height:96px;border-radius:50%;background:radial-gradient(circle at 30% 28%,#fff6a8,var(--dl-yellow) 45%,#b89b08);box-shadow:0 26px 34px -12px rgba(23,44,39,.35);animation:da-bob 5s ease-in-out infinite}
.da-ring{width:84px;height:84px;border-radius:50%;border:15px solid var(--dl-coral);box-shadow:inset 0 6px 8px rgba(0,0,0,.2),0 12px 18px rgba(212,49,50,.25);animation:da-bob 6s ease-in-out infinite reverse}
.da-mini{width:52px;height:52px;background:var(--dl-blue);border-radius:10px;box-shadow:14px 18px 24px rgba(23,44,39,.25);animation:da-tumble 9s ease-in-out infinite}
@keyframes da-bob{50%{translate:0 -22px}}
@keyframes da-tumble{50%{rotate:90deg;translate:0 -18px}}
.da-sticker{position:absolute;right:22%;top:47%;z-index:6;width:108px;height:108px;display:grid;place-items:center;text-align:center;background:var(--dl-yellow);border-radius:50%;font-size:9px;letter-spacing:.1em;line-height:1.1;color:var(--dl-ink);transform:rotate(12deg)}
.da-sticker b{display:block;color:var(--dl-coral);font-size:14px}

/* Bandeau */
.da-marq{background:var(--dl-ink);color:var(--dl-cream);padding:18px 0;overflow:hidden;white-space:nowrap}
.da-marq div{display:inline-flex;gap:38px;animation:da-slide 40s linear infinite;font:500 30px Georgia,serif;letter-spacing:-.04em}
.da-marq em{font-style:normal;color:var(--dl-yellow)}
@keyframes da-slide{to{transform:translateX(-50%)}}

/* Valeurs */
.da-values{padding:clamp(80px,10vw,150px) 4vw;background:var(--dl-paper)}
.da-head{max-width:1300px;margin:0 auto 55px}
.da-head h2{font-size:clamp(42px,5.5vw,78px);line-height:.92;max-width:11ch;color:var(--dl-ink)}
.da-grid{max-width:1300px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:26px;perspective:1100px}
.da-card{--rx:0deg;--ry:0deg;position:relative;min-height:340px;padding:40px 34px;background:var(--dl-cream);border-top:6px solid var(--c);transform-style:preserve-3d;transform:rotateX(var(--rx)) rotateY(var(--ry));transition:transform .2s ease-out;box-shadow:18px 25px 32px rgba(23,44,39,.12)}
.da-card svg{width:58px;height:58px;padding:13px;border-radius:50%;background:var(--c);stroke:#fff;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transform:translateZ(55px);margin-bottom:28px}
.da-card h3{font-size:38px;color:var(--dl-ink);margin-bottom:14px;transform:translateZ(40px)}
.da-card p{margin:0;color:#3e5648;line-height:1.7;transform:translateZ(22px)}
.da-glare{position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at var(--gx,50%) var(--gy,0),rgba(255,255,255,.55),transparent 55%)}

/* Chiffres */
.da-stats{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:30px;padding:clamp(70px,8vw,110px) 4vw;background:var(--dl-ink);color:var(--dl-cream);overflow:hidden}
.da-stats:before{content:"";position:absolute;right:-140px;top:-220px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(77,154,69,.5),transparent 65%)}
.da-stats>div{position:relative;border-left:3px solid var(--dl-yellow);padding-left:22px}
.da-stats strong{display:block;font:500 clamp(54px,6vw,92px)/1 Georgia,serif;letter-spacing:-.06em}
.da-stats p{margin:8px 0 0;color:#cfe4c8;font-size:13px;letter-spacing:.04em}

/* Contact */
.da-cta{display:grid;grid-template-columns:1.4fr 1fr;gap:0;padding:clamp(70px,9vw,130px) 4vw;background:var(--dl-paper);max-width:1400px;margin:auto}
.da-cta__main{padding:clamp(34px,5vw,70px);background:var(--dl-sage)}
.da-cta__main h2{font-size:clamp(38px,4.8vw,68px);line-height:.92;margin-bottom:20px;color:var(--dl-ink)}
.da-cta__main p{max-width:440px;margin:0 0 30px;color:#34553b;font-size:17px}
.da-btns{display:flex;flex-wrap:wrap;gap:14px}
.da-wa{background:var(--dl-coral)!important;border-color:var(--dl-coral)!important}
.da-wa:hover{background:var(--dl-ink)!important;border-color:var(--dl-ink)!important}
.da-line{background:transparent!important;color:var(--dl-ink)!important;border-color:var(--dl-ink)!important}
.da-line:hover{background:var(--dl-ink)!important;color:#fff!important}
.da-cta__info{display:flex;flex-direction:column;justify-content:center;gap:6px;padding:clamp(30px,4vw,56px);background:var(--dl-ink);color:var(--dl-cream);transition:background .3s}
.da-cta__info:hover{background:#0f1f1b}
.da-cta__info small{color:var(--dl-yellow);font-size:10px;letter-spacing:.17em;text-transform:uppercase}
.da-cta__info strong{font:500 21px/1.25 Georgia,serif;margin-bottom:22px}
.da-cta__info span{font-size:11px;letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid var(--dl-yellow);align-self:flex-start;padding-bottom:4px}

/* Apparition au scroll */
.da-r{opacity:0;transform:translateY(34px);transition:opacity .8s,transform .9s var(--dl-ease)}
.da-r.is-in{opacity:1;transform:none}
.da-grid .da-r:nth-child(2),.da-stats .da-r:nth-child(2){transition-delay:.12s}
.da-grid .da-r:nth-child(3),.da-stats .da-r:nth-child(3){transition-delay:.24s}
.da-stats .da-r:nth-child(4){transition-delay:.36s}

@media(max-width:900px){
  .da-hero{display:block;min-height:0;padding-bottom:20px}
  .da-hero:before{left:4%;top:47%;width:130%;height:65%;transform:rotate(-8deg)}
  .da-copy{padding:74px 24px 40px}
  .da-stage{min-height:440px}.da-sticker{right:8%;width:84px;height:84px;font-size:7px}
  .da-cube{transform-origin:center;scale:.8}.da-mini{display:none}
  .da-grid{grid-template-columns:1fr}.da-stats{grid-template-columns:1fr 1fr}.da-cta{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  .da-l b,.da-copy p,.da-copy .dl-button{transform:none;opacity:1}
  .da-r{opacity:1;transform:none}
}