
.nav-links{ gap:24px; }
.nav-links a.active{ color:var(--text-main); position:relative; }
.nav-links a.active::after{
  content:""; position:absolute; left:0; right:0; bottom:-9px; height:2px;
  border-radius:2px; background:linear-gradient(90deg,var(--purple),var(--pink));
}

.lg-hero{ position:relative; padding:104px 0 24px; overflow:hidden; }
.lg-hero::before{
  content:""; position:absolute; right:-160px; top:-160px; width:880px; height:700px;
  background:radial-gradient(circle, rgba(255,45,28,.22), transparent 62%);
  pointer-events:none;
}
.lghero-grid{
  position:relative; z-index:2;
  display:grid; grid-template-columns:.78fr 1fr; gap:26px; align-items:center;
}
.lghero-copy h1{
  font-size:clamp(30px,3.3vw,45px); font-weight:700;
  letter-spacing:-.02em; margin:13px 0 15px;
}
.lghero-copy .lead{ max-width:370px; font-size:13.5px; }

.pillars{ display:flex; flex-wrap:wrap; gap:26px; margin-top:26px; }
.pillar{ display:flex; align-items:flex-start; gap:11px; max-width:180px; }
.pl-ico{
  width:34px; height:34px; border-radius:11px; flex:none;
  background:rgba(255,45,28,.15); border:1px solid var(--glass-border);
  display:grid; place-items:center; color:var(--purple-light);
}
.pl-ico svg{ width:18px; height:18px; }
.pillar b{ display:block; font-family:var(--f-display); font-size:12.5px; font-weight:600; margin-bottom:2px; }
.pillar span{ display:block; font-size:11px; color:var(--muted-2); line-height:1.55; }

.scales svg{ width:100%; height:auto; display:block; }

.legal-layout{ display:grid; grid-template-columns:1fr 300px; gap:20px; align-items:start; }
.docs-title{ font-size:clamp(19px,2vw,24px); font-weight:600; margin-bottom:6px; }
.panel-sub{ color:var(--muted-2); font-size:12px; line-height:1.7; margin-bottom:18px; }

.ldocs{ display:flex; flex-direction:column; gap:13px; }
.ldoc{
  display:flex; align-items:center; gap:16px;
  padding:18px 20px; border-radius:var(--radius);
  background:var(--glass-bg); border:1px solid var(--line);
  transition:border-color .25s ease, transform .25s ease;
}
.ldoc:hover{ border-color:rgba(255,255,255,.21); transform:translateY(-3px); }
.ld-ico{
  width:52px; height:52px; border-radius:14px; flex:none;
  background:rgba(255,45,28,.14); border:1px solid var(--glass-border);
  display:grid; place-items:center; color:var(--purple-light);
}
.ld-ico svg{ width:26px; height:26px; }
.ld-ico.big{ width:58px; height:58px; border-radius:16px; }
.ld-ico.big svg{ width:29px; height:29px; }
.ld-text{ flex:1; min-width:0; }
.ld-text h3{ font-size:15.5px; font-weight:600; margin-bottom:5px; }
.ld-text h3 a:hover{ color:var(--purple-light); }
.ld-text p{ color:var(--muted-2); font-size:11.5px; line-height:1.65; }
.ld-act{ display:flex; flex-direction:column; align-items:flex-end; gap:9px; flex:none; }
.ld-date{ font-size:10.5px; color:var(--muted-2); white-space:nowrap; }

.card-box h3{ display:flex; align-items:center; gap:9px; }
.cb-ico{
  width:26px; height:26px; border-radius:8px; flex:none;
  background:rgba(255,45,28,.16); border:1px solid var(--glass-border);
  display:grid; place-items:center; color:var(--purple-light);
}
.cb-ico svg{ width:14px; height:14px; }
.cb-text{ color:var(--muted-2); font-size:11.5px; line-height:1.72; margin-bottom:14px; }

.quick-links a{
  display:flex; align-items:center; justify-content:space-between; gap:10px;
  padding:9px 0; font-size:12px; color:var(--muted);
  border-bottom:1px solid var(--line-soft);
  transition:color .2s ease, padding-left .2s ease;
}
.quick-links a:last-child{ border-bottom:none; }
.quick-links a:hover{ color:var(--purple-light); padding-left:4px; }
.quick-links a.on{ color:var(--purple-light); font-weight:500; }
.qchev{
  width:14px; height:14px; flex:none; position:relative;
}
.qchev::before{
  content:""; position:absolute; left:3px; top:50%;
  width:5px; height:5px; margin-top:-3px;
  border-right:1.5px solid currentColor; border-top:1.5px solid currentColor;
  transform:rotate(45deg); opacity:.6;
}
.quick-links.compact a{ padding:8px 0; font-size:11.5px; }

.cb-list li{
  position:relative; padding-left:24px;
  color:var(--text-body); font-size:11.5px; line-height:2.15;
}
.cb-list li::before{
  content:""; position:absolute; left:0; top:8px;
  width:15px; height:15px; border-radius:50%;
  background:linear-gradient(145deg,var(--accent),var(--accent-strong));
}
.cb-list li::after{
  content:""; position:absolute; left:4.2px; top:12px;
  width:5px; height:2.6px;
  border-left:1.6px solid #fff; border-bottom:1.6px solid #fff;
  transform:rotate(-45deg);
}

