.skip-link{position:absolute;left:-9999px;top:0;background:#0F1115;color:#fff;padding:10px 14px;z-index:9999;border-radius:0 0 6px 0;font-size:13px;font-weight:500;text-decoration:none}
.skip-link:focus{left:0;outline:2px solid #1F6BFF}
/* Shared legal-pages stylesheet for NextGenSMS */
:root{
  --primary:#0F1115;--secondary:#5A6273;--tertiary:#1F6BFF;--accent:#7C3AED;
  --neutral:#FFFFFF;--paper-2:#F4F5F7;--paper-3:#F7F8FA;--border:#E6E8EC;
  --ink:#0F1115;--ink-2:#5A6273;--ink-3:#8B91A0;--on-primary:#FFFFFF;--on-tertiary:#FFFFFF;
  /* ===== 4-tier 3D elevation system ===== */
  /* L0 — flat ring only (form inputs, dividers) */
  --shadow-ring:rgba(15,17,21,0.08) 0px 0px 0px 1px;
  /* L1 — resting card (tight contact + soft ambient) */
  --shadow-rest:rgba(15,17,21,0.06) 0px 0px 0px 1px, rgba(15,17,21,0.05) 0px 2px 4px -2px, rgba(15,17,21,0.04) 0px 8px 16px -6px;
  /* L2 — raised card (hover / interactive) */
  --shadow-raised:rgba(15,17,21,0.08) 0px 0px 0px 1px, rgba(15,17,21,0.08) 0px 6px 12px -4px, rgba(15,17,21,0.06) 0px 20px 40px -12px;
  /* L3 — floating (modals, popovers, hero CTA) */
  --shadow-floating:rgba(15,17,21,0.10) 0px 0px 0px 1px, rgba(15,17,21,0.10) 0px 10px 20px -6px, rgba(15,17,21,0.08) 0px 32px 64px -16px;
  /* L4 — dramatic (hero card / featured tile) */
  --shadow-dramatic:rgba(15,17,21,0.10) 0px 0px 0px 1px, rgba(15,17,21,0.14) 0px 16px 32px -8px, rgba(31,107,255,0.18) 0px 48px 96px -24px;
  /* Colored glow (for primary CTAs and featured elements) */
  --shadow-glow-primary:0 0 0 1px rgba(31,107,255,0.40), 0 8px 24px -4px rgba(31,107,255,0.45), 0 24px 48px -12px rgba(31,107,255,0.30);
  --shadow-glow-accent:0 0 0 1px rgba(124,58,237,0.40), 0 8px 24px -4px rgba(124,58,237,0.45), 0 24px 48px -12px rgba(124,58,237,0.30);
  /* Legacy aliases (kept so older markup still works) */
  --shadow-card-rest:var(--shadow-rest);
  --shadow-card-hover:var(--shadow-raised);
  --shadow-tile:var(--shadow-rest);
  --shadow-focus:0 0 0 3px rgba(31,107,255,0.30);
/* ===== 3D Depth & Elevation ===== */
.card,.tl,.comp,.pricing-card,.contact-card,.payment-card,.endpoint{
  transition:box-shadow .28s cubic-bezier(.16,1,.3,1),transform .28s cubic-bezier(.16,1,.3,1);
}
.card:hover,.tl:hover,.comp:hover,.pricing-card:hover,.contact-card:hover{
  box-shadow:var(--shadow-raised);
  transform:translateY(-2px);
}
.featured,.pricing-card.featured,.comp.featured{
  box-shadow:var(--shadow-dramatic);
  transform:translateY(-2px);
}
.btn{
  transition:background-color .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease;
}
.btn.primary{
  box-shadow:var(--shadow-glow-primary);
}
.btn.primary:hover{
  box-shadow:0 0 0 1px rgba(31,107,255,0.50), 0 12px 32px -4px rgba(31,107,255,0.55), 0 32px 64px -16px rgba(31,107,255,0.40);
  transform:translateY(-1px);
}
.btn.outline-portal:hover{box-shadow:var(--shadow-raised);transform:translateY(-1px)}
.btn.ghost:hover{box-shadow:var(--shadow-raised);transform:translateY(-1px)}
/* Nav depth — lifted from page surface */
.nav{
  position:sticky;top:0;z-index:50;background:rgba(255,255,255,0.85);
  -webkit-backdrop-filter:saturate(160%) blur(10px);backdrop-filter:saturate(160%) blur(10px);
  box-shadow:0 1px 0 0 rgba(15,17,21,0.06), 0 6px 16px -8px rgba(15,17,21,0.06);
}
.nav.scrolled{
  box-shadow:0 1px 0 0 rgba(15,17,21,0.08), 0 12px 28px -10px rgba(15,17,21,0.10), 0 24px 48px -16px rgba(15,17,21,0.06);
}
/* Tablet buttons + chips get a tiny resting depth */
.payments .chip,.badge,.pill{
  transition:box-shadow .2s ease,transform .2s ease;
}
.payments .chip:hover{box-shadow:var(--shadow-raised);transform:translateY(-1px)}

  --radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-pill:9999px;--container:1180px;
}
*{box-sizing:border-box}html,body{margin:0;padding:0}
body{font-family:'IBM Plex Sans',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);background:var(--neutral);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:inherit;text-decoration:none}img{max-width:100%;display:block}
.wrap{max-width:var(--container);margin:0 auto;padding:0 24px}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
.eyebrow{display:inline-block;font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:12px;font-weight:500;letter-spacing:0.08em;text-transform:uppercase;color:var(--tertiary);padding-left:12px;border-left:3px solid var(--tertiary)}


.nav-inner{display:flex;align-items:center;justify-content:space-between;height:64px;gap:18px}
.brand img{height:36px;width:auto}
.nav-links{display:flex;align-items:center;gap:18px;flex-wrap:nowrap;white-space:nowrap}
.nav-links > a:not(.btn):not(.outline-portal){position:relative;padding:6px 0;font-size:14px;color:var(--ink);font-weight:500;transition:color .18s ease}
.nav-links > a:not(.btn):not(.outline-portal)::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--tertiary);transform:scaleX(0);transform-origin:center;transition:transform .22s cubic-bezier(.16,1,.3,1)}
.nav-links > a:not(.btn):not(.outline-portal):hover{color:var(--tertiary)}
.nav-links > a:not(.btn):not(.outline-portal):hover::after{transform:scaleX(1)}
.nav-mobile-toggle{display:none}
.nav-mobile-menu{display:none;flex-direction:column;padding:14px 18px;gap:10px;background:var(--neutral);border-bottom:1px solid var(--border)}
.nav-mobile-menu a{padding:10px 0;border-bottom:1px solid var(--border);font-weight:500}
.nav-mobile-menu.open{display:flex}

