/* ============================================================
   blog.css — styles du Journal (desle.immo/blog/)
   Complète le chrome partagé site.css. Accent unique : Lagon.
   ============================================================ */

.dl-eyebrow{display:flex;align-items:center;gap:12px;font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--gray)}
.dl-eyebrow .rule{width:26px;height:1px;background:var(--lagon);display:block}

/* CTA fill (identique accueil) */
.dl-cta{position:relative;overflow:hidden}
.dl-cta-fill{position:absolute;inset:0;transform:translateY(101%);transition:transform .42s cubic-bezier(.76,0,.24,1);z-index:0;background:var(--ink)}
.dl-cta:hover .dl-cta-fill,.dl-cta:focus-visible .dl-cta-fill{transform:translateY(0)}
.dl-cta-label,.dl-cta-arrow{position:relative;z-index:1;transition:color .35s ease}
.dl-cta-arrow{display:inline-block;transition:transform .42s cubic-bezier(.16,1,.3,1)}
.dl-cta:hover .dl-cta-arrow{transform:translateX(7px)}

/* Carte « à la une » */
.dl-feature{position:relative;transition:transform .35s cubic-bezier(.16,1,.3,1),border-color .35s ease}
.dl-feature::before{content:'';position:absolute;top:-1px;left:-1px;width:0;height:2px;background:var(--lagon);transition:width .5s cubic-bezier(.76,0,.24,1)}
.dl-feature:hover{transform:translateY(-6px);border-color:rgba(16,20,24,.3)}
.dl-feature:hover::before{width:calc(100% + 2px)}

/* Lignes d'articles */
.dl-row{position:relative;transition:padding-left .42s cubic-bezier(.16,1,.3,1)}
.dl-row::after{content:'';position:absolute;left:0;top:64px;bottom:22%;width:2px;background:var(--lagon);transform:scaleY(0);transform-origin:top;transition:transform .42s cubic-bezier(.76,0,.24,1)}
.dl-row:hover{padding-left:18px}
.dl-row:hover::after{transform:scaleY(1)}
.dl-rt{display:inline;background-image:linear-gradient(var(--lagon),var(--lagon));background-repeat:no-repeat;background-position:0 100%;background-size:0% 1.5px;transition:background-size .45s cubic-bezier(.76,0,.24,1)}
.dl-row:hover .dl-rt{background-size:100% 1.5px}
.dl-arrow{transition:transform .42s cubic-bezier(.16,1,.3,1),opacity .35s;opacity:.35}
.dl-row:hover .dl-arrow{transform:translateX(8px);opacity:1}
.dl-row-soon{opacity:.55;pointer-events:none}

/* Prose d'article */
.dl-prose p{color:var(--grey-700,#3A3F49);font-size:clamp(1.12rem,1.5vw,1.28rem);line-height:1.68;margin:0 0 1.45em;text-wrap:pretty}
.dl-prose>p:first-of-type::first-letter{font-weight:600;font-size:3.55em;line-height:.78;float:left;padding:.06em .12em .02em 0;color:var(--lagon)}
.dl-prose h2{font-size:clamp(1.6rem,3vw,2.3rem);font-weight:500;letter-spacing:-.03em;line-height:1.1;color:var(--ink);margin:clamp(2.2em,4vw,2.8em) 0 .7em;scroll-margin-top:110px;text-wrap:balance}
.dl-prose ul{list-style:none;margin:0 0 1.6em;padding:0}
.dl-prose ul li{position:relative;padding-left:30px;color:var(--grey-700,#3A3F49);font-size:clamp(1.08rem,1.4vw,1.22rem);line-height:1.62;margin:0 0 .75em}
.dl-prose ul li::before{content:'';position:absolute;left:2px;top:.62em;width:9px;height:1.5px;background:var(--lagon)}
.dl-prose blockquote{margin:clamp(2.2em,4vw,2.9em) 0;padding:6px 0 6px clamp(24px,3vw,38px);border-left:2px solid var(--lagon)}
.dl-prose blockquote p{font-size:clamp(1.5rem,2.8vw,2.05rem);font-weight:500;letter-spacing:-.02em;line-height:1.24;color:var(--ink);margin:0;text-wrap:balance}

/* Sommaire */
.dl-toc a{display:block;font-family:var(--mono);font-size:12px;letter-spacing:.04em;color:var(--gray);padding:7px 0 7px 16px;border-left:1px solid rgba(16,20,24,.14);transition:color .3s,border-color .3s;text-decoration:none}
.dl-toc a:hover{color:var(--ink);border-color:var(--lagon)}

/* Responsive */
@media (max-width:900px){
  .dl-article-grid{grid-template-columns:1fr !important}
  .dl-toc-wrap{display:none}
  .dl-feat-grid{grid-template-columns:1fr !important}
  .dl-row-grid{grid-template-columns:auto 1fr !important}
  .dl-row-grid .dl-arrow{display:none}
}

@media (prefers-reduced-motion: reduce){
  .dl-cta-fill,.dl-cta-arrow,.dl-row,.dl-row::after,.dl-rt,.dl-arrow,.dl-feature,.dl-feature::before{transition:none !important}
}
