/* Shared styles for Ansys Digital legal pages. Uses design-system tokens from styles.css. */
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:var(--surface-page,#fff);color:var(--text-primary,#0A0D16);
  font-family:var(--font-body);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased;
}
a{color:var(--brand);text-decoration:none}
a:hover{color:var(--brand-hover,#0b39a0);text-decoration:underline}

/* Header */
.lg-head{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.82);backdrop-filter:blur(12px);border-bottom:1px solid var(--border-subtle)}
.lg-head-in{max-width:960px;margin:0 auto;padding:14px var(--gutter,24px);display:flex;align-items:center;justify-content:space-between;gap:16px}
.lg-head img{height:34px;width:auto;display:block}
.lg-back{display:inline-flex;align-items:center;gap:7px;font-family:var(--font-mono);font-size:12.5px;font-weight:600;letter-spacing:.02em;color:var(--text-secondary)}
.lg-back:hover{color:var(--brand);text-decoration:none}

/* Hero band */
.lg-hero{background:var(--surface-subtle,#F6F8FB);border-bottom:1px solid var(--border-subtle)}
.lg-hero-in{max-width:960px;margin:0 auto;padding:clamp(2.4rem,5vw,4rem) var(--gutter,24px)}
.lg-eyebrow{font-family:var(--font-mono);font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--brand)}
.lg-hero h1{margin:.5rem 0 0;font-family:var(--font-display);font-weight:800;font-size:clamp(2rem,4.5vw,3rem);line-height:1.08;letter-spacing:var(--tracking-tight,-.01em)}
.lg-meta{margin-top:16px;display:flex;flex-wrap:wrap;gap:8px 20px;font-family:var(--font-mono);font-size:12.5px;color:var(--text-muted)}
.lg-meta b{color:var(--text-secondary);font-weight:600}

/* Body layout */
.lg-wrap{max-width:960px;margin:0 auto;padding:clamp(2rem,4vw,3.5rem) var(--gutter,24px) 5rem;display:grid;grid-template-columns:220px 1fr;gap:clamp(2rem,4vw,3.5rem);align-items:start}
.lg-toc{position:sticky;top:80px;font-size:13.5px}
.lg-toc-h{font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-bottom:12px}
.lg-toc ol{list-style:none;margin:0;padding:0;counter-reset:toc;display:flex;flex-direction:column;gap:2px}
.lg-toc li{counter-increment:toc}
.lg-toc a{display:block;padding:6px 10px;border-radius:8px;color:var(--text-secondary);line-height:1.35}
.lg-toc a:hover{background:var(--surface-subtle);color:var(--brand);text-decoration:none}
.lg-toc a::before{content:counter(toc) ". ";color:var(--text-muted);font-family:var(--font-mono);font-size:11.5px}

.lg-content{min-width:0}
.lg-intro{font-size:17px;color:var(--text-secondary);border-left:3px solid var(--brand);padding:2px 0 2px 18px;margin:0 0 2.5rem}
.lg-content section{margin:0 0 2.4rem;scroll-margin-top:84px}
.lg-content h2{font-family:var(--font-display);font-weight:700;font-size:clamp(1.25rem,2.4vw,1.6rem);letter-spacing:var(--tracking-tight,-.01em);margin:0 0 .9rem;display:flex;gap:12px;align-items:baseline}
.lg-content h2 .n{font-family:var(--font-mono);font-size:14px;font-weight:700;color:var(--brand);flex:none}
.lg-content h3{font-family:var(--font-display);font-weight:700;font-size:1.05rem;margin:1.6rem 0 .6rem}
.lg-content p{margin:0 0 1rem;text-wrap:pretty}
.lg-content ul,.lg-content ol{margin:0 0 1rem;padding-left:1.3rem}
.lg-content li{margin:0 0 .5rem;text-wrap:pretty}
.lg-content strong{color:var(--text-primary)}
.lg-callout{background:var(--surface-subtle);border:1px solid var(--border-subtle);border-radius:var(--radius-md,14px);padding:18px 20px;margin:0 0 1.4rem;font-size:14.5px;color:var(--text-secondary)}
.lg-callout b{color:var(--text-primary)}
.lg-caps{background:var(--blue-50,#eef3ff);border:1px solid var(--border-subtle);border-radius:var(--radius-md,14px);padding:18px 20px;margin:1.2rem 0;font-size:13.5px;line-height:1.6;text-transform:uppercase;letter-spacing:.02em;font-family:var(--font-mono);color:var(--text-secondary)}
.lg-contact-card{border:1px solid var(--border-subtle);border-radius:var(--radius-lg,20px);padding:22px 24px;background:#fff;box-shadow:var(--shadow-sm)}
.lg-contact-card div{margin:.2rem 0;font-size:14.5px}

/* Footer */
.lg-foot{background:var(--blue-800,#0A2A7A);color:rgba(255,255,255,.62)}
.lg-foot-in{max-width:960px;margin:0 auto;padding:2.4rem var(--gutter,24px);display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;font-size:13px}
.lg-foot a{color:rgba(255,255,255,.78)}
.lg-foot nav{display:flex;flex-wrap:wrap;gap:18px}

@media(max-width:760px){
  .lg-wrap{grid-template-columns:1fr;gap:1.5rem}
  .lg-toc{position:static;order:-1;background:var(--surface-subtle);border:1px solid var(--border-subtle);border-radius:12px;padding:14px 16px}
}
