/* Complex Montage — legal documents (terms, privacy, cookies, downloads & refunds) and the contact page.
   Documents: one ~70ch column, sticky contents on the left, roman section numbers, Cormorant headings,
   hairlines instead of boxes. Every class here starts with lg-. */

/* ---------- document head ---------- */
.lg-head{padding:clamp(56px,8vw,120px) 0 clamp(36px,4.5vw,64px);border-bottom:1px solid var(--line)}
.lg-kicker{display:flex;align-items:center;gap:.9rem;font:500 .72rem/1.3 var(--fb);text-transform:uppercase;letter-spacing:.18em;color:var(--brass);margin:0 0 1.5rem}
.lg-kicker::before{content:"";flex:0 0 32px;height:1px;background:var(--gold)}
.lg-head h1{font-size:clamp(2.8rem,6vw,5.4rem);max-width:15ch;margin:0 0 .45em}
.lg-intro{max-width:38rem;font:300 clamp(1.06rem,1.45vw,1.25rem)/1.65 var(--fb);margin:0 0 1.4rem}
.lg-meta{font:500 .66rem/1.5 var(--fb);text-transform:uppercase;letter-spacing:.16em;color:var(--muted);margin:0}

/* ---------- document body: contents + text column ---------- */
.lg-doc{display:grid;grid-template-columns:minmax(200px,260px) minmax(0,70ch);gap:clamp(40px,7vw,120px);align-items:start;padding:clamp(48px,6vw,88px) var(--gut) clamp(80px,10vw,140px)}
.lg-toc{position:sticky;top:112px;max-height:calc(100vh - 136px);overflow:auto;padding:0 0 0 1.2rem;border-left:1px solid var(--line);font-size:.9rem}
.lg-toc p{font:500 .66rem/1 var(--fb);text-transform:uppercase;letter-spacing:.18em;color:var(--brass);margin:0 0 1.1rem}
.lg-toc ol{list-style:none;margin:0;padding:0;display:grid;gap:.15rem}
.lg-toc a{display:grid;grid-template-columns:2.7em 1fr;align-items:baseline;line-height:1.4;padding:.28rem 0;text-decoration:none;color:var(--muted);transition:color .6s var(--ease)}
.lg-toc a span{font:italic 500 1rem/1 var(--fd);color:var(--brass)}
.lg-toc a:hover{color:var(--ink)}

.lg-body{min-width:0}
.lg-body section{scroll-margin-top:112px;padding:0 0 2.6rem}
.lg-body section+section{border-top:1px solid var(--line);padding-top:2.6rem}
.lg-body h2{display:flex;align-items:baseline;gap:1rem;font-size:clamp(1.7rem,2.8vw,2.3rem);line-height:1.12;margin:0 0 1.1rem}
.lg-n{flex:0 0 2.6rem;font:italic 400 1.35rem/1 var(--fd);letter-spacing:.02em;color:var(--brass)}
.lg-body h3{font:italic 500 1.4rem/1.25 var(--fd);margin:1.9rem 0 .55rem}
.lg-body p,.lg-body li{max-width:70ch}
.lg-body ul,.lg-body ol{margin:0 0 1.1em;padding-left:1.3rem}
.lg-body li{margin:0 0 .5em}
.lg-body li::marker{color:var(--brass)}
.lg-body code{font:500 .86em/1 var(--fb);letter-spacing:.04em;padding:0 .1em;border-bottom:1px solid var(--line);white-space:nowrap}

/* company identification and definitions */
.lg-dl{display:grid;grid-template-columns:minmax(8.5rem,max-content) minmax(0,1fr);gap:.2rem 1.6rem;margin:0 0 1.4rem;border-top:1px solid var(--ink)}
.lg-dl dt,.lg-dl dd{padding:.8rem 0;border-bottom:1px solid var(--line)}
.lg-dl dt{font:500 .64rem/1.9 var(--fb);text-transform:uppercase;letter-spacing:.16em;color:var(--brass)}
.lg-dl dd{margin:0;overflow-wrap:anywhere}
.lg-defs{margin:0 0 1rem}
.lg-defs dt{font:500 1.25rem/1.25 var(--fd);margin:1.3rem 0 .25rem}
.lg-defs dt:first-child{margin-top:0}
.lg-defs dd{margin:0;padding-left:1.1rem;border-left:1px solid var(--gold);max-width:66ch}
@media (max-width:560px){.lg-dl{grid-template-columns:1fr;gap:0}.lg-dl dt{padding-bottom:0;border-bottom:0}.lg-dl dd{padding-top:.2rem}}

/* data tables */
.lg-tw{overflow-x:auto;margin:0 0 1.4rem;border-top:1px solid var(--ink)}
.lg-tbl{width:100%;min-width:540px;border-collapse:collapse;font-size:.93rem;line-height:1.55}
.lg-tbl th,.lg-tbl td{text-align:left;vertical-align:top;padding:.85rem 1rem .85rem 0;border-bottom:1px solid var(--line)}
.lg-tbl thead th{font:500 .64rem/1.3 var(--fb);text-transform:uppercase;letter-spacing:.16em;color:var(--brass);border-bottom:1px solid var(--ink)}
.lg-tbl tbody th{font-weight:500}
.lg-tbl tr:last-child td,.lg-tbl tr:last-child th{border-bottom:0}