.btn.full{ width:100%; justify-content:center; }
.btn.mt{ margin-top:9px; }
.cb-mail{
  display:flex; align-items:center; gap:8px; margin-top:13px;
  font-size:11.5px; color:var(--muted);
}
.cb-mail svg{ width:15px; height:15px; color:var(--purple-light); flex:none; }
.cb-mail:hover{ color:var(--purple-light); }

.dl-box{ text-align:center; }
.dl-ico{
  width:38px; height:38px; margin:0 auto 12px; border-radius:11px;
  background:rgba(255,45,28,.14); border:1px solid var(--glass-border);
  display:grid; place-items:center; color:var(--purple-light);
}
.dl-ico svg{ width:19px; height:19px; }
.dl-box p{ color:var(--muted-2); font-size:11.5px; line-height:1.7; margin-bottom:14px; }
.dl-arrow{ width:15px; height:15px; }

.legal-cta{
  position:relative; overflow:hidden;
  display:flex; align-items:center; gap:20px; flex-wrap:wrap;
  padding:22px 28px; border-radius:var(--radius-lg);
  background:
    radial-gradient(circle at 88% 40%, rgba(255,45,28,.2), transparent 58%),
    var(--glass-bg);
  border:1px solid var(--line);
}
.lc-ico{
  width:52px; height:52px; border-radius:15px; flex:none;
  background:rgba(255,45,28,.16); border:1px solid var(--glass-border);
  display:grid; place-items:center; color:var(--purple-light);
}
.lc-ico svg{ width:26px; height:26px; }
.lc-copy{ flex:1; min-width:220px; position:relative; z-index:2; }
.lc-copy h2{ font-size:clamp(17px,1.8vw,21px); font-weight:600; margin-bottom:4px; }
.lc-copy p{ color:var(--muted-2); font-size:12px; }
.legal-cta .btn{ position:relative; z-index:2; }
.lc-wave{ position:absolute; right:0; bottom:0; width:300px; pointer-events:none; }

.legal-doc{ display:grid; grid-template-columns:1fr 280px; gap:24px; align-items:start; }
.ldoc-main{ min-width:0; }
.ldoc-head{ display:flex; align-items:center; gap:16px; margin-bottom:14px; }
.ldoc-head .art-title{ margin:0 0 5px; font-size:clamp(24px,2.8vw,34px); }
.ldoc-meta{ font-size:12px; color:var(--muted-2); }
.ldoc-blurb{
  padding-bottom:22px; margin-bottom:6px;
  border-bottom:1px solid var(--line);
  color:var(--muted); font-size:13.5px; line-height:1.75;
}
.legal-doc .art-body{ font-size:14px; }
.legal-doc .art-body h2{ font-size:20px; margin:30px 0 12px; }
.legal-doc .art-body h3{ font-size:16px; margin:22px 0 10px; }
.legal-doc .side{ position:sticky; top:88px; display:flex; flex-direction:column; gap:16px; }

.legal-bottom{
  display:flex; align-items:center; justify-content:space-between;
  gap:16px; flex-wrap:wrap;
}
.legal-bottom p{ text-align:left; }
.foot-links{ display:flex; align-items:center; gap:10px; font-size:11.5px; }
.foot-links a{ color:var(--muted-2); }
.foot-links a:hover{ color:var(--purple-light); }
.foot-links i{ color:var(--text-body); font-style:normal; }

@media print{
  .nav, .side, .art-nav, .footer, .legal-cta, .crumb{ display:none !important; }
  body{ background:#fff; color:#111; }
  .art-body, .ldoc-blurb, .art-body p, .art-body li{ color:#222; }
  .art-body h2, .art-body h3, .art-title{ color:#000; }
  .legal-doc{ grid-template-columns:1fr; }
  .art-head{ padding-top:0; }
  .ld-ico{ border-color:#ccc; color:#222; background:none; }
  .art-note{ border-color:#bbb; background:#f7f7f8; color:#222; }
  a{ color:#111 !important; }
}

@media (max-width:1180px){
  .nav-links{ gap:18px; }
  .nav-links a{ font-size:13px; }
}

@media (max-width:1080px){
  .nav-links{ gap:6px; }
  .lghero-grid{ grid-template-columns:1fr; gap:26px; }
  .legal-layout,
  .legal-doc{ grid-template-columns:1fr; }
  .legal-doc .side,
  .legal-layout .side{ position:static; }
  .lc-wave{ opacity:.5; }
}

@media (max-width:820px){
  .lg-hero{ padding-top:92px; }
  .ldoc{ flex-wrap:wrap; }
  .ld-act{ width:100%; flex-direction:row; align-items:center; justify-content:space-between; }
  .ldoc-head{ align-items:flex-start; }
}

@media (max-width:640px){
  .pillars{ gap:16px; }
  .pillar{ flex:1 1 44%; max-width:none; }
  .legal-cta{ padding:20px 18px; }
  .legal-cta .btn{ width:100%; justify-content:center; }
  .legal-bottom{ justify-content:center; }
  .legal-bottom p{ text-align:center; width:100%; }
  .ld-ico.big{ width:48px; height:48px; }
  .ld-ico.big svg{ width:24px; height:24px; }
}
