/* Cross-page formatting fixes. Product canvases and pricing tables keep their own scale. */
.topic-content>ul,.topic-content>ol{max-width:780px;padding-inline-start:24px;margin:20px 0 28px;display:grid;gap:12px;list-style-position:outside}
.topic-content>ul{list-style-type:disc}.topic-content>ol{list-style-type:decimal}
.topic-content>ul>li,.topic-content>ol>li{font-size:18px;line-height:1.65;padding-inline-start:4px}
.topic-content>ul>li::marker,.topic-content>ol>li::marker{color:#EF5E20;font-weight:500}
.tool-directory .protection-checks ul{list-style:disc;padding-inline-start:20px}
.tool-directory .protection-checks li{line-height:1.65;padding-inline-start:3px}
.tool-directory .protection-checks li::marker{color:#EF5E20}
/* Legacy narrow copy widths caused premature wrapping beside product illustrations. */
.product-copy>p:not(.eyebrow){max-width:58ch;line-height:1.65}
.product-copy .check-list{font-size:16px;line-height:1.65;gap:14px;margin-block:24px}
.check-list li{padding-inline-start:30px}
.check-list li::before{content:'';position:absolute;inset-inline-start:0;top:.25em;width:18px;height:18px;background:#EF5E20;mask:url('icons/lucide/check.svg') center/contain no-repeat;-webkit-mask:url('icons/lucide/check.svg') center/contain no-repeat}
/* Links and their icons share one baseline and retain space when the label wraps. */
.text-link,.story-link{display:inline-flex;align-items:center;gap:10px;max-width:100%;line-height:1.5}
.text-link>span,.story-link>span{display:inline-flex;align-items:center;flex:none}
.text-link .ui-icon,.story-link .ui-icon{vertical-align:middle;flex:none}
.reference-actions{flex-wrap:wrap;align-items:center;gap:12px}
.reference-actions .reference-button,.topic-content>a.reference-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:auto;max-width:100%;height:auto;min-height:46px;line-height:1.5;white-space:normal;text-align:center}
.topic-content .reference-actions .reference-button{margin:0}
.topic-content>a.reference-button{margin:24px 0 0;padding:12px 20px}
.reference-button .ui-icon{flex:none;vertical-align:middle}
.topic-content>.eyebrow+h2{margin-top:12px}
.topic-content>p+p{margin-top:16px}
.topic-content>.topic-note{font-size:14px;line-height:1.6;margin-top:16px;color:#62625c}
.protection-checks article{min-width:0}
.protection-checks article h3{max-width:none;text-wrap:pretty}
.protection-checks article p{max-width:none}
.protection-checks article .text-link{margin-top:20px}
.faq-grid>div>h2{margin-bottom:20px}
.faq-grid>div>p:not(.eyebrow){line-height:1.65}
.faq-grid>div>.text-link{margin-top:20px}
@media(max-width:700px){
 .topic-content>ul>li,.topic-content>ol>li,.product-copy .check-list{font-size:16px;line-height:1.65}
 .topic-content>ul,.topic-content>ol{margin-block:18px 24px;gap:12px}
 .product-copy>p:not(.eyebrow){max-width:none}
 .reference-actions .reference-button{min-width:0}
}
/* Avoid stacking two full section paddings on dedicated feature pages. */
.topic-page main>.topic-hero+.section{padding-top:40px;padding-bottom:64px}
.topic-page main>.topic-content:has(+.topic-content):not(.protection-detail){padding-bottom:40px;min-height:0}
.topic-page .ai-section>.container>.connections:only-child{margin-top:0;padding-top:0;border-top:0}
.topic-page .connections>div>p+p{margin-top:16px}
@media(max-width:700px){.topic-page main>.topic-hero+.section{padding-top:24px;padding-bottom:48px}}
/* Five primary destinations fit comfortably before the mobile menu takes over. */
@media(min-width:961px){.pdf-header .desktop-nav{margin-inline-start:clamp(24px,3vw,44px);gap:clamp(20px,2.3vw,34px)}}
@media(min-width:961px) and (max-width:1150px){.pdf-header .desktop-nav{margin-inline-start:22px;gap:18px}.pdf-header .desktop-nav>a,.pdf-header .nav-dropdown summary{font-size:14px}}

/* Complete feature navigation, shared by all live routes. */
.nav-dropdown-panel{max-height:calc(100dvh - 100px);overflow-y:auto}
.mobile-nav .mobile-features{border:0;border-radius:0;margin:0;padding:0;background:transparent;box-shadow:none}
.mobile-nav .mobile-features>summary{position:relative;margin:0;padding:12px 28px 12px 0;font-size:16px;line-height:1.5;list-style:none;cursor:pointer;font-weight:500}
.mobile-nav .mobile-features>summary::-webkit-details-marker{display:none}
.mobile-nav .mobile-features>summary:after{content:'+';position:absolute;inset-inline-end:5px;top:12px;line-height:1.5}
.mobile-nav .mobile-features[open]>summary:after{content:'−'}
.mobile-nav .mobile-features>div{padding:0 0 12px 15px;border-inline-start:2px solid #f2ded3;display:grid;grid-template-columns:1fr;gap:0}
.mobile-nav .mobile-features>div>a{font-size:14px;padding:9px 10px;line-height:1.5}
.feature-route-links{width:min(1280px,calc(100% - 40px));margin:25px auto 0;display:flex;flex-wrap:wrap;gap:12px 28px;font-size:14px}
.feature-route-links a{text-decoration:none;border-bottom:1px solid #d6cec9;padding-bottom:5px}
@media(max-width:960px){.mobile-nav{max-height:calc(100dvh - 86px);overflow-y:auto}.mobile-nav .mobile-features{grid-column:1/-1}}
