/* Article text has one left edge; the contents rail is secondary, on the right. */
.page-main.page-kind-article .page-legal-hero{max-width:none}
.page-kind-article .page-legal-hero>.page-container{display:block}
.page-kind-article .page-article-intro{min-width:0}
.page-main.page-kind-article h1{font-size:clamp(34px,3.2vw,46px);line-height:1.14;letter-spacing:-.035em;text-wrap:pretty}
.page-main .page-article-cover{position:relative;width:min(100%,calc(300px * var(--cover-ratio)));margin:0 auto 36px;aspect-ratio:var(--cover-ratio);overflow:hidden;border:1px solid var(--line);border-radius:4px;background:var(--stage)}
.page-main .page-article-cover img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;border-radius:0}
.page-main .page-reading-layout{max-width:1180px;grid-template-columns:minmax(0,780px) minmax(220px,300px);justify-content:start;gap:64px;margin-top:44px}
.page-main .page-article-body{min-width:0;grid-column:1;grid-row:1}
.page-main .page-reading-layout .page-legal-content{min-width:0}
.page-main .page-reading-layout .page-article-toc{grid-column:2;grid-row:1;top:126px;max-height:calc(100dvh - 154px);overflow:auto;scrollbar-width:thin;padding:0 0 0 24px;border-left:1px solid var(--line)}
.page-main .page-article-toc h2{margin:0 0 20px;font-size:16px;line-height:1.5;font-weight:500}
.page-main .page-article-toc li{font-size:14px;line-height:1.5;margin:0 0 12px}
.page-main .page-article-toc a{display:block;text-decoration:none;transition:color 180ms ease}
.page-main .page-article-toc a:hover,.page-main .page-article-toc a[aria-current=location]{color:var(--accent)}
/* Small, consistent previews leave room for the article title and description. */
.page-main .page-journal-list{display:block;border-top:1px solid var(--line)}
.page-main .page-journal-item{display:grid;grid-template-columns:260px minmax(0,1fr);grid-template-rows:auto;grid-row:auto;gap:32px;padding:28px 0;margin:0;border-top:0;border-bottom:1px solid var(--line);align-items:start}
.page-main .page-journal-cover{position:relative;display:block;aspect-ratio:3/2;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:4px;background:var(--stage)}
.page-main .page-journal-cover img{position:absolute;inset:0;display:block;width:100%;height:100%;max-height:none;object-fit:contain;border-radius:0}
.page-main .page-journal-copy h2{margin:0 0 12px;max-width:none;font-size:28px;line-height:1.25;text-wrap:pretty}
.page-main .page-journal-copy p{margin:0 0 16px;max-width:760px}
/* Pricing uses the same card silhouette, icon position and heading scale as the catalog. */
.page-main .page-pricing-overview>.page-apps-catalog{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.page-main .page-pricing-overview .page-app-card-head{flex-direction:row;gap:18px;align-items:flex-start}
.page-main .page-app-card-head :is(h2,h3),.page-main .page-pricing-overview .page-app-card-head h3{padding-top:9px;font-size:26px;line-height:1.25}
.page-main .page-pricing-card{border:1px solid var(--line);background:transparent;border-radius:12px}
.page-main .page-pricing-card.page-featured{border-color:var(--accent)}
/* The services hero reuses the homepage illustration and its clipped frame. */
.page-main .page-service-hero .hero-art{max-width:600px;width:100%;justify-self:center}
.page-main .page-service-hero .hero-art figcaption{font-size:14px}
@media(max-width:1100px){.page-main .page-reading-layout{grid-template-columns:minmax(0,1fr) 240px;gap:40px}.page-main .page-journal-item{grid-template-columns:220px minmax(0,1fr);gap:24px}}
@media(max-width:900px){
 .page-main .page-reading-layout{grid-template-columns:1fr;gap:28px;margin-top:32px}
 .page-main .page-article-body{display:contents}
 .page-main .page-article-cover{grid-column:1;grid-row:1;margin-bottom:0}
 .page-main .page-reading-layout .page-article-toc{grid-column:1;grid-row:2;position:static;max-height:none;overflow:visible;padding:20px 0 8px;border:0;border-block:1px solid var(--line)}
 .page-main .page-reading-layout .page-legal-content{grid-column:1;grid-row:3}
 .page-main .page-article-toc ol{columns:1;padding:0}
 .page-main .page-article-toc a{padding:6px 0}
}
@media(max-width:640px){
 .page-main.page-kind-article h1{font-size:34px}
 .page-main .page-journal-item{grid-template-columns:1fr;gap:18px;padding:24px 0}
 .page-main .page-journal-cover{width:220px;max-width:100%}
 .page-main .page-journal-copy h2{font-size:25px}
 .page-main .page-pricing-overview>.page-apps-catalog{grid-template-columns:1fr}
 .page-main .page-pricing-overview .page-app-card-head{gap:14px}
 .page-main .page-app-card-head :is(h2,h3),.page-main .page-pricing-overview .page-app-card-head h3{font-size:23px}
}
@media(prefers-reduced-motion:reduce){.page-main .page-article-toc a{transition:none}}
