/* Shared legal-page presentation for the six legal pages: Disclaimer, Privacy Policy and Terms
 * of Use, plus the three Complianz-generated Cookie Policy documents.
 * The common site-main scope preserves the former Disclaimer cascade weight without affecting the global shell.
 */
:root {

}

/* Hello Elementor caps .site-main at its own 1140px container - but only on a page that is not
 * an Elementor document: `body:not([class*=elementor-page-]) .site-main` in theme.css. The three
 * Elementor legal pages escape it through their elementor-page-<id> class and their hero runs
 * edge to edge. The Cookie Policy pages are plain WordPress pages, so on those the cap applied
 * and the dark hero band stopped 1140px wide, inset and centred, instead of full bleed.
 * Lift it exactly where the theme applies it. The measured column is not lost with it: every
 * band's content sits in a .container, which holds the same --maxw as the other legal pages. */
body.ubind-legal-page:not([class*="elementor-page-"]) .site-main {
max-width: none;
padding-inline: 0
}

/* Complianz styles its generated documents through `#cmplz-document ...` selectors, and an id
 * outranks every class in this file, so on the Cookie Policy pages its own typography won and
 * the legal look stopped at the wrapper: 800px wide, 14px body copy, 22px headings.
 * Restate only the properties it takes, at a specificity that carries the id.
 *
 * Scoped to the direct children of the sections ubind-consent builds, which is the prose. Its
 * own components - the .cmplz-dropdown accordions, the per-purpose cookie tables, the consent
 * form - are nested deeper and keep Complianz's styling, because that is what should style them. */
body.ubind-legal-page #cmplz-document {
max-width: none
}

body.ubind-legal-page #cmplz-document .legal-section>h2 {
font-size: clamp(20px, 2.5vw, 27px);
margin-bottom: 14px;
text-align: start
}

body.ubind-legal-page #cmplz-document .legal-content>p,
body.ubind-legal-page #cmplz-document .legal-section>p {
color: var(--ink-700);
line-height: 1.75;
margin-bottom: 15px;
font-size: 15.5px;
text-align: start
}

body.ubind-legal-page #cmplz-document .legal-section>ul,
body.ubind-legal-page #cmplz-document .legal-section>ol {
margin: 0 0 16px;
padding-left: 22px;
color: var(--ink-700);
line-height: 1.7;
font-size: 15.5px
}

body.ubind-legal-page #cmplz-document .legal-section>ul>li,
body.ubind-legal-page #cmplz-document .legal-section>ol>li {
margin-bottom: 8px;
text-align: start
}

.site-main * {
box-sizing: border-box;
margin: 0;
padding: 0
}

html {
scroll-behavior: smooth;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale
}

body.ubind-legal-page {
font-family: var(--font-montserrat);
color: var(--ink-900);
background: var(--paper);
line-height: 1.55;
font-size: 16px;
overflow-x: clip
}

.site-main img,
.site-main svg {
display: block;
max-width: 100%
}

.site-main a {
color: inherit;
text-decoration: none
}

.site-main button {
font: inherit;
cursor: pointer;
border: none;
background: none;
color: inherit
}

.site-main ::selection {
background: var(--emerald-500);
color: #fff
}

.site-main .container {
width: 100%;
max-width: var(--maxw);
margin: 0 auto;
padding: 0 32px
}

@media (max-width:600px) {
.site-main .container {
padding: 0 20px
}
}

.site-main .block {
position: relative
}

.site-main .eyebrow {
display: inline-flex;
align-items: center;
gap: 10px;
font-family: var(--font-montserrat);
font-size: 12px;
font-weight: 500;
letter-spacing: .14em;
text-transform: uppercase;
color: var(--emerald-600)
}

.site-main .eyebrow .dot {
width: 6px;
height: 6px;
background: var(--emerald-500);
border-radius: 50%;
box-shadow: 0 0 0 4px rgba(31, 166, 122, .18);
animation: pulse 2.4s ease-in-out infinite
}