/* quoted wording and short notes */
.lg-quote{margin:1.3rem 0 1.5rem;padding:.2rem 0 .2rem 1.5rem;max-width:62ch;border-left:1px solid var(--gold);font:italic 400 1.35rem/1.45 var(--fd)}
.lg-quote p{margin:0}
.lg-note{font-size:.92rem;color:var(--muted)}

/* downloads timeline */
.lg-time{list-style:none;margin:.6rem 0 1.6rem;padding:0;border-left:1px solid var(--line)}
.lg-body .lg-time li{position:relative;margin:0;padding:0 0 1.5rem 1.7rem}
.lg-body .lg-time li:last-child{padding-bottom:.2rem}
.lg-time li::before{content:"";position:absolute;left:-4px;top:.45rem;width:7px;height:7px;background:var(--gold)}
.lg-time b{display:block;margin-bottom:.15rem;font:500 .66rem/1.8 var(--fb);text-transform:uppercase;letter-spacing:.16em;color:var(--brass)}

@media (max-width:900px){
  .lg-doc{grid-template-columns:minmax(0,1fr);gap:36px}
  .lg-toc{position:static;max-height:none;border-left:0;border-top:1px solid var(--ink);border-bottom:1px solid var(--line);padding:1.2rem 0}
}
@media print{.lg-toc{display:none}.lg-doc{display:block}}

/* ---------- contact: split, hairlines, no boxes ---------- */
.lg-c-top{padding:clamp(56px,8vw,120px) 0 clamp(40px,5vw,72px)}
.lg-c-top h1{max-width:13ch;margin:0 0 .45em}
.lg-c-top h1 em{font-style:italic}
.lg-c-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);grid-template-areas:"mail chat" "mail post";gap:0 clamp(40px,7vw,120px);padding-bottom:clamp(64px,8vw,120px)}
.lg-c-box{border-top:1px solid var(--ink);padding:1.6rem 0 2.4rem}
.lg-c-box h2{font-size:clamp(1.7rem,2.8vw,2.3rem);margin:0 0 .6rem}
.lg-c-box p:last-child{margin-bottom:0}
.lg-c-tag{display:flex;align-items:center;gap:.8rem;font:500 .68rem/1.3 var(--fb);text-transform:uppercase;letter-spacing:.18em;color:var(--brass);margin:0 0 1.3rem}
.lg-c-tag::before{content:"";flex:0 0 24px;height:1px;background:var(--gold)}
.lg-c-mail{grid-area:mail;display:flex;flex-direction:column}
.lg-c-addr{display:inline-block;align-self:flex-start;margin:0 0 1.6rem;font:italic 400 clamp(1.9rem,4.4vw,3.6rem)/1.08 var(--fd);letter-spacing:.005em;text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:1px;text-underline-offset:.18em;overflow-wrap:anywhere}
.lg-c-mail p{max-width:44ch}
.lg-c-mail .lg-c-foot{margin-top:auto;padding-top:1.3rem;border-top:1px solid var(--line);font:500 .66rem/1.7 var(--fb);text-transform:uppercase;letter-spacing:.14em;color:var(--muted);max-width:none}
.lg-c-chat{grid-area:chat}
.lg-c-post{grid-area:post;border-top-color:var(--line)}
.lg-c-post address{font:500 1.3rem/1.45 var(--fd);font-style:normal;margin:0 0 .9rem}

.lg-c-inc{background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:clamp(64px,8vw,120px) 0}
.lg-c-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:clamp(32px,5vw,88px);align-items:start}
.lg-c-row h2{margin:0 0 .6rem}
.lg-c-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--ink)}
.lg-c-list li{padding:1.5rem clamp(16px,2vw,28px) 1rem;border-left:1px solid var(--line)}
.lg-c-list li:first-child{border-left:0;padding-left:0}
.lg-c-list i{display:block;font:italic 400 2rem/1 var(--fd);color:var(--brass)}
.lg-c-list b{display:block;font:500 1.4rem/1.2 var(--fd);margin:.9rem 0 .45rem}
.lg-c-list span{display:block;font-size:.93rem;line-height:1.6;color:var(--muted)}

.lg-c-next{padding:clamp(64px,8vw,112px) 0 clamp(88px,10vw,140px)}
.lg-c-next h2{margin:0 0 1.4rem}
.lg-c-links{display:flex;flex-wrap:wrap;gap:1rem 1.2rem}

@media (max-width:860px){
  .lg-c-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"mail" "chat" "post"}
  .lg-c-row{grid-template-columns:minmax(0,1fr)}
  .lg-c-list{grid-template-columns:minmax(0,1fr)}
  .lg-c-list li,.lg-c-list li:first-child{border-left:0;border-bottom:1px solid var(--line);padding:1.3rem 0}
}
