/* R42 legal pages only. R41 remains the sole viewport and anchor-offset owner. */
body.legal-r42 main { background:#f6f3eb; color:#10213c; }
body.legal-r42 main .page-hero { background:#08182f; color:#fff9ed; border-bottom:4px solid #db642e; }
body.legal-r42 main .page-hero::before,
body.legal-r42 main .page-hero::after { content:none; }
body.legal-r42 main .page-hero .kicker { color:#ffb58b; }
body.legal-r42 main .page-hero .subnav { flex-wrap:wrap; overflow:visible; }
body.legal-r42 main .page-hero .subnav li { min-width:0; max-width:100%; }
body.legal-r42 main .page-hero .subnav a { background:transparent; border:1px solid #627086; color:#fff9ed; white-space:normal; overflow-wrap:anywhere; max-width:100%; }
body.legal-r42 main .page-hero .subnav a[aria-current="page"] { background:#fff9ed; color:#08182f; border-color:#fff9ed; }
body.legal-r42 main .page-hero .subnav a:hover { border-color:#ffb58b; }
body.legal-r42 main .legal-content,
body.legal-r42 main .legal-related { background:#f6f3eb; color:#10213c; }
body.legal-r42 main .legal-content { padding-block:clamp(32px,5vw,72px); }
body.legal-r42 main .legal-wrap { width:min(calc(100% - 40px),1120px); margin-inline:auto; }
body.legal-r42 main .legal-layout { display:grid; grid-template-columns:minmax(0,280px) minmax(0,1fr); gap:clamp(32px,5vw,72px); align-items:start; }
body.legal-r42 main .legal-contents { min-width:0; padding-top:4px; }
body.legal-r42 main .legal-eyebrow { display:block; color:#99401f; font-size:.73rem; font-weight:760; letter-spacing:.12em; text-transform:uppercase; margin-bottom:18px; }
body.legal-r42 main .legal-contents ol { list-style:none; padding:0; margin:0; border-top:1px solid #cfd2cd; }
body.legal-r42 main .legal-contents li { margin:0; border-bottom:1px solid #d9dbd5; }
body.legal-r42 main .legal-contents li a { display:grid; grid-template-columns:24px minmax(0,1fr); gap:10px; padding:12px 0; color:#263a51; font-size:.86rem; line-height:1.45; font-weight:620; text-decoration:none; overflow-wrap:anywhere; }
body.legal-r42 main .legal-index { color:#9b4829; font-size:.72rem; font-weight:740; font-variant-numeric:tabular-nums; padding-top:2px; }
body.legal-r42 main .legal-contents a:hover { color:#99401f; text-decoration:underline; text-underline-offset:4px; }
body.legal-r42 main .legal-back { display:inline-flex; align-items:center; min-height:44px; margin-top:12px; color:#526075; font-size:.8rem; text-underline-offset:4px; }
body.legal-r42 main .legal-document { min-width:0; max-width:72ch; padding:clamp(22px,3vw,38px); background:#fffdf8; border:1px solid #d9dbd5; border-top:3px solid #db642e; border-radius:0 0 16px 16px; color:#26364b; font-size:1rem; line-height:1.8; overflow-wrap:anywhere; }
body.legal-r42 main .legal-block { padding-block:30px; border-bottom:1px solid #dedfd8; }
body.legal-r42 main .legal-block:first-child { padding-top:0; }
body.legal-r42 main .legal-block:last-child { padding-bottom:0; border-bottom:0; }
body.legal-r42 main .legal-document h2 { margin:0 0 16px; color:#08182f; font-size:clamp(1.25rem,2.2vw,1.65rem); font-weight:750; font-variation-settings:"wdth" 100; letter-spacing:-.025em; line-height:1.3; text-wrap:pretty; }
body.legal-r42 main .legal-document p { margin:0 0 16px; }
body.legal-r42 main .legal-document p:last-child { margin-bottom:0; }
body.legal-r42 main .legal-document ul { padding-left:22px; margin-block:16px; }
body.legal-r42 main .legal-document li { margin-bottom:10px; }
body.legal-r42 main .legal-document a { color:#963f20; font-weight:600; text-decoration:underline; text-underline-offset:3px; text-decoration-thickness:1px; overflow-wrap:anywhere; }
body.legal-r42 main a:focus-visible { outline:3px solid #db642e; outline-offset:4px; border-radius:2px; }
body.legal-r42 main .legal-identity { color:#08182f; font-size:1.25rem; font-weight:750; margin-bottom:24px; }
body.legal-r42 main .legal-contact-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:24px; padding-bottom:28px; border-bottom:1px solid #dedfd8; }
body.legal-r42 main .legal-contact-grid .legal-block { padding:0; border:0; }
body.legal-r42 main .legal-contact-grid h2 { font-size:1rem; margin-bottom:12px; }
body.legal-r42 main .legal-contact-grid p { margin:0; line-height:1.65; }
body.legal-r42 main .legal-related { padding-block:0 56px; }
body.legal-r42 main .legal-related .legal-wrap { max-width:1120px; }
body.legal-r42 main .legal-related .linklist { max-width:680px; }
body.legal-r42 main .legal-sidebar { min-width:0; }
body.legal-r42 main .legal-contents-mobile { display:none; }
body.legal-r42 main .legal-contents-mobile summary { display:flex; align-items:center; justify-content:space-between; gap:12px; cursor:pointer; min-height:52px; padding:14px 16px; color:#08182f; font-weight:730; font-size:.9rem; border:1px solid #cfd2cd; border-radius:10px; background:#fffdf8; list-style:none; }
body.legal-r42 main .legal-contents-mobile summary::-webkit-details-marker { display:none; }
body.legal-r42 main .legal-contents-mobile summary span { color:#99401f; font-size:1.25rem; }
body.legal-r42 main .legal-contents-mobile[open] summary span { transform:rotate(45deg); }
body.legal-r42 main .legal-contents-mobile .legal-contents { margin-top:20px; }
body.legal-r42 main .legal-contents-mobile summary:focus-visible { outline:3px solid #db642e; outline-offset:4px; }
body.legal-r42 main .page-hero .legal-opening-note { font-size:1rem; line-height:1.6; color:#d7dfeb; margin:18px 0 20px; max-width:40ch; }
body.legal-r42 main .page-hero .legal-read { display:inline-flex; align-items:center; gap:18px; width:fit-content; max-inline-size:100%; min-height:46px; padding:11px 18px; border-radius:8px; background:#b94c21; color:#fff; font-size:.9rem; font-weight:750; text-decoration:none; overflow-wrap:anywhere; }
body.legal-r42 main .page-hero .legal-read:hover { background:#99401f; }
@media (max-width:800px) {
  body.legal-r42 main .legal-contents-desktop { display:none; }
  body.legal-r42 main .legal-contents-mobile { display:block; }
  body.legal-r42 main .legal-layout { grid-template-columns:minmax(0,1fr); gap:28px; }
  body.legal-r42 main .legal-document { max-width:none; }
  body.legal-r42 main .legal-contents ol { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:0 24px; }
}
@media (max-width:480px) {
  body.legal-r42 main .legal-wrap { width:calc(100% - 32px); }
  body.legal-r42 main .legal-contents ol { grid-template-columns:minmax(0,1fr); }
  body.legal-r42 main .legal-contents li a { min-height:44px; padding-block:11px; }
  body.legal-r42 main .legal-document { padding:22px 18px; font-size:1rem; line-height:1.75; border-radius:0 0 12px 12px; }
  body.legal-r42 main .legal-contact-grid { grid-template-columns:minmax(0,1fr); gap:24px; }
  body.legal-r42 main .legal-block { padding-block:26px; }
}
/* Compact the legal opening as one composition in a short landscape stage. */
@media (max-width:960px) and (max-height:480px) and (orientation:landscape) {
  body.legal-r42 main .page-hero > .wrap { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); column-gap:32px; row-gap:8px; align-items:center; }
  body.legal-r42 main .page-hero .crumbs { grid-column:1 / -1; grid-row:1; margin:0; }
  body.legal-r42 main .page-hero .kicker { grid-column:1; grid-row:2; margin:0; }
  body.legal-r42 main .page-hero h1 { grid-column:1; grid-row:3; }
  body.legal-r42 main .page-hero .legal-opening-note { grid-column:2; grid-row:2 / 4; margin:0; max-width:none; }
  body.legal-r42 main .page-hero .legal-read { grid-column:1; grid-row:4; }
  body.legal-r42 main .page-hero .subnav { grid-column:2; grid-row:4; margin:0; align-self:center; }
}
@media print {
  body.legal-r42 { background:#fff !important; color:#000 !important; padding:0 !important; }
  body.legal-r42 :is(.site-header,.site-footer,.dock,.sheet,.skip-link,.lightbox) { display:none !important; }
  body.legal-r42 main { background:#fff; color:#000; }
  body.legal-r42 main .page-hero { min-height:0 !important; min-block-size:0 !important; background:#fff; color:#000; border:0; padding:0 0 18pt; }
  body.legal-r42 main .page-hero h1 { font-size:24pt; color:#000; }
  body.legal-r42 main .page-hero :is(.crumbs,.kicker,.subnav) { display:none; }
  body.legal-r42 main .legal-sidebar { display:none; }
  body.legal-r42 main .page-hero :is(.legal-opening-note,.legal-read) { display:none; }
  body.legal-r42 main .legal-content { padding:0; min-block-size:0 !important; background:#fff; }
  body.legal-r42 main .legal-wrap { width:100%; max-width:none; }
  body.legal-r42 main .legal-layout { display:block; }
  body.legal-r42 main .legal-document { max-width:none; padding:0; background:#fff; border:0; border-radius:0; font-size:10.5pt; line-height:1.5; color:#000; }
  body.legal-r42 main .legal-document h2 { color:#000; font-size:14pt; break-after:avoid; }
  body.legal-r42 main .legal-document p { orphans:3; widows:3; }
  body.legal-r42 main .legal-block { padding-block:16pt; }
  body.legal-r42 main .legal-document a { color:#000; }
  body.legal-r42 main .legal-related { background:#fff; color:#000; padding-block:18pt 0; }
}
