/* Article call-to-action blocks ([data-cta] in the article text): the site's own look and buttons (owner 2026-11-07).
   The block keeps its inline styles in the database; these rules override them. js/article-cta.js turns the links into .btn-primary. */
[data-cta]{position:relative;margin:72px 0 48px!important;padding:56px 60px 48px!important;border:1px solid rgba(255,255,255,.1)!important;background:#111!important;color:#fff;overflow:hidden}
[data-cta]:before{content:"";position:absolute;left:0;top:0;width:100%;height:1px;background:rgba(255,255,255,.55);transform:scaleX(0);transform-origin:left;transition:transform 1.4s cubic-bezier(.2,.7,.2,1) .2s}
[data-cta] > p:first-child{margin:0 0 18px!important;font-size:clamp(24px,2.3vw,34px)!important;line-height:1.2!important;letter-spacing:-.01em}
[data-cta] > p:first-child strong{font-weight:500}
[data-cta] > p:nth-child(2){margin:0 0 36px!important;max-width:760px;color:rgba(255,255,255,.62);font-size:17px;line-height:1.7}
[data-cta] > p:last-child{margin:0!important;display:flex;flex-wrap:wrap;gap:16px}
[data-cta] .dz-cta-btn.btn-primary{display:inline-block;width:auto;min-width:240px;padding:17px 40px;margin:0;font-size:12px;letter-spacing:.12em;text-decoration:none!important;color:rgba(255,255,255,.82)}
[data-cta] .dz-cta-btn .text{margin:0;position:relative}
[data-cta] .dz-cta-btn:hover{color:#fff}
[data-cta] .dz-cta-btn:first-of-type .shape{stroke:rgba(255,255,255,.7)}
[data-cta] .dz-cta-btn:hover .shape{stroke:#fff;stroke-dasharray:var(--dz-dash,240px) var(--dz-gap,46px)}
/* soft entrance: the frame line draws, then title, text and buttons rise one after another */
[data-cta].dz-cta-wait > p{opacity:0;transform:translateY(22px)}
[data-cta].dz-cta-in > p{opacity:1;transform:none;transition:opacity 1s cubic-bezier(.2,.7,.2,1),transform 1s cubic-bezier(.2,.7,.2,1)}
[data-cta].dz-cta-in > p:nth-child(2){transition-delay:.12s}
[data-cta].dz-cta-in > p:nth-child(3){transition-delay:.24s}
[data-cta].dz-cta-in:before{transform:scaleX(1)}
/* light theme */
.light [data-cta]{border-color:rgba(0,0,0,.1)!important;background:#f5f4f1!important;color:#151515}
.light [data-cta]:before{background:rgba(0,0,0,.5)}
.light [data-cta] > p:nth-child(2){color:rgba(0,0,0,.6)}
.light [data-cta] .dz-cta-btn.btn-primary{color:#2a2a2a}
.light [data-cta] .dz-cta-btn:hover{color:#000}
.light [data-cta] .dz-cta-btn:first-of-type .shape{stroke:rgba(0,0,0,.65)}
.light [data-cta] .dz-cta-btn:hover .shape{stroke:#000}
@media (max-width:767px){
  [data-cta]{margin:48px 0 32px!important;padding:36px 22px 28px!important}
  [data-cta] > p:nth-child(2){font-size:16px;margin-bottom:28px!important}
  [data-cta] > p:last-child{flex-direction:column;gap:12px}
  [data-cta] .dz-cta-btn.btn-primary{width:100%;min-width:0;padding:16px 20px}
}
@media (prefers-reduced-motion:reduce){[data-cta] > p,[data-cta]:before{transition:none!important;opacity:1!important;transform:none!important}}
/* outline fully inside the button (the half-pixel stroke on the right and bottom edges was cut), and visible on the dark card */
[data-cta] .dz-cta-btn.btn-primary{box-sizing:border-box}
[data-cta] .dz-cta-btn svg{left:.5px;top:.5px;width:calc(100% - 1px);height:calc(100% - 1px);overflow:visible}
[data-cta] .dz-cta-btn .shape{stroke:rgba(255,255,255,.3)}
.light [data-cta] .dz-cta-btn .shape{stroke:rgba(0,0,0,.3)}
/* owner 2026-11-07: smaller, finer buttons */
[data-cta] .dz-cta-btn.btn-primary{min-width:0;padding:11px 26px;font-size:10.5px;font-weight:600;letter-spacing:.16em;line-height:1.5}
[data-cta] > p:last-child{gap:12px}
@media (max-width:767px){[data-cta] .dz-cta-btn.btn-primary{padding:12px 18px}}
