/* chez legal pages: the homepage's paper, ink and brass, set for long reading. */
:root{--paper:#f6f5f2;--ink:#302e2b;--body:#4f4b45;--muted:#77716a;--brass:#a78046;--brass-ink:#9c7b4c;--line:#302e2b1a;--card:#fffffff2;--serif:Georgia,'Times New Roman',serif;--sans:-apple-system,BlinkMacSystemFont,'Helvetica Neue','Segoe UI',Arial,sans-serif;--ease:cubic-bezier(.2,.8,.2,1)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:110px;-webkit-text-size-adjust:100%}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:radial-gradient(#6d686130 .7px,transparent .9px) 0 0/24px 24px,var(--paper);color:var(--ink);font:400 16px/1.7 var(--sans);-webkit-font-smoothing:antialiased;font-kerning:normal}
a{color:var(--brass-ink);text-decoration:underline;text-decoration-color:#a780466b;text-underline-offset:3px;transition:color .2s,text-decoration-color .2s}
a:hover{color:var(--ink);text-decoration-color:var(--ink)}
a:focus-visible,summary:focus-visible{outline:2px solid var(--brass);outline-offset:3px;border-radius:3px}
.lg-skip{position:absolute;left:16px;top:-60px;z-index:20;padding:10px 16px;border-radius:999px;background:var(--ink);color:#fff;text-decoration:none}
.lg-skip:focus{top:12px}

/* Header: the brand, the three documents, the call to action. */
.lg-head{position:sticky;top:0;z-index:10;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;padding:18px 3.5%;background:#f6f5f2e6;-webkit-backdrop-filter:blur(14px) saturate(1.1);backdrop-filter:blur(14px) saturate(1.1);border-bottom:1px solid var(--line)}
.lg-brand{display:inline-grid;flex:none;justify-self:start;line-height:1;color:var(--ink);text-decoration:none}
.lg-brand b{font:italic 400 32px/1 var(--serif);letter-spacing:-.04em}
.lg-brand small{margin-top:5px;font:500 11px/1 var(--sans);letter-spacing:.04em;color:var(--muted);white-space:nowrap}
.lg-brand small i{font-style:normal;color:var(--brass)}
.lg-tabs{display:flex;gap:4px;padding:4px;border-radius:999px;background:#302e2b0d}
.lg-tabs a{padding:8px 16px;border-radius:999px;font:500 13px/1 var(--sans);color:var(--muted);text-decoration:none;white-space:nowrap}
.lg-tabs a:hover{color:var(--ink)}
.lg-tabs a[aria-current=page]{background:#fff;color:var(--ink);box-shadow:0 2px 8px #302e2b14}
.lg-cta{justify-self:end;display:inline-flex;align-items:center;gap:12px;height:44px;padding:0 8px 0 20px;border-radius:999px;background:var(--ink);color:#f6f5f2;font:500 14px/1 var(--sans);text-decoration:none;box-shadow:0 10px 26px #302e2b2e;white-space:nowrap}
.lg-cta span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--brass);color:#fff}
.lg-cta:hover{color:#fff;background:#46433f}
/* Part of the label, not a flex item of its own; dropped when the bar runs out of room. */
.lg-cta-room{display:contents;font:inherit}

/* The documents menu, shown on phones and tablets. */
.lg-menu{display:none;position:relative;flex:none;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:#302e2b0d;color:var(--ink);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .2s}
.lg-menu:hover{background:#302e2b17}
.lg-menu:focus-visible{outline:2px solid var(--brass);outline-offset:3px}
.lg-menu i{position:absolute;left:14px;right:14px;height:1.5px;border-radius:2px;background:currentColor;transition:transform .35s var(--ease),top .35s var(--ease)}
.lg-menu i:first-child{top:18px}
.lg-menu i:last-child{top:24.5px}
.lg-head.is-open .lg-menu i{top:21.25px}
.lg-head.is-open .lg-menu i:first-child{transform:rotate(45deg)}
.lg-head.is-open .lg-menu i:last-child{transform:rotate(-45deg)}

/* Layout: contents on the left, the document beside it, both within the header's width. */
.lg-main{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:64px;padding:64px 3.5% 96px}
.lg-toc{position:sticky;top:104px;align-self:start;max-height:calc(100vh - 128px);overflow:auto;scrollbar-width:thin}
.lg-toc summary{list-style:none;margin:0 0 14px;font:600 10.5px/1.2 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--brass-ink);cursor:default}
.lg-toc summary::-webkit-details-marker{display:none}
.lg-toc ol{margin:0;padding:0;list-style:none;border-left:1px solid var(--line)}
.lg-toc a{display:grid;grid-template-columns:24px 1fr;gap:6px;margin-left:-1px;padding:6px 0 6px 14px;border-left:1px solid transparent;font:400 13px/1.4 var(--sans);color:var(--muted);text-decoration:none}
.lg-toc a span{color:#a49d93;font-variant-numeric:tabular-nums}
.lg-toc a:hover{color:var(--ink)}
.lg-toc a[aria-current]{border-left-color:var(--brass);color:var(--ink)}
.lg-toc a[aria-current] span{color:var(--brass)}

/* The document. */
.lg-doc{min-width:0}
.lg-kicker{display:flex;align-items:center;gap:12px;margin:0 0 22px;font:600 10.5px/1.2 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--brass-ink)}
.lg-kicker:before{content:'';width:22px;height:1px;background:currentColor}
.lg-doc h1{margin:0;font:300 clamp(48px,6vw,84px)/.96 var(--sans);letter-spacing:-.05em;text-wrap:balance}
.lg-doc h1 em{font:italic 400 1.04em/.96 var(--serif);letter-spacing:-.035em;color:var(--brass-ink)}
.lg-dates{display:flex;flex-wrap:wrap;gap:8px 28px;margin:28px 0 40px;padding:0 0 28px;border-bottom:1px solid var(--line);font:400 13px/1.4 var(--sans);color:var(--muted)}
.lg-dates b{font-weight:500;color:var(--ink)}
.lg-doc h2{display:flex;align-items:baseline;gap:16px;margin:72px 0 22px;font:400 clamp(26px,2.6vw,34px)/1.15 var(--sans);letter-spacing:-.03em;text-wrap:balance}
.lg-doc h2 .lg-n{flex:none;min-width:1.4em;font:italic 400 1.15em/1 var(--serif);color:var(--brass);letter-spacing:-.04em}
.lg-doc h3{margin:40px 0 14px;font:600 16px/1.35 var(--sans);letter-spacing:-.01em}
.lg-doc p,.lg-doc li{color:var(--body);text-wrap:pretty}
.lg-doc p{margin:0 0 16px}
.lg-doc .lg-dates{margin-top:20px}
.lg-doc strong{color:var(--ink);font-weight:600}
.lg-pn{display:inline-block;min-width:2.6em;margin-right:6px;font:500 13px/1 var(--sans);color:var(--brass-ink);font-variant-numeric:tabular-nums}
.lg-caps{font-size:13.5px;line-height:1.7;letter-spacing:.01em}
.lg-doc ul{margin:0 0 18px;padding:0;list-style:none}
.lg-doc ul ul{margin:10px 0 6px}
.lg-doc li{position:relative;margin:0 0 9px;padding-left:22px}
.lg-doc li:before{content:'';position:absolute;left:4px;top:.72em;width:5px;height:5px;border-radius:50%;background:var(--brass)}
.lg-doc ul ul li:before{width:6px;height:1px;border-radius:0;top:.85em;background:#a49d93}
.lg-doc li>p{margin:0 0 8px}
.lg-doc li>p:last-child{margin-bottom:0}
.lg-doc ul.lg-lettered>li{display:grid;grid-template-columns:30px 1fr;padding-left:0}
.lg-doc ul.lg-lettered>li:before{display:none}
.lg-li-n{font:500 13px/1.7 var(--sans);color:var(--brass-ink)}
.lg-doc hr{margin:48px 0 0;border:0;border-top:1px solid var(--line)}

/* Callouts: the summary at the top and the contact blocks. */
.lg-doc blockquote{margin:24px 0 28px;padding:22px 26px;border:1px solid var(--line);border-radius:20px;background:var(--card);box-shadow:0 18px 50px #302e2b0f}
.lg-doc blockquote p:last-child,.lg-doc blockquote ul:last-child{margin-bottom:0}
.lg-doc blockquote:first-of-type{border-left:3px solid var(--brass)}

/* Tables: a card that scrolls sideways on a narrow screen. */
.lg-table{margin:20px 0 28px;overflow-x:auto;border:1px solid var(--line);border-radius:18px;background:var(--card)}
.lg-doc table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.55}
.lg-doc th{padding:14px 18px;text-align:left;font:600 10.5px/1.3 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--brass-ink);border-bottom:1px solid var(--line);white-space:nowrap}
.lg-doc td{padding:14px 18px;vertical-align:top;color:var(--body);border-bottom:1px solid #302e2b0f}
.lg-doc tr:last-child td{border-bottom:0}
.lg-doc td:first-child{color:var(--ink);font-weight:500;min-width:150px}

/* Footer: the same strip as the homepage. */
.lg-foot{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 28px;padding:20px 3.5% 22px;background:#151413;color:#8f897f;font:400 12px/1.4 var(--sans)}
.lg-foot nav{display:flex;flex-wrap:wrap;gap:8px 26px}
.lg-foot a{color:#d8d3cb;text-decoration:none}
.lg-foot a:hover{color:#d4b27a}

@media(max-width:960px){
 .lg-head{display:flex;gap:12px}
 .lg-brand{margin-right:auto}
 .lg-cta{order:2}
 .lg-menu{display:inline-block;order:3}
 .lg-tabs{position:absolute;top:calc(100% + 8px);right:3.5%;width:min(320px,calc(100% - 32px));flex-direction:column;gap:2px;padding:6px;border-radius:20px;background:#fffffffa;box-shadow:0 0 0 1px var(--line),0 24px 50px -20px #302e2b40;opacity:0;visibility:hidden;transform:translateY(-6px);transform-origin:top right;transition:opacity .2s,transform .35s var(--ease),visibility 0s .35s}
 .lg-head.is-open .lg-tabs{opacity:1;visibility:visible;transform:none;transition:opacity .2s,transform .35s var(--ease),visibility 0s}
 .lg-tabs a{padding:14px 16px;border-radius:14px;font-size:15px}
 .lg-tabs a[aria-current=page]{background:#302e2b0d;box-shadow:none}
 .lg-main{grid-template-columns:minmax(0,1fr);gap:28px;padding:36px 20px 72px}
 .lg-toc{position:static;max-height:none;padding:14px 18px;border:1px solid var(--line);border-radius:18px;background:var(--card)}
 .lg-toc summary{margin:0;cursor:pointer;display:flex;justify-content:space-between}
 .lg-toc summary:after{content:'+';font-size:16px;letter-spacing:0;line-height:1;color:var(--ink)}
 .lg-toc details[open] summary:after{content:'−'}
 .lg-toc details[open] summary{margin-bottom:12px}
 html{scroll-padding-top:100px}
}
@media(max-width:560px){
 body{font-size:15.5px}
 .lg-head{padding:14px 16px}
 .lg-brand b{font-size:28px}
 .lg-cta{height:40px;padding:0 6px 0 14px;font-size:13px;gap:8px}
 .lg-cta span{width:28px;height:28px}
 .lg-menu{width:40px;height:40px}
 .lg-menu i{left:13px;right:13px}
 .lg-menu i:first-child{top:16px}
 .lg-menu i:last-child{top:22.5px}
 .lg-head.is-open .lg-menu i{top:19.25px}
 .lg-tabs{left:16px;right:16px;width:auto}
 .lg-doc h1{font-size:clamp(44px,13vw,60px)}
 .lg-doc h2{margin-top:56px;gap:12px}
 .lg-doc blockquote{padding:18px 18px}
 .lg-foot{flex-direction:column;align-items:flex-start;padding:18px 20px 26px}
}
/* Too narrow for the full label: "Upload photos". */
@media(max-width:389px){
 .lg-cta-room{display:none}
}
@media(max-width:350px){
 .lg-head{gap:8px;padding:14px 12px}
 .lg-brand b{font-size:26px}
 .lg-cta{padding:0 5px 0 12px;font-size:12.5px}
 .lg-menu{width:38px;height:38px}
 .lg-menu i{left:12px;right:12px}
 .lg-menu i:first-child{top:15px}
 .lg-menu i:last-child{top:21.5px}
 .lg-head.is-open .lg-menu i{top:18.25px}
}
/* Wide tables (four or more columns) keep readable cells and scroll sideways, with a fade at the edge as a cue. */
.lg-table.is-wide table{min-width:900px}
.lg-table.is-wide td,.lg-table.is-wide th{min-width:130px}
.lg-table.is-wide{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 40px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 40px),transparent)}
.lg-table.is-wide:hover,.lg-table.is-wide:focus{-webkit-mask-image:none;mask-image:none}
.lg-table:focus-visible{outline:2px solid var(--brass);outline-offset:3px}

/* Back to top, the same pill as the homepage: it arrives halfway down the page (legal.js) and rises above the footer. */
.lg-top{position:fixed;right:3.5%;bottom:26px;z-index:20;display:inline-flex;align-items:center;height:50px;padding:0 7px 0 20px;border-radius:999px;border:1px solid #302e2b1a;background:#fffffff2;color:var(--ink);font:500 14px/1 var(--sans);letter-spacing:-.005em;white-space:nowrap;text-decoration:none;box-shadow:0 12px 30px #302e2b1f;-webkit-tap-highlight-color:transparent;transform:translateY(calc(-1 * var(--lg-top-lift,0px)));opacity:0;visibility:hidden;pointer-events:none;transition:opacity .35s,translate .3s var(--ease),box-shadow .3s,visibility 0s .35s}
.lg-top.is-shown{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .35s,translate .3s var(--ease),box-shadow .3s,visibility 0s}
.lg-top span{margin-right:12px}
.lg-top svg{flex:none;box-sizing:content-box;width:16px;height:16px;padding:9px;border-radius:50%;background:var(--brass);color:#fff;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;rotate:-90deg}
.lg-top:hover{translate:0 -2px;box-shadow:0 18px 40px #302e2b2e}
.lg-top:focus-visible{outline:2px solid var(--brass);outline-offset:3px}
@media(max-width:700px){
 .lg-top{right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));height:46px;padding:0 6px 0 16px;font-size:13.5px}
 .lg-top span{margin-right:10px}
 .lg-top svg{padding:8px}
}
@media(prefers-reduced-motion:reduce){.lg-top{transition:none!important}}

/* Phones: the header and its menu keep a 12px gutter; the document, the footer and back to top keep 14px. */
@media(max-width:700px){
 .lg-head{padding-left:12px;padding-right:12px}
 .lg-tabs{right:12px}
 .lg-main{padding-left:14px;padding-right:14px}
 .lg-foot{padding-left:14px;padding-right:14px}
 .lg-top{right:14px}
}

/* Section and clause numbers sit close to their titles. */
.lg-doc h2{gap:.4em}
.lg-doc h2 .lg-n{min-width:0}
.lg-pn{min-width:0;margin-right:8px}
@media(max-width:560px){
 .lg-tabs{left:12px}
}
