/* Approved Legal guide: scoped typography, native decision routes and responsive tables. */
.legal-page{--legal-ink:#103440;--legal-muted:#49616b;--legal-teal:#007e88;--legal-pale:#eef7f7;--legal-line:#cbdee1;--legal-focus:#943f15;overflow-wrap:anywhere}
.legal-page .legal-copy{width:calc(100% - 128px);max-width:1120px;margin:0 auto;padding-top:32px;font-size:18px;line-height:1.7;color:var(--legal-ink)}
.legal-page .legal-copy>p,.legal-page .legal-copy>h2,.legal-page .legal-copy>h3,.legal-page .legal-copy>ul,.legal-page .legal-copy>ol{max-width:800px;margin-left:auto;margin-right:auto}
.legal-page .legal-copy>p{margin-top:0;margin-bottom:1.25rem}.legal-page .legal-copy>p:first-child{font-size:24px;line-height:1.45;font-weight:600}
.legal-page .legal-copy>h2{font-size:30px;line-height:1.23;letter-spacing:-.022em;margin-top:3.3rem;margin-bottom:1.3rem}.legal-page h3{font-size:21px;line-height:1.35}
.legal-page a{overflow-wrap:anywhere;text-underline-offset:3px}.legal-page a:focus-visible,.legal-page summary:focus-visible{outline:3px solid var(--legal-focus);outline-offset:4px}
.legal-page .legal-quick{display:inline-flex;align-items:center;min-height:44px;font-size:16px;font-weight:700;margin-top:12px;gap:.4em}
.legal-page .contents{box-sizing:border-box;width:calc(100% - 128px);max-width:800px;margin:28px auto 0;padding:16px 20px;border:1px solid var(--legal-line);font-size:16px}.legal-page .contents summary{cursor:pointer;font-weight:700}.legal-page .contents ol{padding-left:24px;margin-bottom:0}.legal-page .contents li{margin:.6rem 0}
.legal-page .diagnostic{margin:42px 0 55px;border-top:5px solid var(--legal-teal);background:#f6fafa;padding:28px;max-width:100%;box-sizing:border-box}.legal-page .diagnostic-header{max-width:760px}.legal-page .diagnostic-header h2{margin:0 0 12px;font-size:34px;line-height:1.23}.legal-page .diagnostic-header>p:not(.eyebrow){font-size:17px;line-height:1.6;margin:0 0 25px}.legal-page .eyebrow{font-size:12px;font-weight:800;letter-spacing:.13em;line-height:1.4;color:var(--legal-teal);margin:0 0 14px}
.legal-page .route{background:white;border:1px solid var(--legal-line);margin:0 0 12px}.legal-page .route summary{position:relative;cursor:pointer;list-style:none;display:grid;grid-template-columns:minmax(0,1fr) 200px 24px;align-items:center;gap:20px;padding:18px 22px;font-size:17px;line-height:1.4;min-height:68px}.legal-page .route summary::-webkit-details-marker{display:none}.legal-page .route-title{font-weight:750}.legal-page .route-tag{color:var(--legal-muted);font-size:14px}.legal-page .route-toggle{font-size:25px;font-weight:400;line-height:1;text-align:center;color:var(--legal-teal)}.legal-page .route[open] summary{background:var(--legal-pale);border-bottom:1px solid var(--legal-line)}.legal-page .route[open] .route-toggle{transform:rotate(45deg)}
.legal-page .route-content{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;padding:4px 22px 24px;font-size:16px;line-height:1.65}.legal-page .route-content h3{font-size:13px;text-transform:uppercase;letter-spacing:.065em;color:var(--legal-teal);margin:20px 0 10px}.legal-page .route-content p{margin:0 0 15px}.legal-page .route-link{font-weight:700;display:inline-block;padding:7px 0}.legal-page .diagnostic-note{font-size:13px;line-height:1.6;color:var(--legal-muted);margin:20px 0 0}
.legal-page .table-wrap{margin:28px 0 34px;max-width:100%;min-width:0;overflow:visible}.legal-page table{width:100%;max-width:100%;min-width:0;border-collapse:collapse;table-layout:fixed;font-size:16px;line-height:1.6}.legal-page th,.legal-page td{padding:18px;border:1px solid var(--legal-line);vertical-align:top;text-align:left;overflow-wrap:anywhere;color:var(--legal-ink)}.legal-page thead th{background:var(--legal-pale);font-weight:750}.legal-page tbody th{font-weight:600}.legal-page tbody tr:last-child th,.legal-page tbody tr:last-child td{border-bottom:2px solid #a3c7cc}.legal-page .reference{font-size:.83em;white-space:nowrap}.legal-page .sources{font-size:15px;line-height:1.65;padding-left:24px}.legal-page .sources li{padding-left:6px;margin:15px 0}.legal-page :target{scroll-margin-top:32px}.legal-page h2:target,.legal-page li:target{background:#fff7de;outline:6px solid #fff7de}
@media(max-width:1080px){.legal-page .legal-copy,.legal-page .contents{width:calc(100% - 64px)}}
@media(max-width:760px){.legal-page .legal-copy,.legal-page .contents{width:calc(100% - 40px)}.legal-page .legal-copy{font-size:17px}.legal-page .legal-copy>h2{font-size:27px;margin-top:2.7rem}.legal-page .legal-copy>p:first-child{font-size:21px}.legal-page .diagnostic{padding:20px 14px;margin:30px 0 40px}.legal-page .diagnostic-header h2{font-size:28px}.legal-page .route summary{grid-template-columns:minmax(0,1fr) 24px;gap:8px;padding:16px 14px}.legal-page .route-title{grid-column:1}.legal-page .route-tag{grid-column:1;font-size:12px}.legal-page .route-toggle{grid-column:2;grid-row:1/3}.legal-page .route-content{grid-template-columns:minmax(0,1fr);gap:0;padding:0 14px 16px}.legal-page .route-content h3{margin-top:18px}.legal-page .route-content p{margin-bottom:8px}.legal-page table,.legal-page tbody,.legal-page tr,.legal-page tbody th,.legal-page td{display:block;width:100%;min-width:0;box-sizing:border-box}.legal-page thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.legal-page tbody tr{margin-bottom:18px;border:1px solid var(--legal-line)}.legal-page tbody th,.legal-page td{padding:14px;border:0}.legal-page tbody th{background:var(--legal-pale);font-size:17px}.legal-page td+td{border-top:1px solid var(--legal-line)}.legal-page td:before{content:attr(data-label);display:block;font-size:12px;line-height:1.4;font-weight:750;margin:0 0 8px;color:var(--legal-teal)}.legal-page tbody tr:last-child th,.legal-page tbody tr:last-child td{border-bottom:0}.legal-page .contents{font-size:15px;padding:14px}.legal-page .route-link{min-height:44px}.legal-page .sources{font-size:14px}}
@media print{.legal-page .contents,.legal-page .legal-quick,.legal-page .diagnostic{display:none}.legal-page .legal-copy{font-size:11pt;line-height:1.5}.legal-page .legal-copy>*{max-width:none!important}.legal-page th,.legal-page td{font-size:10pt;padding:8px}}

.legal-page th.legal-number,.legal-page td.legal-number{text-align:right}
@media(max-width:760px){.legal-page th.legal-number,.legal-page td.legal-number{text-align:left}}