.crumbs{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:0.1em;text-transform:uppercase;color:var(--ink-3);padding:18px 0 0}
.crumbs a{color:var(--ink-3)}.crumbs a:hover{color:var(--tertiary)}

.legal-doc{max-width:840px;margin:0 auto;padding:0 24px}
.legal-doc h1{font-size:clamp(32px,4vw,44px);font-weight:600;letter-spacing:-0.022em;line-height:1.1;margin:18px 0 14px}
.legal-doc .meta{background:var(--paper-3);border-radius:var(--radius-md);box-shadow:var(--shadow-ring);padding:18px 22px;margin:24px 0 36px;display:grid;grid-template-columns:repeat(4,1fr);gap:18px;border-left:3px solid var(--tertiary)}
.legal-doc .meta .cell .label{font-family:'IBM Plex Mono',monospace;font-size:10px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--tertiary);display:block;margin-bottom:4px}
.legal-doc .meta .cell .value{font-size:14px;color:var(--ink);font-weight:500;line-height:1.45}
.legal-doc .pill{display:inline-flex;align-items:center;gap:6px;font-family:'IBM Plex Mono',monospace;font-size:11px;font-weight:600;letter-spacing:0.06em;background:#EDF3FF;color:var(--tertiary);padding:5px 10px;border-radius:var(--radius-pill);text-transform:uppercase;margin-left:10px;vertical-align:middle}
.legal-doc h2{font-size:24px;font-weight:600;letter-spacing:-0.018em;border-bottom:1px solid var(--border);padding-bottom:8px;margin:48px 0 14px;color:var(--ink)}
.legal-doc h3{font-size:18px;font-weight:600;letter-spacing:-0.012em;margin:24px 0 8px;color:var(--ink)}
.legal-doc p{font-size:16px;line-height:1.7;color:var(--ink-2);margin:0 0 14px}
.legal-doc ul{padding-left:22px;color:var(--ink-2);font-size:16px;line-height:1.7}
.legal-doc ul li{margin-bottom:6px}
.legal-doc .toc{background:var(--paper-3);border-radius:var(--radius-md);padding:18px 22px;margin-bottom:32px;box-shadow:var(--shadow-ring)}
.legal-doc .toc .label{font-family:'IBM Plex Mono',monospace;font-size:10px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--tertiary);margin-bottom:8px;display:block}
.legal-doc .toc ol{margin:0;padding-left:20px;color:var(--ink-2);font-size:14px}
.legal-doc .toc a{color:var(--ink-2);border-bottom:1px dotted var(--border)}
.legal-doc .toc a:hover{color:var(--tertiary);border-bottom-color:var(--tertiary)}
.legal-doc .footnote{margin-top:48px;padding-top:18px;border-top:1px solid var(--border);font-size:13px;color:var(--ink-3)}
.legal-doc .contact-block{background:var(--neutral);border-radius:var(--radius-md);box-shadow:var(--shadow-card-rest);padding:24px;margin-top:32px}
.legal-doc .contact-block h4{margin:0 0 8px;font-size:14px;font-weight:600;color:var(--ink)}
.legal-doc .contact-block p{margin:0 0 4px;font-size:14px;color:var(--ink-2)}