@keyframes pulse {


0%,
100% {
box-shadow: 0 0 0 4px rgba(31, 166, 122, .18)
}

50% {
box-shadow: 0 0 0 9px rgba(31, 166, 122, .04)
}
}

.site-main .h-display {
font-family: var(--font-soho-gothic-pro);
font-weight: 400;
letter-spacing: -.028em;
line-height: 1.05;
font-variation-settings: "opsz" 144
}

.site-main .btn {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 10px;
padding: 14px 22px;
border-radius: 999px;
font-weight: 500;
font-size: 15px;
letter-spacing: -.005em;
white-space: nowrap;
position: relative;
overflow: hidden;
transition: transform .25s var(--ease-out), box-shadow .25s, background .2s, color .2s, border-color .2s
}

.site-main .btn-primary {
background: var(--emerald-500);
color: #fff;
box-shadow: 0 1px 0 rgba(255, 255, 255, .18) inset, 0 10px 30px -8px rgba(31, 166, 122, .5)
}

.site-main .btn-primary:hover {
background: var(--emerald-600);
transform: translateY(-2px);
box-shadow: 0 1px 0 rgba(255, 255, 255, .18) inset, 0 18px 40px -10px rgba(31, 166, 122, .6)
}

.site-main .btn-ghost {
background: rgba(255, 255, 255, .05);
color: #fff;
border: 1px solid rgba(255, 255, 255, .14);
backdrop-filter: blur(10px);
-webkit-backdrop-filter: blur(10px)
}

.site-main .btn-ghost:hover {
background: rgba(255, 255, 255, .12);
transform: translateY(-2px)
}

.site-main .btn-outline {
background: transparent;
color: var(--ink-900);
border: 1px solid var(--ink-200)
}

.site-main .btn-outline:hover {
border-color: var(--ink-900);
transform: translateY(-2px)
}

.site-main .btn-lg {
padding: 16px 28px;
font-size: 16px
}

.site-main .arrow-svg {
transition: transform .25s var(--ease-out)
}

.site-main .btn:hover .arrow-svg {
transform: translateX(4px)
}

.site-main .nav-wrap {
position: fixed;
top: 18px;
left: 0;
right: 0;
z-index: 100;
display: flex;
justify-content: center;
pointer-events: none;
transition: transform .4s var(--ease-out), opacity .3s
}

.site-main .nav-wrap.hidden {
transform: translateY(-140%);
opacity: 0
}

.site-main .nav {
pointer-events: auto;
position: relative;
display: flex;
align-items: center;
gap: 8px;
padding: 10px 14px 10px 22px;
background: rgba(11, 17, 15, .6);
backdrop-filter: blur(20px) saturate(140%);
-webkit-backdrop-filter: blur(20px) saturate(140%);
border: 1px solid rgba(255, 255, 255, .08);
border-radius: 999px;
box-shadow: 0 20px 60px -20px rgba(0, 0, 0, .4);
transition: background .3s
}

.site-main .nav.scrolled {
background: rgba(5, 8, 7, .85)
}

.site-main .nav-logo {
display: flex;
align-items: center;
gap: 10px;
color: #fff;
font-weight: 600;
font-size: 17px;
letter-spacing: -.02em;
padding-right: 6px;
font-family: var(--font-montserrat)
}

.site-main .nav-logo .logo-mark {
width: 30px;
height: 30px
}

.site-main .nav-logo .u {
color: var(--emerald-400)
}

.site-main .persona-pill {
display: inline-flex;
align-items: center;
gap: 6px;
font-family: var(--font-montserrat);
font-size: 10px;
background: rgba(31, 166, 122, .18);
border: 1px solid rgba(31, 166, 122, .3);
color: var(--emerald-300);
padding: 4px 10px;
border-radius: 999px;
letter-spacing: .08em;
text-transform: uppercase;
margin-left: 4px
}

.site-main .nav-links {
display: flex;
align-items: center;
gap: 2px;
margin: 0 6px 0 14px
}

.site-main .nav-link {
color: rgba(255, 255, 255, .78);
font-size: 14px;
padding: 8px 13px;
border-radius: 999px;
transition: background .2s, color .2s
}

