/* BONY APSS | Legal pages. Scoped so the rest of the portal is untouched. */
.legal-page{background:#f4f8fb;color:#122b3b;font-size:15px}
.legal-page .site-header{position:sticky;top:0;z-index:1100}
.legal-page .legal-banner{position:relative;overflow:hidden;background:radial-gradient(ellipse at 85% 10%,rgba(31,148,228,.2),transparent 40%),linear-gradient(125deg,#051824 10%,#0d3247 100%);color:white}
.legal-page .legal-banner:before{position:absolute;content:"";inset:0;background-image:radial-gradient(rgba(123,224,229,.3) 1px,transparent 1px);background-size:28px 28px;opacity:.16;mask-image:linear-gradient(90deg,transparent 15%,black)}
.legal-page .legal-banner-inner{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(250px,.75fr);column-gap:30px;position:relative;padding:34px 0 70px}
.legal-page .legal-crumb{grid-column:1/-1;display:flex;gap:12px;align-items:center;color:#9cbccc;font-size:12px;margin-bottom:63px;flex-wrap:wrap}
.legal-page .legal-crumb a:hover{color:#81f182}
.legal-page .legal-overline{font-size:11px;letter-spacing:.15em;font-weight:900;color:#27b2a5;text-transform:uppercase;display:inline-flex;gap:11px;align-items:center}
.legal-page .legal-banner .legal-overline{color:#9bf47a}
.legal-page .legal-live-dot{width:7px;height:7px;background:#88f263;border-radius:50%;box-shadow:0 0 0 5px rgba(136,242,99,.14)}
.legal-page .legal-banner-copy{max-width:730px;position:relative;z-index:2}
.legal-page .legal-banner h1{font:900 clamp(43px,5.8vw,78px)/1.01 'Outfit','DM Sans',sans-serif;letter-spacing:-.045em;margin:20px 0 22px;color:#fff}
.legal-page .legal-banner h1 em{font-style:normal;color:#8df572}
.legal-page .legal-banner-copy>p{font-size:16px;line-height:1.8;max-width:590px;color:#bbd4df;margin:0}
.legal-page .legal-hero-buttons{display:flex;gap:11px;flex-wrap:wrap;margin-top:30px}
.legal-page .legal-button{display:inline-flex;align-items:center;justify-content:center;gap:14px;border-radius:12px;font-size:13px;font-weight:900;min-height:48px;padding:13px 19px;text-decoration:none;transition:transform .16s}
.legal-page .legal-button:hover{transform:translateY(-2px)}
.legal-page .legal-button-primary{background:#90f373;color:#0b2733}
.legal-page .legal-button-outline{color:#e9f9ff;border:1px solid rgba(189,231,240,.32);background:rgba(178,233,249,.07)}
.legal-page .legal-hero-meta{display:flex;flex-wrap:wrap;gap:13px;margin-top:33px;color:#88aaba;font-size:12px}
.legal-page .legal-hero-meta>span+span:before{content:"·";margin-right:13px}
.legal-page .legal-hero-meta strong{font-weight:700;color:#d7edf5}
.legal-page .legal-hero-art{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;min-height:270px;position:relative}
.legal-page .legal-hero-art:before,.legal-page .legal-hero-art:after{position:absolute;content:"";border:1px solid rgba(83,193,208,.21);border-radius:50%;width:325px;height:325px;transform:rotate(27deg)}
.legal-page .legal-hero-art:after{width:240px;height:240px;border-color:rgba(144,244,101,.22)}
.legal-page .legal-hero-art img{width:min(265px,75%);object-fit:contain;position:relative;z-index:1;filter:drop-shadow(0 28px 37px rgba(0,0,0,.43))}
.legal-page .legal-art-quote{font-size:11px;text-align:center;letter-spacing:.12em;text-transform:uppercase;color:#95c6cd;font-weight:800;line-height:1.7;position:relative;z-index:1}
.legal-page .legal-content-layout{display:grid;grid-template-columns:218px minmax(0,1fr);gap:63px;align-items:start;padding-top:56px;padding-bottom:72px}
.legal-page .legal-toc{position:sticky;top:110px;border:1px solid #dbe8ee;border-radius:18px;background:#fff;padding:18px 14px;box-shadow:0 10px 30px rgba(13,53,74,.045)}
.legal-page .legal-toc h2{font-size:11px;letter-spacing:.11em;font-weight:900;padding:4px 12px 14px;margin:0;color:#6b8995}
.legal-page .legal-toc-link{display:block;color:#546c77;font-size:12px;font-weight:750;border-radius:9px;padding:10px 12px;line-height:1.35;transition:background .15s,color .15s}
.legal-page .legal-toc-link:hover{background:#edf8f4;color:#087859}
.legal-page .legal-toc-bottom{margin-top:12px;border-top:1px solid #e6eff2;padding:18px 12px 5px;display:grid;gap:6px}
.legal-page .legal-toc-bottom span{font-size:11px;color:#8194a0}
.legal-page .legal-toc-bottom a{font-size:12px;color:#077a67;font-weight:850;overflow-wrap:anywhere}
.legal-page .legal-main{min-width:0;overflow:visible}
.legal-page .legal-summary,.legal-page .legal-section{scroll-margin-top:100px}
.legal-page .legal-summary h2{font:850 clamp(28px,3.5vw,42px)/1.16 'Outfit','DM Sans',sans-serif;letter-spacing:-.03em;margin:13px 0 16px}
.legal-page .legal-summary h2 em{font-style:normal;color:#17977a}
.legal-page .legal-intro{font-size:15px;color:#617887;line-height:1.84;max-width:810px;margin:0 0 26px}
.legal-page .legal-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.legal-page .legal-summary-card{border:1px solid #dbe9eb;border-radius:17px;background:white;padding:21px 17px;box-shadow:0 7px 28px rgba(18,53,74,.025)}
.legal-page .legal-summary-card>span{display:flex;width:36px;height:36px;align-items:center;justify-content:center;background:#e9f8f1;color:#07845a;border-radius:11px;font-size:20px}
.legal-page .legal-summary-card strong{display:block;font-size:13px;color:#163449;margin-top:16px}
.legal-page .legal-summary-card p{font-size:12px;color:#738693;line-height:1.75;margin:8px 0 0}
.legal-page .legal-section{margin-top:68px}
.legal-page .legal-section-heading>span{font-weight:900;color:#198f87;font-size:10px;letter-spacing:.14em}
.legal-page .legal-section h2{font:850 clamp(26px,3vw,35px)/1.16 'Outfit','DM Sans',sans-serif;letter-spacing:-.028em;margin:11px 0 18px;color:#132f43}
.legal-page .legal-section-lead,.legal-page .legal-section-body>p{color:#607886;line-height:1.82;margin:0 0 17px}
.legal-page .legal-data-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.legal-page .legal-data-card{padding:25px 23px 22px;background:#fff;border:1px solid #dbe9ed;border-radius:17px;min-height:235px;box-shadow:0 6px 28px rgba(18,53,74,.025)}
.legal-page .legal-data-icon{display:flex;justify-content:center;align-items:center;border-radius:10px;width:40px;height:40px;background:linear-gradient(140deg,#e6f8f7,#e9f7ed);color:#11766a;font-weight:950;font-family:'Outfit',sans-serif;font-size:14px;margin-bottom:16px}
.legal-page .legal-data-kicker{font-size:10px;letter-spacing:.11em;color:#149182;font-weight:900;display:block}
.legal-page .legal-data-card h3{font-size:16px;font-weight:900;margin:7px 0 8px;color:#163548}
.legal-page .legal-data-card p{font-size:12.5px;line-height:1.75;margin:0;color:#6f828d}
.legal-page .legal-inline-tip{border-left:3px solid #60bba5;background:#e9f7f5;color:#426878;border-radius:0 12px 12px 0;padding:17px 21px;margin-top:24px;font-size:13px;line-height:1.78}
.legal-page .legal-inline-tip strong{color:#173d46}
.legal-page .legal-split-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.legal-page .legal-information-block,.legal-page .legal-info-note{background:#fff;border:1px solid #dbe9ed;border-radius:18px;padding:24px 22px;color:#637b8a;font-size:13px;line-height:1.85}
.legal-page .legal-icon-round{font-size:20px;color:#078c7a;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#e6f8f2;width:40px;height:40px}
.legal-page .legal-information-block h3{color:#173648;font-size:16px;margin:14px 0 9px}
.legal-page .legal-information-block p,.legal-page .legal-info-note p{font-size:13px;color:#637b8a;line-height:1.85;margin:0}
.legal-page .legal-info-note{margin-top:13px}
.legal-page .legal-info-note>strong{display:block;color:#14384b;margin-bottom:6px;font-weight:900;font-size:14px}
.legal-page .legal-text-link{display:inline-block;margin-top:12px;font-weight:850;color:#088773}
.legal-page .legal-contact{scroll-margin-top:100px;display:flex;gap:30px;align-items:center;justify-content:space-between;padding:34px;margin-top:72px;background:linear-gradient(120deg,#0a2b3c,#103a42);color:#fff;border-radius:21px;box-shadow:0 13px 40px rgba(0,40,64,.18)}
.legal-page .legal-contact h2{font:850 29px/1.2 'Outfit',sans-serif;margin:13px 0 11px;color:white}
.legal-page .legal-contact p{color:#b7d1d6;line-height:1.75;font-size:13px;margin:0 0 12px;max-width:500px}
.legal-page .legal-contact .legal-contact-mail{color:#94f47d;font-size:16px;font-weight:850;word-break:break-word;display:inline-block;margin-bottom:15px}
.legal-page .legal-contact .legal-contact-small{font-size:11px;color:#86abb6;margin:0}
.legal-page .legal-contact>.legal-button{flex-shrink:0}
.legal-page .legal-ending{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:12px;color:#7c96a1;margin-top:30px}
.legal-page .legal-ending a{color:#0a8f7c;font-weight:800}
.legal-page .legal-footer{background:#061824;color:#c3d4db;padding:40px 0 25px}
.legal-page .legal-footer>.wrap{display:grid;grid-template-columns:1fr auto;gap:26px;align-items:center}
.legal-page .legal-footer .wrap>div{display:flex;align-items:center;gap:9px}
.legal-page .legal-footer .wrap>div strong{font:850 17px 'Outfit',sans-serif;color:white}
.legal-page .legal-footer .wrap>div strong span{color:#93f47c}
.legal-page .legal-footer small{font-size:11px;color:#87a8b5;margin-left:12px}
.legal-page .legal-footer nav{display:flex;flex-wrap:wrap;gap:15px}
.legal-page .legal-footer nav a{font-size:12px;color:#a9c7d3}
.legal-page .legal-footer p{grid-column:1/-1;font-size:11px;color:#7191a0;margin:0;padding-top:17px;border-top:1px solid #18394a}
.legal-page [data-legal-field]{white-space:pre-line}
/* Keep legibility when users select dark mode; the corporate header remains intact. */
.legal-page.theme-dark{background:#071d29}
.legal-page.theme-dark .legal-main,.legal-page.theme-dark .legal-section h2,.legal-page.theme-dark .legal-summary h2{color:#ebf6fa}
.legal-page.theme-dark .legal-summary-card,.legal-page.theme-dark .legal-data-card,.legal-page.theme-dark .legal-information-block,.legal-page.theme-dark .legal-info-note,.legal-page.theme-dark .legal-toc{background:#0c2b39;border-color:#27495a}
.legal-page.theme-dark .legal-summary-card strong,.legal-page.theme-dark .legal-data-card h3,.legal-page.theme-dark .legal-information-block h3,.legal-page.theme-dark .legal-info-note>strong{color:#e7f7f9}
.legal-page.theme-dark .legal-summary-card p,.legal-page.theme-dark .legal-data-card p,.legal-page.theme-dark .legal-info-note p,.legal-page.theme-dark .legal-information-block p,.legal-page.theme-dark .legal-intro,.legal-page.theme-dark .legal-section-body>p{color:#a4bbc8}
.legal-page.theme-dark .legal-inline-tip{background:#143e44;color:#c5dbd9}
.legal-page.theme-dark .legal-toc-link{color:#bad1d8}
@media(max-width:1100px){.legal-page .legal-content-layout{gap:35px;grid-template-columns:192px minmax(0,1fr)}.legal-page .legal-banner-inner{grid-template-columns:1.3fr .7fr}}
@media(max-width:840px){.legal-page .legal-banner-inner{grid-template-columns:1fr;padding-bottom:42px}.legal-page .legal-crumb{margin-bottom:42px}.legal-page .legal-hero-art{display:none}.legal-page .legal-content-layout{display:block;padding-top:34px}.legal-page .legal-toc{position:static;display:flex;flex-wrap:wrap;align-items:center;gap:2px;margin-bottom:34px;padding:12px}.legal-page .legal-toc h2{width:100%;padding:2px 9px 8px}.legal-page .legal-toc-link{padding:9px 10px}.legal-page .legal-toc-bottom{display:none}}
@media(max-width:600px){.legal-page .wrap{width:calc(100% - 32px)}.legal-page .legal-banner h1{font-size:43px}.legal-page .legal-hero-meta>span+span:before{display:none}.legal-page .legal-summary-grid,.legal-page .legal-data-grid,.legal-page .legal-split-cards{grid-template-columns:1fr}.legal-page .legal-data-card{min-height:0}.legal-page .legal-contact{padding:24px;display:block}.legal-page .legal-contact>.legal-button{margin-top:20px}.legal-page .legal-footer>.wrap{grid-template-columns:1fr}.legal-page .legal-footer .wrap>div{flex-wrap:wrap}.legal-page .legal-footer small{margin-left:0;width:100%}.legal-page .legal-footer p{grid-column:1}.legal-page .legal-toc{max-height:180px;overflow:auto}}
@media(prefers-reduced-motion:reduce){.legal-page *{scroll-behavior:auto!important;transition:none!important}}