.foot{background:#0F1115;color:#E6E8EC;padding:64px 0 32px;margin-top:96px}
.foot a{color:#E6E8EC}.foot a:hover{color:#FFFFFF}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:36px}
.foot h4{font-size:12px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:#9CA3AF;margin:0 0 14px;font-family:'IBM Plex Mono',monospace}
.foot ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:14px}
.foot .meta{margin-top:18px;color:#9CA3AF;font-size:13px;line-height:1.55}
.foot .legal{display:flex;gap:18px;flex-wrap:wrap;font-size:13px;color:#9CA3AF;margin-top:24px;border-top:1px solid #1F2330;padding-top:18px}
.foot .legal a{color:#9CA3AF}.foot .legal a:hover{color:#FFFFFF}

@media (max-width: 980px){
  .legal-doc .meta{grid-template-columns:repeat(2,1fr)}
  .nav-links{display:none}
  .nav-mobile-toggle{display:inline-flex;width:40px;height:40px;align-items:center;justify-content:center;border-radius:var(--radius-md);box-shadow:var(--shadow-ring)}
  .nav-mobile-toggle span{width:18px;height:2px;background:var(--ink);position:relative;display:block}
  .nav-mobile-toggle span::before,.nav-mobile-toggle span::after{content:"";position:absolute;left:0;right:0;height:2px;background:var(--ink)}
  .nav-mobile-toggle span::before{top:-6px}.nav-mobile-toggle span::after{top:6px}
  .nav-mobile-menu{display:none;flex-direction:column;padding:14px 18px;gap:10px;background:var(--neutral);border-bottom:1px solid var(--border)}
  .nav-mobile-menu a{padding:10px 0;border-bottom:1px solid var(--border);font-weight:500}
  .nav-mobile-menu.open{display:flex}
  .foot-grid{grid-template-columns:1fr 1fr}
}
@media (max-width: 600px){
  .legal-doc .meta{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr}
}