.site-main .nav-link:hover {
color: #fff;
background: rgba(255, 255, 255, .08)
}

.site-main .nav-link.active {
color: var(--emerald-300);
background: rgba(31, 166, 122, .14)
}

.site-main .nav-cta {
font-size: 14px;
padding: 10px 18px
}

.site-main .nav-toggle-cb {
display: none
}

.site-main .nav-burger {
display: none;
width: 42px;
height: 42px;
border-radius: 50%;
cursor: pointer;
align-items: center;
justify-content: center;
flex-direction: column;
gap: 5px;
background: rgba(255, 255, 255, .05);
border: 1px solid rgba(255, 255, 255, .12);
margin-left: 4px
}

.site-main .nav-burger span {
display: block;
width: 18px;
height: 2px;
background: #fff;
border-radius: 2px;
transition: transform .3s var(--ease-out), opacity .2s
}

.site-main .nav-toggle-cb:checked~.nav-burger span:nth-child(1) {
transform: translateY(7px) rotate(45deg)
}

.site-main .nav-toggle-cb:checked~.nav-burger span:nth-child(2) {
opacity: 0
}

.site-main .nav-toggle-cb:checked~.nav-burger span:nth-child(3) {
transform: translateY(-7px) rotate(-45deg)
}

@media (max-width:920px) {
.site-main .nav {
padding: 8px 8px 8px 16px
}

.site-main .nav-burger {
display: flex
}

.site-main .nav-links {
position: absolute;
top: calc(100% + 12px);
right: 0;
left: 0;
flex-direction: column;
align-items: stretch;
gap: 4px;
margin: 0;
padding: 10px;
background: rgba(8, 17, 14, .92);
backdrop-filter: blur(20px) saturate(140%);
-webkit-backdrop-filter: blur(20px) saturate(140%);
border: 1px solid rgba(255, 255, 255, .08);
border-radius: 18px;
box-shadow: 0 30px 60px -20px rgba(0, 0, 0, .6);
opacity: 0;
transform: translateY(-10px) scale(.98);
pointer-events: none;
transition: opacity .25s var(--ease-out), transform .25s var(--ease-out);
transform-origin: top
}

.site-main .nav-link {
padding: 12px 14px;
font-size: 15px
}

.site-main .nav-toggle-cb:checked~.nav-links {
opacity: 1;
transform: translateY(0) scale(1);
pointer-events: auto
}
}

.site-main .hero {
position: relative;
background: var(--ink-1000);
color: #fff;
overflow: hidden;
isolation: isolate
}

