/* Grab Smart - long-form legal document pages */

.gsv-legal__meta{
  font-family:var(--mono,var(--body));font-size:.78rem;letter-spacing:.1em;
  text-transform:uppercase;color:var(--slate);
}
.gsv-legal .elementor-widget-text-editor h2,
.gsv-legal h2{
  font-family:var(--display);font-weight:700;font-size:1.45rem;line-height:1.3;
  letter-spacing:-.015em;color:var(--ink);margin:44px 0 14px;
}
.gsv-legal .elementor-widget-text-editor h2:first-child,
.gsv-legal h2:first-child{margin-top:0}
.gsv-legal h3{
  font-family:var(--display);font-weight:600;font-size:1.08rem;line-height:1.4;
  color:var(--ink);margin:26px 0 10px;
}
.gsv-legal p,
.gsv-legal li{
  font-family:var(--body);font-size:1rem;line-height:1.75;color:var(--slate);
}
.gsv-legal p{margin:0 0 16px}
.gsv-legal ul,.gsv-legal ol{margin:0 0 18px;padding-left:22px;display:grid;gap:9px}
.gsv-legal li::marker{color:var(--blue)}
.gsv-legal strong{color:var(--ink);font-weight:600}
.gsv-legal a{color:var(--blue);text-decoration:none;font-weight:500}
.gsv-legal a:hover{text-decoration:underline}

.gsv-legal__callout{
  background:var(--tint2);border:1px solid var(--line);border-left:3px solid var(--blue);
  border-radius:var(--r-lg);padding:22px 26px;margin:26px 0;
}
.gsv-legal__callout p{margin:0;font-size:.96rem}
.gsv-legal__callout p+p{margin-top:10px}

.gsv-legal__toc{
  background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);
  padding:24px 28px;margin-bottom:44px;box-shadow:var(--shadow-sm);
}
.gsv-legal__toc h2{font-size:.8rem!important;letter-spacing:.12em!important;
  text-transform:uppercase;font-family:var(--mono,var(--body))!important;
  color:var(--slate)!important;margin:0 0 14px!important;font-weight:600!important;}
.gsv-legal__toc ol{columns:2;column-gap:34px;padding-left:18px;margin:0;display:block}
.gsv-legal__toc li{margin-bottom:7px;font-size:.93rem;break-inside:avoid}
@media(max-width:640px){.gsv-legal__toc ol{columns:1}}

.gsv-legal__table{width:100%;border-collapse:collapse;margin:8px 0 22px;
  background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}
.gsv-legal__table th,.gsv-legal__table td{
  padding:13px 18px;text-align:left;border-bottom:1px solid var(--line);
  font-size:.93rem;line-height:1.6;color:var(--slate);
}
.gsv-legal__table th{background:var(--tint2);font-family:var(--display);
  font-weight:600;color:var(--ink);font-size:.9rem}
.gsv-legal__table td:first-child{font-weight:600;color:var(--ink)}
.gsv-legal__table tr:last-child td{border-bottom:0}

/* footer legal links */
.gsv-foot-legal .elementor-icon-list-items,.gsv-foot-legal ul{display:flex!important;gap:20px!important;flex-wrap:wrap;margin:0;padding:0;list-style:none}
.gsv-foot-legal a,.gsv-foot-legal .xpro-infolist-title{font-family:var(--body)!important;font-size:.85rem!important;color:rgba(255,255,255,.62)!important;text-decoration:none!important;transition:color .2s ease}
.gsv-foot-legal a:hover,.gsv-foot-legal a:hover .xpro-infolist-title{color:#fff!important}

/* specificity fixes: Elementor resets p margins inside text-editor */
body .gsv-legal .elementor-widget-text-editor p{margin:0 0 16px!important}
body .gsv-legal .elementor-widget-text-editor p:last-child{margin-bottom:0!important}
body .gsv-legal .elementor-widget-text-editor h2{margin:44px 0 14px!important}
body .gsv-legal .elementor-widget-text-editor h2:first-child{margin-top:0!important}
body .gsv-legal .elementor-widget-text-editor h3{margin:26px 0 10px!important}
body .gsv-legal .elementor-widget-text-editor ul,body .gsv-legal .elementor-widget-text-editor ol{margin:0 0 18px!important}
body .gsv-legal .gsv-legal__callout p{margin:0!important}
body .gsv-legal .gsv-legal__callout p+p{margin-top:10px!important}
/* keep each footer legal link on one line */
.gsv-foot-legal li,.gsv-foot-legal a,.gsv-foot-legal .xpro-infolist-title{white-space:nowrap!important}
.gsv-foot-legal .xpro-infolist-wrapper,.gsv-foot-legal .xpro-infolist{display:flex!important;gap:20px!important;flex-wrap:wrap!important}
