/* Extends the live site's Noto Sans, navy and turquoise design tokens. */
.footer-main>.footer-links { flex-direction:column; align-items:flex-end; gap:12px; }
.footer-primary,.footer-secondary { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px 26px; }
.footer-secondary { font-size:.8125rem; color:#9ba8bd; gap:8px 22px; }
.footer-secondary a { text-underline-offset:4px; }
.footer-secondary a:hover { text-decoration:underline; }
.footer-legal { display:flex; flex-wrap:wrap; gap:8px 28px; padding:0 0 28px; color:#bfc6d1; font-size:.875rem; }
.footer-legal a { padding:6px 0; text-underline-offset:5px; }
.footer-legal a:hover,.footer-legal a[aria-current="page"] { color:var(--turquoise-light); text-decoration:underline; }
.legal-hero { background:var(--navy); color:var(--white); padding:38px 0 58px; }
.legal-breadcrumb { display:flex; align-items:center; gap:12px; color:#aeb8c9; font-size:.875rem; margin-bottom:34px; }
.legal-breadcrumb a:hover { color:var(--turquoise-light); }
.legal-hero-grid { display:flex; align-items:flex-end; justify-content:space-between; gap:32px; }
.legal-hero h1 { font-size:clamp(2rem,4.4vw,3.85rem); font-weight:900; line-height:1.12; letter-spacing:-.045em; overflow-wrap:anywhere; }
.legal-hero h1::after { content:'.'; color:var(--turquoise); }
.legal-hero p { max-width:650px; margin-top:20px; color:#bfc6d1; font-size:1.0625rem; line-height:1.75; }
.legal-edition { flex-shrink:0; color:#aeb8c9; font-size:.8125rem; padding-bottom:4px; }
.legal-edition time { display:block; color:white; margin-top:4px; font-size:.9375rem; }
.legal-switcher { border-bottom:1px solid var(--border); background:white; }
.legal-switcher .container { display:flex; gap:36px; }
.legal-switcher a { padding:22px 0 19px; border-bottom:3px solid transparent; font-size:.9375rem; color:var(--slate); font-weight:600; }
.legal-switcher a:hover { color:var(--ink); }
.legal-switcher a[aria-current="page"] { color:var(--navy); border-bottom-color:var(--turquoise); }
.legal-body { background:var(--mist); padding:52px 0 80px; }
.legal-layout { display:grid; grid-template-columns:240px minmax(0,1fr); gap:48px; align-items:start; }
.legal-sidebar { position:sticky; top:120px; }
.legal-sidebar nav { padding-bottom:24px; border-bottom:1px solid var(--border); }
.legal-sidebar h2 { font-size:.875rem; font-weight:750; letter-spacing:0; margin-bottom:16px; }
.legal-sidebar ol { display:grid; gap:2px; }
.legal-sidebar nav a { display:block; padding:7px 0 7px 14px; border-left:2px solid var(--border); font-size:.875rem; color:#526073; line-height:1.45; }
.legal-sidebar nav a:hover,.legal-sidebar nav a[aria-current="location"] { border-color:#00868a; color:#006e72; }
.legal-help { margin-top:26px; }
.legal-help p { font-size:.875rem; color:var(--slate); margin:10px 0; }
.legal-help a { font-size:.875rem; font-weight:650; color:#006e72; overflow-wrap:anywhere; text-decoration:underline; text-underline-offset:4px; }
.legal-print { display:flex; align-items:center; gap:10px; background:none; border:1px solid #becad0; border-radius:7px; color:var(--ink); padding:11px 15px; margin-top:24px; font-size:.875rem; font-weight:650; }
.legal-print:hover { background:white; }
.legal-paper { background:white; border:1px solid var(--border); border-radius:12px; padding:12px 48px 32px; min-width:0; }
.legal-section { padding:30px 0; border-bottom:1px solid #e8edf0; scroll-margin-top:110px; }
.legal-section:last-child { border-bottom:0; padding-bottom:14px; }
.legal-section h2 { font-size:clamp(1.25rem,2.2vw,1.65rem); font-weight:800; margin-bottom:18px; letter-spacing:-.035em; }
.legal-section h2 .section-number { display:block; font-size:.8125rem; font-weight:650; letter-spacing:0; color:#008286; margin-bottom:10px; }
.legal-section p,.legal-section li { font-size:1rem; line-height:1.85; color:#465161; max-width:72ch; }
.legal-section p+p,.legal-section p+ul,.legal-section ul+p { margin-top:14px; }
.legal-section ul { list-style:disc; padding-left:22px; }
.legal-section li+li { margin-top:7px; }
.legal-section li::marker { color:#008286; }
.legal-section strong { color:var(--ink); font-weight:650; }
.legal-section a { color:#006e72; text-decoration:underline; text-underline-offset:3px; overflow-wrap:anywhere; }
.legal-notice { padding:18px 22px; background:#edf8f7; border-left:3px solid #00868a; border-radius:0 7px 7px 0; margin:18px 0 0; }
.legal-section .legal-notice p { color:#285754; font-size:.9375rem; }
.company-details { margin:8px 0 0; }
.company-details>div { display:grid; grid-template-columns:minmax(130px,.85fr) minmax(0,1.4fr); gap:16px; padding:17px 0; border-bottom:1px solid #e8edf0; }
.company-details>div:last-child { border:0; }
.company-details dt { color:var(--slate); font-size:.9375rem; }
.company-details dd { margin:0; color:var(--ink); font-size:1rem; font-weight:600; overflow-wrap:anywhere; }
.company-details address { font-style:normal; font-weight:400; }
.legal-contact-link { display:inline-block; margin-top:12px; font-size:1.0625rem; font-weight:700; }
.legal-end { display:flex; flex-wrap:wrap; justify-content:space-between; gap:16px; margin-top:26px; font-size:.875rem; color:#526073; }
.legal-end a { text-decoration:underline; text-underline-offset:4px; }
.legal-page .header .legal-home { color:#c4c9d4; font-size:.875rem; }
.legal-page .legal-home:hover { color:var(--turquoise-light); }
@media(max-width:980px) {
  .legal-layout { grid-template-columns:190px minmax(0,1fr); gap:28px; }
  .legal-paper { padding:8px 28px 28px; }
  .legal-hero-grid { display:block; }
  .legal-edition { margin-top:24px; }
  .legal-edition time { display:inline; margin-left:8px; }
}
@media(max-width:720px) {
  .legal-hero { padding:26px 0 34px; }
  .legal-breadcrumb { margin-bottom:26px; }
  .legal-hero p { font-size:1rem; margin-top:16px; }
  .legal-switcher .container { gap:20px; flex-wrap:wrap; padding-top:8px; }
  .legal-switcher a { padding:12px 0; font-size:.875rem; }
  .legal-body { padding:28px 0 48px; }
  .legal-layout { grid-template-columns:1fr; gap:24px; }
  .legal-sidebar { position:static; }
  .legal-sidebar nav { padding:18px 20px; border:1px solid var(--border); border-radius:8px; background:white; }
  .legal-sidebar ol { grid-template-columns:repeat(2,minmax(0,1fr)); gap:4px 16px; }
  .legal-help { display:none; }
  .legal-print { margin:14px 0 0; }
  .legal-paper { padding:0 22px 20px; }
  .legal-section { padding:26px 0; scroll-margin-top:92px; }
  .legal-page .header .legal-home { display:none; }
  .legal-page .header .brand { width:145px; }
  .legal-page .nav-actions .button { font-size:.8125rem; padding:10px 12px; }
  .company-details>div { grid-template-columns:1fr; gap:5px; }
  .footer-legal { gap:5px 20px; }
}
@media(max-width:390px) {
  .legal-sidebar ol { grid-template-columns:1fr; }
  .legal-paper { padding-inline:18px; }
}
@media print {
  @page { margin:18mm; }
  .legal-page { background:white; font-size:11pt; }
  .legal-page .header,.legal-page footer,.legal-sidebar,.legal-switcher,.legal-breadcrumb,.legal-end,.skip-link { display:none!important; }
  .legal-hero { background:white; color:black; padding:0 0 20px; border-bottom:2px solid black; }
  .legal-hero h1 { font-size:26pt; }
  .legal-hero h1::after { color:black; }
  .legal-hero p,.legal-edition,.legal-edition time { color:black; }
  .legal-body { padding:0; background:white; }
  .legal-layout { display:block; }
  .legal-page .container { width:100%; }
  .legal-paper { padding:0; border:0; }
  .legal-section { padding:18px 0; }
  .legal-section h2 { break-after:avoid; }
  .legal-section p,.legal-section li { font-size:11pt; color:black; orphans:3; widows:3; }
  .company-details>div { break-inside:avoid; }
}
