/* Legal pages extend the brochure's original typography, colour and softness. */
.legal-page{background:linear-gradient(150deg,#f2f6f8 0,#f6f0f9 440px,#fff 950px);color:var(--deep)}
.legal-header{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:22px;padding:19px 27px;background:#fffffff2;border:1px solid #eee9f3;border-radius:999px;box-shadow:var(--soft-shadow)}
.legal-header .brand{color:var(--purple);min-width:0}
.legal-back{font-size:.95rem;font-weight:600;color:var(--purple);padding:11px 20px;border:1px solid #d5cce5;border-radius:999px;white-space:nowrap}
.legal-back:hover{background:#f5f1fa}
.legal-main{padding-top:57px;padding-bottom:40px}
.legal-intro{margin-bottom:40px}
.legal-intro .eyebrow{margin-bottom:14px}
.legal-intro h1{color:var(--purple);font-size:clamp(2rem,4.4vw,3.2rem);line-height:1.2;max-width:930px;overflow-wrap:anywhere}
.legal-links{display:flex;flex-wrap:wrap;gap:10px 12px;margin-top:27px}
.legal-links a{font-size:1rem;padding:10px 21px;border:1px solid #dcd3e8;border-radius:999px;background:#ffffffc4;color:var(--purple)}
.legal-links a[aria-current="page"]{background:var(--purple);color:white;border-color:var(--purple)}
.legal-links a:hover{box-shadow:0 4px 17px #49309210}
.legal-layout{display:grid;grid-template-columns:minmax(0,255px) minmax(0,1fr);gap:31px;align-items:start}
.legal-contents{position:sticky;top:24px;padding:22px 23px;border-radius:24px;background:linear-gradient(135deg,#e9f5f3,#f2ecf8);font-size:.93rem;line-height:1.6}
.legal-contents summary{padding:0 27px 0 0;color:var(--teal);font-size:1rem}
.legal-contents summary:after{top:0;right:0}
.legal-contents ol{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:13px}
.legal-contents a{display:block;overflow-wrap:anywhere}
.legal-contents a:hover{text-decoration:underline;text-underline-offset:4px}
.legal-document{padding:39px 43px;background:#fff;border:1px solid #eee8f4;border-radius:29px;box-shadow:var(--soft-shadow);font-size:1.075rem;line-height:1.78;min-width:0;overflow-wrap:anywhere;hyphens:auto}
.legal-document p+p{margin-top:1.15em}
.legal-version{font-size:1rem;line-height:1.65;color:var(--teal);margin-bottom:29px}
.legal-section{margin-top:39px}
.legal-section:first-child{margin-top:0}
.legal-section h2{font-size:clamp(1.25rem,2vw,1.6rem);line-height:1.4;color:var(--purple);margin-bottom:18px;letter-spacing:-.01em;scroll-margin-top:26px;text-wrap:initial}
.legal-document a{text-decoration:underline;text-underline-offset:3px;color:var(--teal)}
.legal-document strong{font-weight:600}
.legal-table-scroll{overflow-x:auto;margin:26px 0;border:1px solid #e1d9ec;border-radius:19px;max-width:100%;scrollbar-width:thin}
.legal-table-scroll:focus-visible{outline:3px solid var(--teal);outline-offset:4px}
.legal-table{border-collapse:collapse;width:100%;min-width:570px;font-size:.95rem;line-height:1.65;table-layout:fixed}
.legal-table th,.legal-table td{padding:16px 17px;vertical-align:top;text-align:left;overflow-wrap:anywhere;border-bottom:1px solid #e8e1ef}
.legal-table th{background:linear-gradient(135deg,#edf6f5,#f1edf8);color:var(--purple);font-weight:600}
.legal-table th:first-child{width:25%}.legal-table th:nth-child(2){width:34%}
.legal-table tr:last-child td{border-bottom:0}.legal-table tbody tr:nth-child(even){background:#faf9fc}
.legal-top{margin-top:38px!important;padding-top:22px;border-top:1px solid #e8e1ef;font-size:.95rem}
.legal-footer .footer-bottom{border:0;align-items:center;gap:25px}
.legal-footer .legal-links{margin:0;flex-shrink:0}.legal-footer .legal-links a{font-size:.88rem;padding:8px 13px}
.legal-footer .footer-bottom p{font-size:.88rem;max-width:610px}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:980px){.legal-layout{grid-template-columns:1fr;gap:25px}.legal-contents{position:static}.legal-contents ol{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 24px}.legal-main{padding-top:40px}.legal-document{padding:33px 35px}}
@media(max-width:640px){.legal-header{padding:15px 18px;gap:15px;border-radius:25px;flex-wrap:wrap;margin-top:15px}.legal-header .brand{flex:1 1 235px}.legal-back{font-size:.9rem;padding:8px 16px}.legal-intro{margin-bottom:27px}.legal-intro h1{font-size:clamp(1.85rem,7.4vw,2.5rem)}.legal-links{gap:8px;margin-top:23px}.legal-links a{font-size:.94rem;padding:9px 15px}.legal-contents{padding:21px 23px;border-radius:23px}.legal-contents ol{grid-template-columns:1fr}.legal-document{padding:27px 23px;border-radius:23px;font-size:1rem;line-height:1.8}.legal-section{margin-top:32px}.legal-section h2{font-size:1.27rem}.legal-footer .footer-bottom{align-items:flex-start}.legal-table th,.legal-table td{padding:14px}.legal-footer .legal-links{gap:8px}}
@media print{.legal-page{background:#fff;color:#222;font-size:11pt}.legal-header,.legal-contents,.legal-links,.legal-top,.legal-footer{display:none!important}.legal-main{width:100%;padding:0}.legal-intro{margin-bottom:20px}.legal-intro .eyebrow{display:none}.legal-intro h1{font-size:22pt}.legal-layout{display:block}.legal-document{border:0;box-shadow:none;padding:0;font-size:11pt;line-height:1.5}.legal-section h2{font-size:14pt;break-after:avoid}.legal-table-scroll{overflow:visible;border-radius:0}.legal-table{min-width:0;font-size:9pt}.legal-table tr{break-inside:avoid}.legal-table th,.legal-table td{padding:8px}.legal-section{margin-top:23px}}