.site-main .hero-mesh {
position: absolute;
inset: 0;
z-index: -3;
background: radial-gradient(70% 60% at 18% 20%, rgba(31, 166, 122, .45) 0%, transparent 60%), radial-gradient(60% 50% at
88% 30%, rgba(105, 224, 176, .22) 0%, transparent 60%), radial-gradient(80% 70% at 50% 100%, rgba(18, 138, 95, .32) 0%,
transparent 70%), linear-gradient(180deg, #061a14 0%, #08231b 60%, #050d0b 100%);
animation: mesh-shift 18s ease-in-out infinite alternate
}

@keyframes mesh-shift {

0% {
filter: hue-rotate(0deg) saturate(1)
}

100% {
filter: hue-rotate(-8deg) saturate(1.15)
}
}

.site-main .hero-grid-bg {
position: absolute;
inset: 0;
z-index: -2;
background-image: linear-gradient(rgba(255, 255, 255, .04) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255,
255, .04) 1px, transparent 1px);
background-size: 64px 64px;
-webkit-mask-image: radial-gradient(ellipse 90% 70% at 50% 30%, #000 30%, transparent 80%);
mask-image: radial-gradient(ellipse 90% 70% at 50% 30%, #000 30%, transparent 80%);
animation: grid-pan 30s linear infinite
}

@keyframes grid-pan {

from {
background-position: 0 0
}

to {
background-position: 64px 64px
}
}

.site-main .glow-orb {
position: absolute;
border-radius: 50%;
filter: blur(60px);
pointer-events: none;
z-index: -1
}

.site-main .orb-1 {
width: 520px;
height: 520px;
right: -120px;
top: 14%;
background: radial-gradient(circle, rgba(31, 166, 122, .5) 0%, transparent 60%);
animation: drift1 14s ease-in-out infinite alternate
}

.site-main .orb-2 {
width: 380px;
height: 380px;
left: -80px;
bottom: 2%;
background: radial-gradient(circle, rgba(105, 224, 176, .35) 0%, transparent 60%);
animation: drift2 16s ease-in-out infinite alternate
}

@keyframes drift1 {

to {
transform: translate(-40px, 40px)
}
}

@keyframes drift2 {

to {
transform: translate(40px, -30px)
}
}

.site-main .hero-eyebrow {
color: var(--emerald-300);
margin-bottom: 22px
}

.site-main .hero-sub {
color: rgba(255, 255, 255, .72);
font-size: clamp(16px, 1.5vw, 19px);
max-width: 560px;
margin-top: 22px
}

.site-main .hero-ctas {
display: flex;
gap: 12px;
flex-wrap: wrap;
margin-top: 34px
}

.site-main .hero-chips {
display: flex;
flex-wrap: wrap;
gap: 8px;
margin-top: 34px
}

.site-main .hero-chip {
font-family: var(--font-montserrat);
font-size: 11px;
letter-spacing: .06em;
text-transform: uppercase;
color: rgba(255, 255, 255, .7);
background: rgba(255, 255, 255, .04);
border: 1px solid rgba(255, 255, 255, .1);
padding: 7px 13px;
border-radius: 999px
}

.site-main .section-head {
max-width: 760px;
margin-bottom: 48px
}

.site-main .section-head h2 {
font-family: var(--font-soho-gothic-pro);
font-weight: 400;
letter-spacing: -.02em;
font-size: clamp(32px, 4.4vw, 52px);
margin-top: 16px;
color: var(--ink-1000);
line-height: 1.02
}

.site-main .section-head p {
color: var(--ink-500);
margin-top: 16px;
font-size: 16.5px
}

.site-main .final-cta {
background: linear-gradient(180deg, var(--ink-1000), var(--emerald-950));
color: #fff;
text-align: center;
position: relative;
overflow: hidden
}

.site-main .final-cta::before {
content: "";
position: absolute;
inset: 0;
background: radial-gradient(60% 40% at 50% 18%, rgba(31, 166, 122, .38) 0%, transparent 60%), radial-gradient(40% 30% at
28% 82%, rgba(31, 166, 122, .22) 0%, transparent 60%);
pointer-events: none
}

.site-main .final-cta>.container {
position: relative;
z-index: 1
}

.site-main .final-cta h2 {
font-family: var(--font-soho-gothic-pro);
font-weight: 400;
letter-spacing: -.02em;
font-size: clamp(30px, 4.4vw, 56px);
line-height: 1.04;
max-width: 20ch;
margin: 0 auto;
color: #fff
}

.site-main .final-cta p {
color: rgba(255, 255, 255, .66);
margin: 18px auto 0;
max-width: 60ch;
font-size: 16.5px
}

.site-main .final-cta .ctas {
display: flex;
gap: 12px;
justify-content: center;
flex-wrap: wrap;
margin-top: 32px
}

.site-main .final-cta .phone {
margin-top: 24px;
font-family: var(--font-montserrat);
font-size: 13px;
color: rgba(255, 255, 255, .55)
}

.site-main .final-cta .phone a {
color: var(--emerald-300)
}

.site-main .final-cta .btn-outline {
color: #fff;
border-color: rgba(255, 255, 255, .25)
}

.site-main .final-cta .btn-outline:hover {
border-color: #fff
}

.site-main footer {
background: #050807;
color: rgba(255, 255, 255, .7);
padding: 80px 0 40px;
border-top: 1px solid rgba(255, 255, 255, .06)
}

.site-main .footer-grid {
display: grid;
grid-template-columns: 1.4fr 1fr 1fr 1fr;
gap: 40px;
margin-bottom: 60px
}

@media (max-width:900px) {
.site-main .footer-grid {
grid-template-columns: 1fr 1fr
}
}

@media (max-width:540px) {
.site-main .footer-grid {
grid-template-columns: 1fr
}
}

.site-main .footer-brand {
max-width: 340px
}

.site-main .footer-brand .logo {
display: flex;
align-items: center;
gap: 10px;
color: #fff;
font-weight: 600;
font-size: 22px;
letter-spacing: -.02em;
margin-bottom: 16px
}

.site-main .footer-brand .tag {
font-family: var(--font-montserrat);
font-size: 12px;
color: var(--emerald-400);
letter-spacing: .1em;
text-transform: uppercase
}

.site-main .footer-brand p {
font-size: 14.5px;
line-height: 1.6;
margin-top: 16px
}

.site-main .footer-social {
display: flex;
gap: 10px;
margin-top: 20px
}

.site-main .footer-social a {
width: 38px;
height: 38px;
border-radius: 10px;
display: grid;
place-items: center;
background: rgba(255, 255, 255, .04);
border: 1px solid rgba(255, 255, 255, .1);
color: rgba(255, 255, 255, .7);
transition: transform .25s var(--ease-out), color .25s, border-color .25s, background .25s
}

.site-main .footer-social a:hover {
transform: translateY(-3px);
color: var(--emerald-300);
border-color: rgba(31, 166, 122, .4);
background: rgba(31, 166, 122, .1)
}

.site-main .footer-col h5 {
color: #fff;
font-size: 13px;
font-family: var(--font-montserrat);
letter-spacing: .1em;
text-transform: uppercase;
margin-bottom: 18px
}

.site-main .footer-col ul {
list-style: none
}

.site-main .footer-col li {
padding: 6px 0
}

.site-main .footer-col a {
color: rgba(255, 255, 255, .6);
font-size: 14px;
transition: color .2s
}

.site-main .footer-col a:hover {
color: var(--emerald-400)
}

.site-main .footer-bottom {
display: flex;
justify-content: space-between;
align-items: center;
padding-top: 30px;
border-top: 1px solid rgba(255, 255, 255, .06);
font-size: 13px;
color: rgba(255, 255, 255, .4);
flex-wrap: wrap;
gap: 16px
}

.site-main .footer-bottom a {
color: rgba(255, 255, 255, .5);
margin-left: 18px;
transition: color .2s
}

.site-main .footer-bottom a:hover {
color: #fff
}

.site-main .reveal.reveal-armed:not(.visible) {
opacity: 0;
transform: translateY(26px);
transition: opacity .7s var(--ease-out), transform .7s var(--ease-out)
}

.site-main .reveal.visible {
opacity: 1;
transform: translateY(0)
}

.site-main .reveal-stagger.reveal-armed:not(.visible)>* {
opacity: 0;
transform: translateY(26px);
transition: opacity .6s var(--ease-out), transform .6s var(--ease-out)
}

.site-main .reveal-stagger.visible>* {
opacity: 1;
transform: translateY(0)
}

.site-main .reveal-stagger.visible>*:nth-child(1) {
transition-delay: 0s
}

.site-main .reveal-stagger.visible>*:nth-child(2) {
transition-delay: .06s
}

.site-main .reveal-stagger.visible>*:nth-child(3) {
transition-delay: .12s
}

.site-main .reveal-stagger.visible>*:nth-child(4) {
transition-delay: .18s
}

.site-main .reveal-stagger.visible>*:nth-child(5) {
transition-delay: .24s
}

.site-main .reveal-stagger.visible>*:nth-child(6) {
transition-delay: .3s
}

@media (prefers-reduced-motion:reduce) {
.site-main *,
.site-main *::before,
.site-main *::after {
animation-duration: .001ms !important;
animation-iteration-count: 1 !important;
transition-duration: .001ms !important;
scroll-behavior: auto !important
}

.site-main .reveal,
.site-main .reveal-stagger>* {
opacity: 1;
transform: none
}
}

.site-main .legal-hero {
position: relative;
color: #fff;
overflow: hidden;
isolation: isolate;
background:
radial-gradient(60% 75% at 12% 0%, rgba(31, 166, 122, .42), transparent 60%),
radial-gradient(55% 60% at 92% 12%, rgba(105, 224, 176, .20), transparent 62%),
linear-gradient(180deg, #061a14 0%, #08231b 58%, #050d0b 100%);
}

.site-main .legal-hero::after {
content: "";
position: absolute;
inset: 0;
z-index: -1;
background-image: linear-gradient(rgba(255, 255, 255, .045) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255,
255, .045) 1px, transparent 1px);
background-size: 64px 64px;
-webkit-mask-image: radial-gradient(ellipse 82% 70% at 50% 16%, #000 30%, transparent 82%);
mask-image: radial-gradient(ellipse 82% 70% at 50% 16%, #000 30%, transparent 82%);
}

.site-main .legal-hero .eyebrow {
color: var(--emerald-300);
}

.site-main .legal-hero h1 {
font-family: var(--font-soho-gothic-pro);
font-weight: 400;
letter-spacing: -.02em;
line-height: 1.0;
font-size: clamp(38px, 5.4vw, 64px);
margin-top: 18px;
}

.site-main .legal-hero .updated {
display: inline-flex;
align-items: center;
gap: 9px;
margin-top: 24px;
font-family: var(--font-montserrat);
font-size: 12px;
letter-spacing: .05em;
color: rgba(255, 255, 255, .8);
background: rgba(255, 255, 255, .06);
border: 1px solid rgba(255, 255, 255, .14);
padding: 7px 15px;
border-radius: 999px;
}

.site-main .legal-hero .updated .dot {
width: 6px;
height: 6px;
border-radius: 50%;
background: var(--emerald-300);
box-shadow: 0 0 0 4px rgba(105, 224, 176, .18);
}

.site-main .legal-hero .lead {
color: rgba(255, 255, 255, .74);
max-width: 68ch;
margin-top: 22px;
font-size: 16.5px;
line-height: 1.66;
}

.site-main .legal-body {
background: var(--paper);
}

.site-main .legal-layout {
display: grid;
grid-template-columns: 248px 1fr;
gap: 56px;
align-items: start;
}

@media (max-width:900px) {
.site-main .legal-layout {
grid-template-columns: 1fr;
gap: 0;
}
}

.site-main .legal-toc {
position: sticky;
top: 104px;
align-self: start;
max-height: calc(100vh - 132px);
overflow-y: auto;
overscroll-behavior: contain;
scrollbar-gutter: stable;
padding-right: 4px;
}

@media (max-width:900px) {
.site-main .legal-toc {
display: none;
}
}

.site-main .legal-toc .toc-label {
font-family: var(--font-montserrat);
font-size: 11px;
letter-spacing: .16em;
text-transform: uppercase;
color: var(--emerald-600);
margin-bottom: 14px;
padding-left: 12px;
}

.site-main .legal-toc ol {
list-style: none;
display: flex;
flex-direction: column;
gap: 1px;
}

.site-main .legal-toc a {
display: flex;
gap: 9px;
padding: 7px 12px;
border-radius: 8px;
font-size: 13px;
color: var(--ink-500);
border-left: 2px solid transparent;
line-height: 1.35;
transition: color .2s, background .2s, border-color .2s;
}

.site-main .legal-toc a:hover {
color: var(--emerald-700);
background: var(--emerald-50);
}

.site-main .legal-toc a.active {
color: var(--emerald-700);
background: var(--emerald-50);
border-left-color: var(--emerald-500);
font-weight: 500;
}

.site-main .legal-toc .toc-num {
font-family: var(--font-montserrat);
font-size: 11px;
color: var(--emerald-600);
flex-shrink: 0;
}

.site-main .legal-content {
max-width: 790px;
background: #fff;
border: 1px solid var(--ink-100);
border-radius: var(--r-lg);
padding: clamp(26px, 4vw, 52px);
box-shadow: 0 30px 60px -42px rgba(31, 166, 122, .2);
}

.site-main .legal-toc-m {
display: none;
}

@media (max-width:900px) {
.site-main .legal-toc-m {
display: block;
margin-bottom: 28px;
border: 1px solid var(--ink-100);
border-radius: var(--r-md);
background: var(--paper);
overflow: hidden;
}

.site-main .legal-toc-m summary {
cursor: pointer;
list-style: none;
padding: 14px 18px;
font-family: var(--font-montserrat);
font-size: 12px;
letter-spacing: .12em;
text-transform: uppercase;
color: var(--emerald-700);
display: flex;
justify-content: space-between;
align-items: center;
}

.site-main .legal-toc-m summary::-webkit-details-marker {
display: none;
}

.site-main .legal-toc-m summary::after {
content: "+";
font-size: 17px;
line-height: 1;
}

.site-main .legal-toc-m[open] summary::after {
content: "–";
}

.site-main .legal-toc-m ol {
list-style: none;
padding: 4px 10px 14px;
display: flex;
flex-direction: column;
gap: 1px;
}

.site-main .legal-toc-m a {
display: flex;
gap: 9px;
padding: 8px 12px;
border-radius: 8px;
font-size: 13.5px;
color: var(--ink-600);
}

.site-main .legal-toc-m a:hover {
background: var(--emerald-50);
color: var(--emerald-700);
}

.site-main .legal-toc-m .toc-num {
font-family: var(--font-montserrat);
font-size: 11px;
color: var(--emerald-600);
}
}

.site-main .legal-intro {
margin-bottom: 30px;
}

.site-main .legal-intro p {
color: var(--ink-700);
font-size: 16px;
line-height: 1.7;
margin-bottom: 14px;
}

.site-main .legal-intro p:first-child {
font-size: 17px;
color: var(--ink-800);
}

.site-main .legal-intro p:last-child {
margin-bottom: 0;
}

.site-main .legal-section {
scroll-margin-top: 96px;
margin-bottom: 34px;
}

.site-main .legal-section:last-child {
margin-bottom: 0;
}

.site-main .legal-section+.legal-section {
border-top: 1px solid var(--ink-100);
padding-top: 30px;
}

.site-main .legal-section h2 {
font-family: var(--font-soho-gothic-pro);
font-weight: 500;
letter-spacing: -.015em;
line-height: 1.18;
font-size: clamp(20px, 2.5vw, 27px);
color: var(--ink-1000);
margin-bottom: 14px;
display: flex;
gap: 12px;
align-items: baseline;
}

.site-main .legal-section h2 .num {
font-family: var(--font-montserrat);
font-size: 13px;
font-weight: 500;
color: var(--emerald-600);
flex-shrink: 0;
}

.site-main .legal-content p {
color: var(--ink-700);
line-height: 1.75;
margin-bottom: 15px;
font-size: 15.5px;
}

.site-main .legal-content p:last-child {
margin-bottom: 0;
}

.site-main .legal-content ul,
.site-main .legal-content ol {
margin: 0 0 16px;
padding-left: 22px;
color: var(--ink-700);
line-height: 1.7;
font-size: 15.5px;
}

.site-main .legal-content li {
margin-bottom: 8px;
}

.site-main .legal-content li:last-child {
margin-bottom: 0;
}

.site-main .legal-content li::marker {
color: var(--emerald-500);
}

.site-main .legal-content a {
color: var(--emerald-600);
border-bottom: 1px solid var(--emerald-200);
transition: color .2s, border-color .2s;
}

.site-main .legal-content a:hover {
color: var(--emerald-700);
border-bottom-color: var(--emerald-500);
}

.site-main .legal-content strong {
color: var(--ink-900);
font-weight: 600;
}

.site-main .ubind-symbol-defs {
position: absolute;
width: 0;
height: 0;
overflow: hidden
}

.site-main .final-cta-eyebrow {
justify-content: center;
color: var(--emerald-300)
}

.site-main .final-cta-heading {
margin-top: 18px
}
