/* ==========================================================================
   Long-form reading column (story pages, legal pages, and the admin editor)
   Comfortable measure (~42rem), generous leading, script-specific values.
   ========================================================================== */
.prose{font-size:var(--fs-prose);line-height:var(--lh-prose);max-width:var(--read);color:var(--text-primary);overflow-wrap:break-word;hyphens:manual}
.prose>*+*{margin-top:var(--para-gap)}
.prose>p:first-child:not(:empty){font-size:1.08em;color:var(--text-primary)}
.prose h2{font-size:1.75em;line-height:var(--lh-title);letter-spacing:var(--ls-title);font-weight:var(--fw-display);margin-top:2.2em;text-wrap:balance}
.prose h3{font-size:1.28em;line-height:var(--lh-title);letter-spacing:var(--ls-title);font-weight:var(--fw-title);margin-top:1.9em;text-wrap:balance}
.prose h2+*,.prose h3+*{margin-top:.8em}
.prose a{color:var(--link);text-decoration:underline;text-decoration-thickness:.08em;text-underline-offset:.22em}
.prose a:hover{text-decoration-thickness:.16em}
.prose strong{font-weight:800}
.prose em{font-style:italic}
:lang(ar) .prose em{font-style:normal;font-weight:600}
.prose ul,.prose ol{padding-inline-start:1.5em}
.prose ul{list-style:none}
.prose ul>li{position:relative}
.prose ul>li::before{content:"";position:absolute;inset-inline-start:-1.2em;top:.78em;width:.42em;height:.42em;background:var(--accent);transform:rotate(45deg)}
.prose ol{list-style:decimal}
.prose ol>li::marker{font-weight:800;color:var(--accent)}
.prose li+li{margin-top:.5em}
.prose img{width:100%;height:auto}
.prose figure{margin-inline:0}
.prose figure>img{background:var(--background-2)}
.prose figcaption{margin-top:.6rem;font-size:.82rem;line-height:1.5;color:var(--text-secondary);font-family:var(--font-latin)}
:lang(ar) .prose figcaption{font-family:var(--font-ar);font-size:.95rem}
.prose figure.wide,.prose .gallery,.prose .embed{max-width:none}
.prose hr{border:0;height:auto;text-align:center;margin-block:2.6em;overflow:visible}
.prose hr::before{content:"\25C6\00a0\25C6\00a0\25C6";color:var(--accent);font-size:.6em;letter-spacing:.5em}
.prose blockquote{border-inline-start:3px solid var(--accent);padding-inline-start:1.25em;color:var(--text-primary)}
.prose blockquote p+p{margin-top:.8em}
.prose blockquote cite{display:block;margin-top:.8em;font-size:.72em;font-style:normal;font-weight:700;letter-spacing:var(--ls-eyebrow);text-transform:var(--tt-eyebrow);color:var(--text-secondary)}
.prose blockquote cite::before{content:"— "}
.prose blockquote.pullquote{border:0;padding:1.4em 0 0;position:relative;font-size:1.6em;line-height:1.25;font-weight:var(--fw-display);letter-spacing:var(--ls-title);text-wrap:balance}
:lang(ar) .prose blockquote.pullquote{line-height:1.6}
.prose blockquote.pullquote::before{content:"";position:absolute;inset-inline-start:0;top:0;width:3.2rem;height:.4rem;background:var(--accent)}
.prose blockquote.pullquote cite{font-size:.5em}
.gallery{display:grid;gap:.6rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr))}
.gallery figure{margin:0}
.gallery img{aspect-ratio:4/3;object-fit:cover}
.embed{position:relative;aspect-ratio:16/9;background:#000;color:#fff}
.embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.embed__play{position:absolute;inset:0;width:100%;display:flex;flex-direction:column;gap:.9rem;align-items:center;justify-content:center;background:radial-gradient(60% 80% at 50% 40%,#1b1b1b,#050505);border:0;color:#fff;cursor:pointer;font-weight:700}
.embed__icon{width:4rem;height:4rem;border-radius:50%;background:var(--accent);display:grid;place-items:center;transition:transform .3s var(--ease)}
.embed__icon::after{content:"";margin-inline-start:.3rem;border-style:solid;border-width:.75rem 0 .75rem 1.2rem;border-color:transparent transparent transparent var(--on-accent,#fff)}
.embed__play:hover .embed__icon{transform:scale(1.08)}
:lang(ar) .embed__icon::after{transform:scaleX(-1);margin-inline-start:0;margin-inline-end:.3rem}
.embed noscript a{position:absolute;inset:0;display:grid;place-items:center;color:#fff}

@media (min-width:1000px){
  .prose--story blockquote.pullquote{margin-inline:-3.5rem}
  .prose--story figure.wide{margin-inline:-6rem}
}
