/* Editorial extension: inherits the active market's FreightVanta palette. */
.reading-page { --reading-quiet:var(--ink-soft); }
.reading-page ::selection { background:var(--brand); color:#fff; }
.reading-page :is(a,summary):focus-visible { outline:2px solid var(--brand); outline-offset:5px; box-shadow:none; }
.reading-page svg { width:20px; height:20px; flex:none; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.public-site.page-article .reading-page .article-masthead { background:var(--surface); }
.public-site.page-article .reading-page .article-heading-shell { padding-block:22px 0; }
.reading-page .article-breadcrumb { color:var(--reading-quiet); }
.public-site.page-article .reading-page .article-title-row { display:block; margin:42px 0 36px; }
.reading-page .article-title-row > div { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr); align-items:end; gap:64px; }
.public-site.page-article .reading-page .article-title-row h1 { max-width:21ch; margin:0; font-size:clamp(2.6rem,4.7vw,4.5rem); letter-spacing:-.035em; line-height:1.06; }
.reading-page .article-title-row p { max-width:48ch; margin:0 0 3px; font-size:18px; line-height:1.75; }
.reading-byline { display:flex; flex-wrap:wrap; align-items:center; gap:12px 26px; padding:20px 0; border-top:1px solid var(--line); color:var(--reading-quiet); font-size:12px; font-variant-numeric:tabular-nums; }
.reading-byline > span:first-child { color:var(--brand); font-weight:700; margin-right:auto; }
.reading-byline time { margin-left:6px; }
.reading-planning-note { max-width:75ch; margin:0; padding-block:0 20px; color:var(--reading-quiet); font-size:13px; line-height:1.65; }
.reading-byline a { text-decoration:underline; text-underline-offset:3px; }
.public-site.page-article .reading-page .article-layout { grid-template-columns:minmax(0,740px) minmax(230px,280px); gap:clamp(40px,7vw,104px); padding-block:64px 56px; }
.public-site.page-article .reading-page .article-body { max-width:70ch; padding-bottom:12px; color:var(--ink-soft); font-size:18px; line-height:1.85; }
.reading-page .article-body > :first-child { margin-top:0; }
.reading-page .article-body :is(h2,h3,h4) { scroll-margin-top:110px; color:var(--ink); }
.reading-page .article-body h2 { margin-top:52px; font-size:clamp(1.65rem,2.4vw,2.1rem); line-height:1.25; }
.reading-page .article-body h3 { margin-top:36px; font-size:1.4rem; }
.reading-page .article-body p { margin-block:0 24px; }
.reading-page .article-body :is(ul,ol) { padding-left:24px; margin-block:24px 32px; }
.reading-page .article-body li { margin-block:10px; padding-left:5px; }
.reading-page .article-body li::marker { color:var(--brand); }
.reading-page .article-body img { display:block; max-width:100%; height:auto; margin-block:32px; border:0; border-radius:4px; }
.reading-page .article-body figure { margin:32px 0; }
.reading-page .article-body figcaption { font-size:13px; line-height:1.6; margin-top:12px; color:var(--reading-quiet); }
.reading-page .article-body blockquote { margin:32px 0; padding:24px; background:var(--surface-soft); border:1px solid var(--line); border-radius:4px; }
.reading-page .article-body blockquote > :last-child { margin-bottom:0; }
.reading-page .article-body table { scrollbar-color:var(--line-dark) var(--surface-soft); }
.reading-page .article-body :is(th,td) { white-space:normal; min-width:125px; }
.reading-page .article-body th { background:var(--surface-soft); }
.reading-page .article-aside.reading-sidebar { top:108px; max-height:calc(100dvh - 132px); overflow-y:auto; padding-top:0; border:0; scrollbar-width:thin; scrollbar-color:var(--line-dark) transparent; }
.reading-contents { border-top:1px solid var(--ink); border-bottom:1px solid var(--line); padding-block:18px; }
.reading-contents summary { display:flex; justify-content:space-between; align-items:center; gap:16px; list-style:none; cursor:pointer; color:var(--ink); font-weight:700; font-size:14px; min-height:28px; }
.reading-contents summary::-webkit-details-marker { display:none; }
.reading-contents[open] summary svg { transform:rotate(180deg); }
.reading-contents nav { display:grid; gap:3px; margin-top:14px; }
.reading-contents a { min-height:44px; display:flex; align-items:center; padding:9px 10px; border-radius:4px; color:var(--reading-quiet); line-height:1.55; font-size:14px; }
.reading-contents .reading-toc-h3 { padding-left:22px; font-size:13px; }
.reading-contents a:is(:hover,[aria-current="location"]) { color:var(--brand); background:var(--surface-soft); }
.reading-contents a[aria-current="location"] { font-weight:700; }
.reading-help { padding-block:28px 24px; }
.reading-help h2 { font-size:17px; margin:0 0 10px; line-height:1.4; }
.reading-help p { margin:0 0 14px; color:var(--reading-quiet); font-size:14px; line-height:1.7; }
.reading-help a,.reading-inline-guide a { display:inline-flex; min-height:44px; align-items:center; gap:12px; color:var(--brand); font-size:14px; font-weight:700; text-decoration:underline; text-underline-offset:5px; }
.reading-page .article-tags { border-top:1px solid var(--line); }
.reading-gallery { margin-block:24px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.reading-gallery summary { min-height:64px; padding-block:18px; cursor:pointer; color:var(--ink-soft); font-size:14px; }
.reading-gallery summary span { margin-left:10px; color:var(--brand); font-variant-numeric:tabular-nums; }
.reading-gallery .product-public-gallery { padding-bottom:20px; margin:0; }
.reading-inline-guide { display:flex; flex-wrap:wrap; gap:8px 24px; justify-content:space-between; align-items:center; padding:22px 0 0; margin-top:20px; border-top:1px solid var(--line); }
.reading-inline-guide p { margin:0; color:var(--ink); font-size:16px; font-weight:600; }
.reading-enquiry { background:var(--brand-dark); color:#fff; scroll-margin-top:90px; }
.reading-enquiry-layout { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,.8fr); gap:clamp(40px,8vw,100px); align-items:center; padding-block:64px; }
.reading-enquiry h2 { font-size:clamp(1.9rem,3.3vw,3rem); letter-spacing:-.025em; line-height:1.16; margin:0; max-width:23ch; color:inherit; }
.reading-enquiry p { max-width:58ch; color:inherit; margin:20px 0 26px; line-height:1.8; font-size:16px; }
.reading-primary { display:inline-flex; align-items:center; justify-content:center; gap:24px; background:#fff; color:var(--brand-dark); border:1px solid #fff; border-radius:4px; min-height:52px; padding:12px 22px; font-weight:700; font-size:15px; }
.reading-primary:hover { text-decoration:underline; text-underline-offset:5px; }
.reading-page .reading-primary:focus-visible { outline-color:#fff; }
.reading-prepare { border-top:1px solid currentColor; padding-top:22px; }
.reading-prepare h3 { color:inherit; margin:0 0 18px; font-size:16px; line-height:1.5; }
.reading-prepare ul { list-style:none; margin:0; padding:0; }
.reading-prepare li { padding:14px 0; border-top:1px solid color-mix(in srgb,currentColor 30%,transparent); font-size:15px; line-height:1.65; }
.reading-navigation { padding-block:64px 76px; }
.reading-navigation-heading { display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px 28px; align-items:center; margin-bottom:24px; }
.reading-navigation h2 { margin:0; font-size:clamp(1.6rem,2.5vw,2.25rem); letter-spacing:-.025em; line-height:1.3; }
.reading-navigation-heading > a { display:inline-flex; gap:12px; align-items:center; min-height:44px; color:var(--brand); font-size:14px; font-weight:600; }
.reading-neighbors { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); border-top:1px solid var(--line-dark); }
.reading-neighbor { padding:28px 32px 24px 0; min-width:0; }
.reading-neighbor + .reading-neighbor { border-left:1px solid var(--line); padding-left:32px; }
.reading-neighbor > span { display:flex; gap:12px; align-items:center; color:var(--brand); font-size:13px; font-weight:700; }
.reading-neighbor h3 { margin:20px 0 12px; color:var(--ink); font-size:clamp(1.3rem,2vw,1.7rem); line-height:1.3; letter-spacing:-.02em; }
.reading-neighbor p { max-width:55ch; margin:0; color:var(--reading-quiet); font-size:15px; line-height:1.75; }
.reading-neighbor:hover h3 { color:var(--brand); text-decoration:underline; text-underline-offset:5px; }
.reading-neighbor:only-child { grid-column:1/-1; max-width:740px; }
@media (max-width:960px) {
 .reading-page .article-title-row > div { grid-template-columns:1fr; gap:24px; }
 .reading-page .article-title-row p { max-width:65ch; }
 .public-site.page-article .reading-page .article-layout { grid-template-columns:minmax(0,1fr); gap:32px; padding-block:36px; }
 .reading-page .article-main-column { grid-row:2; }
 .reading-page .article-aside.reading-sidebar { position:static; grid-row:1; max-height:none; overflow:visible; }
 .reading-sidebar :is(.reading-help,.article-tags) { display:none; }
 .reading-contents { padding-block:12px; }
 .reading-contents summary { min-height:36px; }
 .reading-contents nav { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .reading-enquiry-layout { gap:36px; }
}
@media (max-width:600px) {
 .public-site.page-article .reading-page .article-heading-shell { padding-top:14px; }
 .reading-page .article-breadcrumb { font-size:12px; }
 .public-site.page-article .reading-page .article-title-row { margin-block:26px; }
 .public-site.page-article .reading-page .article-title-row h1 { font-size:clamp(2rem,8.5vw,2.75rem); line-height:1.12; letter-spacing:-.03em; }
 .reading-page .article-title-row > div { gap:20px; }
 .reading-page .article-title-row p { font-size:16px; line-height:1.75; }
 .reading-byline { gap:8px 18px; padding-block:16px; font-size:11px; }
 .reading-byline > span:first-child { flex-basis:100%; }
 .reading-contents nav { grid-template-columns:1fr; }
 .public-site.page-article .reading-page .article-body { font-size:17px; line-height:1.85; }
 .reading-page .article-body h2 { font-size:1.6rem; }
 .reading-inline-guide { display:block; }
 .reading-inline-guide a { margin-top:8px; }
 .reading-enquiry-layout { grid-template-columns:1fr; padding-block:40px; gap:36px; }
 .reading-enquiry h2 { max-width:100%; font-size:2rem; }
 .reading-primary { width:100%; justify-content:space-between; }
 .reading-navigation { padding-block:40px 48px; }
 .reading-neighbors { grid-template-columns:1fr; }
 .reading-neighbor,.reading-neighbor + .reading-neighbor { border-left:0; padding:24px 0; }
 .reading-neighbor + .reading-neighbor { border-top:1px solid var(--line); }
}
@media print {
 .reading-page :is(.reading-sidebar,.reading-inline-guide,.reading-enquiry,.reading-navigation,.reading-gallery) { display:none; }
 .reading-page .article-title-row > div { display:block; }
 .reading-page .article-title-row p { margin-top:24px; }
}
