:root{
  --bg:#fbfcff;
  --bg-soft:#f5f8fc;
  --surface:#ffffff;
  --surface-2:#f8fbff;
  --text:#0b1729;
  --muted:#65748b;
  --muted-2:#8b98aa;
  --line:#dfe7f1;
  --line-strong:#cdd8e7;
  --amber:#f5a623;
  --amber-2:#e88700;
  --amber-soft:#fff5df;
  --teal:#19b79a;
  --teal-soft:#e8fbf6;
  --blue:#377cf5;
  --blue-soft:#edf4ff;
  --violet:#7a61f2;
  --violet-soft:#f1edff;
  --red:#ec6973;
  --green:#18a97c;
  --shadow-sm:0 10px 34px rgba(28,48,78,.08);
  --shadow:0 22px 70px rgba(30,50,78,.11);
  --shadow-lg:0 34px 100px rgba(35,58,88,.16);
  --radius:22px;
  --radius-lg:30px;
  --shell:1240px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg)}
body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,"Segoe UI",Roboto,Arial,sans-serif;font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body.drawer-open{overflow:hidden}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{color:inherit}
img,svg{max-width:100%}
.container{width:min(calc(100% - 40px),var(--shell));margin-inline:auto}
.section{position:relative;padding:110px 0}
.section-heading{max-width:830px;margin-bottom:46px}
.section-heading.centered{margin-inline:auto;text-align:center}
.section-heading.left{max-width:760px}
.section-heading.split{max-width:none;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr);gap:56px;align-items:end}
.section-heading.split>p{margin:0 0 8px}
.section-heading h2,.footer-cta h2{font-size:clamp(34px,4.5vw,62px);line-height:1.02;letter-spacing:-.045em;margin:10px 0 16px;font-weight:760}
.section-heading p,.hero-copy p,.coverage-copy p,.footer-cta p,.demo-strip p{color:var(--muted);font-size:18px;margin:0;max-width:720px}
.eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:11px;letter-spacing:.18em;font-weight:800;color:#71819a;text-transform:uppercase}
.eyebrow:before{content:"";width:22px;height:1px;background:currentColor;opacity:.6}
.eyebrow--amber{color:#d78b0d}.eyebrow--violet{color:var(--violet)}
.gradient-text{background:linear-gradient(90deg,#111c2e 0%,#f0a016 72%,#d68300 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.site-progress{position:fixed;z-index:9999;top:0;left:0;width:0;height:2px;background:linear-gradient(90deg,var(--amber),var(--teal),var(--violet));box-shadow:0 0 16px rgba(245,166,35,.45)}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:13px;padding:13px 18px;font-weight:760;font-size:14px;border:1px solid transparent;transition:.25s ease;cursor:pointer;white-space:nowrap}
.btn svg{transition:transform .25s ease}.btn:hover svg{transform:translateX(3px)}
.btn-primary{background:linear-gradient(135deg,#ffb522 0%,#f39a06 72%,#e88a00 100%);color:#181006;box-shadow:0 12px 30px rgba(229,143,0,.23),inset 0 1px 0 rgba(255,255,255,.65);border-color:#eaa00f}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 18px 40px rgba(229,143,0,.29),inset 0 1px 0 rgba(255,255,255,.7)}
.btn-ghost{background:rgba(255,255,255,.86);border-color:var(--line);box-shadow:0 8px 22px rgba(37,61,92,.07)}
.btn-ghost:hover{border-color:#bfcddd;transform:translateY(-2px);box-shadow:var(--shadow-sm)}
.btn-lg{padding:15px 21px;border-radius:14px;font-size:15px}.btn-sm{padding:10px 14px;border-radius:11px;font-size:13px}
.full-width{width:100%}

/* animated logo */
.brand{display:inline-flex;align-items:center;gap:10px;font-weight:800;position:relative;z-index:1}
.brand-mark{position:relative;width:29px;height:29px;display:inline-block;border-radius:9px;background:linear-gradient(145deg,#ffbb31,#ef9300);box-shadow:0 7px 18px rgba(233,145,0,.24);overflow:visible;transform-origin:center}
.brand-mark:before{content:"";position:absolute;inset:6px;border:4px solid #fff;border-radius:5px}
.brand-mark:after{content:"";position:absolute;width:8px;height:10px;right:3px;top:9px;background:linear-gradient(145deg,#ffbb31,#ef9300);border-radius:2px}
.brand-mark i{position:absolute;width:6px;height:6px;border-radius:50%;background:var(--teal);right:-4px;top:-3px;box-shadow:0 0 0 5px rgba(25,183,154,.11),0 0 16px rgba(25,183,154,.5);animation:brandSatellite 3.2s linear infinite;transform-origin:-11px 17px}
.brand-word{font-size:20px;letter-spacing:-.04em;display:inline-flex;overflow:hidden}.brand-word b,.brand-word em{font-style:normal}.brand-word em{color:var(--teal)}
.brand--mini .brand-mark{width:24px;height:24px;border-radius:8px}.brand--mini .brand-mark:before{inset:5px;border-width:3px}.brand--mini .brand-mark:after{right:2px;top:8px;width:7px;height:8px}.brand--mini .brand-word{font-size:18px}
.js .brand--animated .brand-mark{animation:logoReveal .9s cubic-bezier(.2,.8,.2,1) both,logoFloat 4s ease-in-out 1.1s infinite}
.js .brand--animated .brand-word b{animation:wordReveal .7s .18s both}.js .brand--animated .brand-word em{animation:wordReveal .7s .28s both}
.brand:hover .brand-mark{filter:saturate(1.15);transform:rotate(-6deg) scale(1.04)}
@keyframes logoReveal{0%{opacity:0;transform:rotate(-70deg) scale(.65)}65%{opacity:1;transform:rotate(8deg) scale(1.07)}100%{transform:none}}
@keyframes logoFloat{0%,100%{translate:0 0}50%{translate:0 -2px}}
@keyframes brandSatellite{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}
@keyframes wordReveal{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

/* announcement + header */
.announcement{height:30px;border-bottom:1px solid rgba(113,129,154,.12);background:linear-gradient(90deg,#fbfdfd,#f8fbff 55%,#fff9ed);font-size:10px;position:relative;z-index:80}
.announcement__inner{height:100%;display:flex;align-items:center;justify-content:space-between;color:#6a7990;font-weight:680;letter-spacing:.02em}
.announcement__inner span{display:flex;align-items:center;gap:7px}.announcement__inner span i{width:6px;height:6px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 4px rgba(25,183,154,.09)}
.announcement__inner a{display:inline-flex;align-items:center;gap:5px;color:#b87508;font-weight:800}
.site-header{position:sticky;top:0;z-index:70;background:rgba(251,252,255,.78);backdrop-filter:blur(18px) saturate(160%);border-bottom:1px solid rgba(127,145,171,.11);transition:.25s ease}
.site-header.scrolled{box-shadow:0 15px 40px rgba(31,48,72,.07);background:rgba(255,255,255,.91)}
.header-shell{height:72px;display:grid;grid-template-columns:210px 1fr auto;align-items:center;gap:28px}
.desktop-nav{display:flex;align-items:center;justify-content:center;gap:8px;height:100%}
.desktop-nav>a,.nav-dropdown>button{border:0;background:none;padding:10px 12px;border-radius:10px;font-size:13px;font-weight:690;color:#48596f;cursor:pointer;display:inline-flex;align-items:center;gap:5px;transition:.2s}
.desktop-nav>a:hover,.desktop-nav>a.active,.nav-dropdown>button:hover{color:var(--text);background:#f4f7fb}
.desktop-nav>a.active{position:relative}.desktop-nav>a.active:after{content:"";position:absolute;left:13px;right:13px;bottom:-18px;height:2px;background:var(--amber);border-radius:2px}
.nav-dropdown{position:relative}.nav-panel{position:absolute;top:calc(100% + 13px);left:50%;transform:translate(-50%,8px);width:310px;padding:10px;background:rgba(255,255,255,.98);border:1px solid var(--line);border-radius:17px;box-shadow:var(--shadow);opacity:0;visibility:hidden;pointer-events:none;transition:.22s ease}.nav-dropdown:hover .nav-panel,.nav-dropdown:focus-within .nav-panel{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}
.nav-panel--wide{width:430px;display:grid;grid-template-columns:1fr 1fr}.nav-panel a{display:flex;gap:11px;padding:12px;border-radius:12px}.nav-panel a:hover{background:var(--bg-soft)}.nav-panel a>span:first-child:not(.dot){width:34px;height:34px;display:grid;place-items:center;border:1px solid #e5ebf3;border-radius:10px;background:#fafcff;color:#d68a0d}.nav-panel b{display:block;font-size:13px}.nav-panel small{display:block;font-size:11px;color:var(--muted);line-height:1.35;margin-top:2px}.dot{width:7px;height:7px;border-radius:50%;margin:7px 5px 0 4px;flex:0 0 auto}.dot.teal{background:var(--teal)}.dot.blue{background:var(--blue)}.dot.amber{background:var(--amber)}.dot.violet{background:var(--violet)}
.header-actions{display:flex;align-items:center;gap:10px}.signin-link{font-size:13px;font-weight:700;color:#55657a;padding:9px}.menu-toggle{display:none;width:42px;height:42px;border:1px solid var(--line);border-radius:12px;background:#fff;place-items:center;cursor:pointer}
.mobile-drawer,.drawer-backdrop{display:none}

/* hero */
.hero-section{position:relative;padding:84px 0 96px;overflow:hidden;background:linear-gradient(180deg,#fbfdff 0%,#f8fbff 55%,#fff 100%)}
.hero-section:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(106,126,154,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(106,126,154,.035) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(to bottom,black,transparent 80%);pointer-events:none}
.hero-ambient{position:absolute;border-radius:50%;filter:blur(1px);pointer-events:none}.hero-ambient--one{width:620px;height:620px;right:-90px;top:-200px;background:radial-gradient(circle,rgba(255,186,63,.2),rgba(255,186,63,.06) 46%,transparent 70%)}.hero-ambient--two{width:520px;height:520px;right:24%;top:100px;background:radial-gradient(circle,rgba(44,196,177,.08),rgba(79,119,255,.05) 48%,transparent 70%)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(500px,.9fr);gap:70px;align-items:center;position:relative;z-index:2}
.hero-copy h1{font-size:clamp(50px,5.7vw,78px);line-height:.98;letter-spacing:-.055em;margin:18px 0 22px;font-weight:790;max-width:760px}.hero-copy h1 span{display:block}.hero-copy p{max-width:680px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0 17px}.inline-proof{display:flex;gap:17px;flex-wrap:wrap;color:#708097;font-size:12px;font-weight:680}.inline-proof span{display:inline-flex;align-items:center;gap:5px}.inline-proof svg{color:var(--teal)}
.hero-orbit{position:relative;min-height:520px;isolation:isolate}.hero-orbit:before{content:"";position:absolute;width:440px;height:440px;left:50%;top:50%;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(255,179,37,.12),rgba(25,183,154,.06) 38%,rgba(70,116,255,.035) 62%,transparent 72%);border-radius:50%;filter:blur(4px)}
.orbit-ring{position:absolute;left:50%;top:50%;translate:-50% -50%;border:1px solid rgba(127,149,182,.16);border-radius:50%;animation:orbitPulse 5s ease-in-out infinite}.r1{width:240px;height:240px}.r2{width:340px;height:340px;animation-delay:-1.7s}.r3{width:440px;height:440px;animation-delay:-3s}.hero-core{position:absolute;left:50%;top:50%;translate:-50% -50%;width:164px;height:164px;border-radius:50%;background:linear-gradient(145deg,#fff,#fffaf0);border:1px solid #f2d59f;box-shadow:0 26px 70px rgba(91,75,40,.13),inset 0 0 0 10px rgba(255,249,235,.74);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:4}.brand-mark--hero{width:45px;height:45px;border-radius:14px;margin-bottom:10px;animation:logoFloat 3.2s ease-in-out infinite}.brand-mark--hero:before{inset:9px;border-width:5px;border-radius:7px}.brand-mark--hero:after{right:4px;top:14px;width:10px;height:15px}.hero-core strong{font-family:Georgia,serif;font-size:18px;letter-spacing:.01em}.hero-core small{font-size:10px;color:var(--muted)}
.hero-node{position:absolute;z-index:5;min-width:132px;padding:12px 14px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.89);box-shadow:var(--shadow-sm);display:flex;align-items:center;gap:8px;font-size:12px;font-weight:760;backdrop-filter:blur(12px);animation:nodeFloat 4.6s ease-in-out infinite}.hero-node svg{color:#d89218}.hn1{left:5%;top:12%}.hn2{right:2%;top:14%;animation-delay:-.8s}.hn3{left:0;bottom:16%;animation-delay:-1.6s}.hn4{right:0;bottom:19%;animation-delay:-2.4s}.hn5{left:50%;bottom:3%;translate:-50% 0;animation-delay:-3.2s}.hero-connectors{position:absolute;inset:0;width:100%;height:100%;z-index:2;overflow:visible}.hero-connectors path{fill:none;stroke:rgba(89,132,158,.32);stroke-width:1.5;stroke-dasharray:5 8;animation:dash 12s linear infinite}.hero-connectors path:nth-child(2){stroke:rgba(244,166,38,.36);animation-duration:15s}.hero-connectors path:nth-child(3){stroke:rgba(25,183,154,.38);animation-duration:13s}.hero-connectors path:nth-child(4){stroke:rgba(122,97,242,.3);animation-duration:17s}.hero-connectors path:nth-child(5){stroke:rgba(55,124,245,.3);animation-duration:11s}
@keyframes orbitPulse{0%,100%{transform:scale(1);opacity:.7}50%{transform:scale(1.025);opacity:1}}@keyframes nodeFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}@keyframes dash{to{stroke-dashoffset:-200}}

/* stack */
.stack-section{padding-top:48px;background:#fff}.stack-shell{border:1px solid var(--line);border-radius:30px;background:linear-gradient(145deg,#fff,#f9fcff);box-shadow:var(--shadow-lg);padding:32px;position:relative;overflow:hidden}.stack-shell:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 70%,rgba(25,183,154,.08),transparent 37%);pointer-events:none}.stack-topline{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid var(--line);padding-bottom:23px}.stack-topline p{margin:7px 0 0;color:var(--muted);font-size:14px}.segmented{display:inline-flex;padding:4px;border:1px solid var(--line);background:#f7f9fc;border-radius:99px}.segmented button{border:0;background:transparent;padding:9px 17px;border-radius:99px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:780;color:#8290a4;cursor:pointer}.segmented button.active{background:#fff;color:var(--teal);box-shadow:0 5px 15px rgba(42,65,94,.1),inset 0 0 0 1px rgba(25,183,154,.28)}
.stack-stage{position:relative;z-index:2;min-height:430px;padding:30px 0 0}.stack-view{position:absolute;inset:30px 0 0;opacity:0;visibility:hidden;transform:translateY(10px);transition:.32s ease}.stack-view.active{position:relative;inset:auto;opacity:1;visibility:visible;transform:none}.scattered-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;max-width:900px;margin:32px auto}.scattered-grid span{min-height:72px;padding:16px;border:1px solid var(--line);border-radius:15px;background:white;box-shadow:0 10px 25px rgba(35,58,88,.05);display:flex;align-items:center;justify-content:center;text-align:center;color:#44566d;font-weight:700;font-size:13px;position:relative}.scattered-grid span:after{content:"";position:absolute;width:6px;height:6px;border-radius:50%;top:10px;right:10px;background:var(--red);box-shadow:0 0 0 4px rgba(236,105,115,.08)}.scattered-grid span:nth-child(3n):after{background:var(--amber)}.scattered-grid span:nth-child(4n):after{background:var(--violet)}.stack-friction{display:flex;justify-content:center;gap:28px;flex-wrap:wrap;color:#718198;font-size:11px;font-weight:760;text-transform:uppercase;letter-spacing:.08em}.stack-friction i{display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:6px}.stack-friction .amber{background:var(--amber)}.stack-friction .red{background:var(--red)}.stack-friction .violet{background:var(--violet)}
.unified-card{width:min(650px,95%);margin:12px auto 25px;border:1px solid rgba(25,183,154,.35);border-radius:23px;background:rgba(255,255,255,.94);padding:28px;box-shadow:0 26px 70px rgba(25,183,154,.16),inset 0 0 0 7px rgba(231,250,246,.75)}.unified-title{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:18px}.status-dot{font-size:12px;color:var(--teal);letter-spacing:.13em;text-transform:uppercase;font-weight:800}.status-dot:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--teal);margin-right:7px;box-shadow:0 0 0 5px rgba(25,183,154,.08)}.unified-list{display:grid;grid-template-columns:1fr 1fr;gap:14px 34px;padding:24px 0}.unified-list span{display:flex;align-items:center;gap:8px;color:#53657d;font-size:14px;font-weight:680}.unified-list svg{color:var(--teal)}.unified-footer{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:15px;color:#91a0b2;font-size:10px;letter-spacing:.15em;font-weight:760}.stack-metrics{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);padding-top:21px}.stack-metrics span{display:flex;align-items:center;justify-content:center;gap:10px}.stack-metrics small{font-size:10px;color:#94a0b2;letter-spacing:.12em}.stack-metrics b{font-size:13px}

/* ecosystem */
.ecosystem-section{background:linear-gradient(180deg,#f6f9fd 0%,#fff 100%);overflow:hidden}.ecosystem-board{position:relative;height:640px;border:1px solid var(--line);border-radius:32px;background:linear-gradient(145deg,#fff,#f5f9fe);box-shadow:var(--shadow);overflow:hidden}.ecosystem-board:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(118,139,166,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(118,139,166,.055) 1px,transparent 1px);background-size:44px 44px;mask-image:radial-gradient(circle at center,black,transparent 76%)}.ecosystem-halo{position:absolute;left:50%;top:50%;translate:-50% -50%;border-radius:50%;border:1px solid rgba(85,114,149,.1)}.ecosystem-halo.h1{width:230px;height:230px}.ecosystem-halo.h2{width:360px;height:360px}.ecosystem-halo.h3{width:520px;height:520px}.eco-core{position:absolute;left:50%;top:50%;translate:-50% -50%;z-index:5;width:185px;height:185px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:linear-gradient(145deg,#fff,#fffaf0);border:1px solid #eccb8b;box-shadow:0 25px 80px rgba(137,102,37,.17),inset 0 0 0 12px rgba(255,247,226,.72)}.brand-mark--eco{width:46px;height:46px;border-radius:15px;margin-bottom:9px;animation:logoFloat 3.8s ease-in-out infinite}.brand-mark--eco:before{inset:9px;border-width:5px;border-radius:7px}.brand-mark--eco:after{right:4px;top:14px;width:10px;height:15px}.eco-core b{font-size:18px}.eco-core small{font-size:10px;color:var(--muted)}.eco-core em{font-style:normal;font-size:9px;color:var(--teal);font-weight:800;margin-top:9px;letter-spacing:.13em}.eco-core em i{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--teal);margin-right:5px;box-shadow:0 0 0 4px rgba(25,183,154,.09)}
.eco-card{position:absolute;z-index:6;width:225px;min-height:112px;border:1px solid var(--line);border-radius:17px;background:rgba(255,255,255,.94);box-shadow:var(--shadow-sm);padding:17px 18px;transition:.25s ease}.eco-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.eco-card span{font-size:8px;letter-spacing:.17em;color:#8b99ac;font-weight:800}.eco-card h3{font-size:15px;margin:7px 0 5px}.eco-card p{font-size:11px;color:var(--muted);margin:0}.e1{left:7%;top:11%}.e2{right:7%;top:11%}.e3{left:4%;top:41%}.e4{right:4%;top:41%}.e5{left:9%;bottom:9%}.e6{right:9%;bottom:9%}.ecosystem-lines{position:absolute;inset:0;width:100%;height:100%;z-index:3}.ecosystem-lines path{fill:none;stroke-width:1.5;stroke-dasharray:6 8;animation:dash 13s linear infinite}.ecosystem-lines path:nth-of-type(1),.ecosystem-lines path:nth-of-type(3){stroke:rgba(25,183,154,.55)}.ecosystem-lines path:nth-of-type(2),.ecosystem-lines path:nth-of-type(5){stroke:rgba(245,166,35,.5)}.ecosystem-lines path:nth-of-type(4){stroke:rgba(122,97,242,.45)}.ecosystem-lines path:nth-of-type(6){stroke:rgba(55,124,245,.45)}.traveller{fill:var(--amber);filter:url(#glow)}.t2,.t3{fill:var(--teal)}.t4{fill:var(--violet)}.t6{fill:var(--blue)}

/* module entry */
.module-entry-section{padding-top:85px}.module-entry-grid{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);gap:70px;align-items:start}.module-entry-grid .section-heading{position:sticky;top:120px;margin:0}.module-entry-grid h2{font-size:clamp(42px,4.6vw,66px)}.module-entry-grid .section-heading .btn{margin-top:24px}.module-entry-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px}.module-entry-cards a{min-height:116px;padding:18px;border:1px solid var(--line);border-radius:17px;background:#fff;box-shadow:0 8px 25px rgba(32,58,88,.045);display:grid;grid-template-columns:42px 1fr auto;gap:14px;align-items:start;transition:.25s ease}.module-entry-cards a:hover{transform:translateY(-4px);box-shadow:var(--shadow-sm);border-color:#cbd8e8}.module-entry-cards a>svg{margin-top:11px;color:#8d9caf}.module-entry-cards small{font-size:8px;text-transform:uppercase;letter-spacing:.15em;color:#c2861f;font-weight:820}.module-entry-cards b{display:block;font-size:14px;margin:2px 0 4px}.module-entry-cards p{font-size:11px;color:var(--muted);margin:0;line-height:1.45}.icon-chip{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;border:1px solid transparent}.icon-chip.amber{color:#cf850b;background:var(--amber-soft);border-color:#f6dfae}.icon-chip.teal{color:#129b82;background:var(--teal-soft);border-color:#c9f1e7}.icon-chip.violet{color:#6a50df;background:var(--violet-soft);border-color:#dfd7ff}.icon-chip.blue{color:#2d6dde;background:var(--blue-soft);border-color:#d7e5ff}

/* command */
.command-section{background:linear-gradient(180deg,#f7fafe,#f3f7fc 55%,#fff)}.command-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.command-card{border:1px solid var(--line);border-radius:21px;background:rgba(255,255,255,.92);box-shadow:0 12px 34px rgba(33,56,86,.06);padding:24px;min-height:285px;position:relative;overflow:hidden;transition:.25s ease}.command-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-sm)}.command-card:after{content:"";position:absolute;width:180px;height:180px;border-radius:50%;right:-90px;top:-90px;background:radial-gradient(circle,rgba(55,124,245,.06),transparent 70%)}.card-kicker{display:flex;align-items:center;justify-content:space-between;gap:12px}.card-kicker small{font-size:8px;letter-spacing:.15em;color:#8f9aab;font-weight:800}.command-card h3{font-size:24px;letter-spacing:-.035em;margin:18px 0 6px}.command-card p{font-size:13px;color:var(--muted);margin:0}.command-card>a{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:800;margin-top:19px}.metric-trio{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:20px}.metric-trio span{padding:11px;border:1px solid var(--line);background:#f7faff;border-radius:12px}.metric-trio small{display:block;font-size:8px;color:#8492a6}.metric-trio b{font-size:20px}.score-line{display:flex;align-items:end;gap:10px;margin-top:24px}.score-line>b{font-size:34px;letter-spacing:-.04em}.score-line b small{font-size:11px;color:#8b98aa;margin-left:2px}.score-line>span{font-size:10px;color:var(--green);font-weight:800;margin-bottom:8px}.health-meter{height:8px;background:#e9eff7;border-radius:99px;overflow:hidden;margin-top:8px}.health-meter i{display:block;width:87%;height:100%;background:linear-gradient(90deg,var(--teal),#4c83f3,var(--violet));border-radius:99px;animation:meterGrow 1.2s ease both}.recommendation{margin-top:24px;border-radius:12px;background:var(--violet-soft);color:#6853d4;padding:12px 14px;font-size:11px;font-weight:750;display:flex;gap:7px;align-items:center}.workflow-steps{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:7px}.workflow-steps li{background:#f6f9fd;border:1px solid #e6edf6;border-radius:10px;padding:9px 10px;font-size:10px;color:#65758b}.workflow-steps i{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--teal);margin-right:7px}.bar-chart{height:88px;display:flex;align-items:end;gap:7px;margin-top:18px;border-bottom:1px solid #d9e5ee}.bar-chart i{flex:1;height:var(--h);background:linear-gradient(180deg,#13b38f,#d8f4eb);border-radius:7px 7px 0 0;animation:barGrow 1.1s ease both;transform-origin:bottom}.doc-stack{height:82px;position:relative;margin-top:15px}.doc-stack span{position:absolute;width:75%;height:50px;border:1px solid #dfe8f2;border-radius:11px;background:#f3f8fd;left:0;top:14px}.doc-stack span:nth-child(2){left:12%;top:8px}.doc-stack span:nth-child(3){left:24%;top:2px}.records{font-size:10px;color:var(--green);font-weight:750;display:flex;align-items:center;gap:4px}.profit{grid-column:1/-1;display:grid;grid-template-columns:.8fr 1.2fr;min-height:250px;gap:30px}.profit-visual{background:linear-gradient(145deg,#f5f9fd,#eef5fa);border:1px solid #e0e9f2;border-radius:16px;padding:20px 22px;display:flex;flex-direction:column;justify-content:center}.profit-visual>b{font-size:32px;letter-spacing:-.04em}.profit-visual small{font-size:9px;color:#8997a9}.profit-visual svg{margin-top:12px;height:120px}.profit-visual .area{fill:url(#area)}.profit-visual .line{fill:none;stroke:#e68f00;stroke-width:3;stroke-linecap:round;stroke-dasharray:900;stroke-dashoffset:900;animation:drawLine 2.2s .25s ease forwards}.profit-copy{align-self:center}.profit-copy h3{font-size:27px}@keyframes meterGrow{from{width:0}}@keyframes barGrow{from{transform:scaleY(.05)}}@keyframes drawLine{to{stroke-dashoffset:0}}

/* coverage */
.coverage-section{padding-top:105px}.coverage-shell{border:1px solid var(--line);border-radius:32px;background:linear-gradient(135deg,#fff 0%,#f8fbff 52%,#fffdf8 100%);box-shadow:var(--shadow);padding:56px;display:grid;grid-template-columns:minmax(310px,.72fr) minmax(0,1.28fr);gap:44px;align-items:center;overflow:hidden;position:relative}.coverage-shell:after{content:"";position:absolute;width:480px;height:480px;border-radius:50%;right:-120px;top:-140px;background:radial-gradient(circle,rgba(25,183,154,.075),rgba(55,124,245,.035) 45%,transparent 70%);pointer-events:none}.coverage-copy{position:relative;z-index:3}.coverage-copy h2{font-size:clamp(43px,5vw,68px);line-height:.98;letter-spacing:-.05em;margin:12px 0 20px;max-width:470px}.coverage-copy p{font-size:15px}.coverage-stats{display:grid;grid-template-columns:repeat(3,1fr);margin:28px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.coverage-stats span{padding:20px 16px 18px 0}.coverage-stats span+span{border-left:1px solid var(--line);padding-left:18px}.coverage-stats b{display:block;font-size:27px;letter-spacing:-.04em}.coverage-stats small{display:block;font-size:9px;color:#8b98aa;margin-top:3px}.world-stage{position:relative;min-height:420px;z-index:2}.world-stage img{position:absolute;inset:25px 0 0;width:100%;height:360px;object-fit:contain;opacity:.92;filter:drop-shadow(0 12px 20px rgba(63,84,108,.03))}.world-routes{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.world-routes path{fill:none;stroke-width:1.6;stroke-dasharray:8 9;animation:dash 15s linear infinite}.world-routes path:nth-of-type(1){stroke:rgba(25,183,154,.55)}.world-routes path:nth-of-type(2){stroke:rgba(245,166,35,.52)}.world-routes path:nth-of-type(3){stroke:rgba(122,97,242,.46)}.world-routes path:nth-of-type(4){stroke:rgba(55,124,245,.42)}.route-dot{fill:var(--teal);filter:drop-shadow(0 0 5px rgba(25,183,154,.75))}.rd2{fill:var(--amber)}.rd3{fill:var(--violet)}.rd4{fill:var(--blue)}.region-node{position:absolute;z-index:4;padding:8px 10px;border-radius:11px;border:1px solid var(--line);background:rgba(255,255,255,.92);box-shadow:0 8px 22px rgba(39,60,83,.09);font-size:9px;font-weight:800;color:#45566c;display:flex;align-items:center;gap:6px;animation:nodeFloat 4s ease-in-out infinite}.region-node i{width:7px;height:7px;border-radius:50%;background:var(--amber);box-shadow:0 0 0 5px rgba(245,166,35,.1)}.north-america{left:19%;top:30%}.canada{left:29%;top:18%;animation-delay:-1.3s}.europe{left:59%;top:28%;animation-delay:-2.2s}.uk{right:18%;top:40%;animation-delay:-3s}.uae{left:63%;bottom:23%;animation-delay:-1.8s}.europe i,.uae i{background:var(--teal);box-shadow:0 0 0 5px rgba(25,183,154,.1)}.uk i{background:var(--blue)}.canada i{background:var(--violet)}.world-orbit{position:absolute;border:1px solid rgba(70,121,166,.13);border-radius:50%;left:50%;top:50%;translate:-50% -50%;transform:rotate(-8deg);pointer-events:none}.wo1{width:92%;height:55%;animation:worldOrbit 9s ease-in-out infinite}.wo2{width:66%;height:85%;transform:rotate(21deg);animation:worldOrbit2 10s ease-in-out infinite}@keyframes worldOrbit{50%{transform:rotate(3deg) scale(1.01)}}@keyframes worldOrbit2{50%{transform:rotate(28deg) scale(1.015)}}

/* pillars */
.pillars-section{background:linear-gradient(180deg,#fff,#f8fbfe 54%,#fff)}.pillars-stack{display:grid;gap:54px}.pillar-block{position:relative;border:1px solid var(--line);border-radius:28px;background:#fff;box-shadow:0 18px 55px rgba(32,56,86,.065);padding:34px;overflow:hidden}.pillar-block:before{content:"";position:absolute;width:280px;height:280px;border-radius:50%;right:-100px;top:-130px;opacity:.58}.pillar-teal:before{background:radial-gradient(circle,rgba(25,183,154,.12),transparent 70%)}.pillar-blue:before{background:radial-gradient(circle,rgba(55,124,245,.11),transparent 70%)}.pillar-amber:before{background:radial-gradient(circle,rgba(245,166,35,.12),transparent 70%)}.pillar-violet:before{background:radial-gradient(circle,rgba(122,97,242,.11),transparent 70%)}.pillar-heading{position:relative;z-index:2;margin-bottom:20px}.pillar-label{display:inline-flex;padding:7px 11px;border:1px solid currentColor;border-radius:99px;font-size:9px;letter-spacing:.17em;font-weight:820}.pillar-teal .pillar-label,.pillar-teal .pillar-icon{color:var(--teal)}.pillar-blue .pillar-label,.pillar-blue .pillar-icon{color:var(--blue)}.pillar-amber .pillar-label,.pillar-amber .pillar-icon{color:#c78209}.pillar-violet .pillar-label,.pillar-violet .pillar-icon{color:var(--violet)}.pillar-heading h2{font-size:38px;letter-spacing:-.04em;margin:12px 0 6px}.pillar-heading p{color:var(--muted);margin:0}.pillar-list{display:grid;gap:9px;position:relative;z-index:2}.pillar-list article{display:grid;grid-template-columns:40px minmax(220px,.9fr) minmax(40px,.25fr) minmax(260px,1.2fr) 28px;gap:14px;align-items:center;min-height:78px;padding:10px 16px;border:1px solid var(--line);border-radius:15px;background:linear-gradient(90deg,#fff,#fbfdff);transition:.22s ease}.pillar-list article:hover{border-color:#c7d6e7;transform:translateX(4px);box-shadow:0 10px 28px rgba(41,64,90,.06)}.pillar-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:#f7f9fc;border:1px solid #e7edf5}.pillar-name b{display:block;font-size:13px}.pillar-name small{font-size:7px;letter-spacing:.14em;color:#9aa6b5;font-weight:800}.pillar-separator{height:1px;background:var(--line)}.pillar-list p{margin:0;font-size:12px;color:#495b72;font-weight:680}.pillar-arrow{color:#93a1b3}

/* AI manager */
.ai-manager-section{padding-bottom:90px}.ai-manager-section .section-heading h2{max-width:820px}.compliance-compare{display:grid;grid-template-columns:1fr 90px 1fr;gap:20px;align-items:stretch}.compare-card{border:1px solid var(--line);border-radius:22px;padding:28px;background:#fff}.compare-card>span{display:block;font-size:12px;font-weight:820;margin-bottom:16px}.compare-card ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}.compare-card li{position:relative;padding-left:26px;color:#69788e;font-size:13px}.compare-card li:before{position:absolute;left:0;top:1px;width:18px;height:18px;border-radius:6px;display:grid;place-items:center;font-size:11px;font-weight:900}.compare-card.before{border-color:#f1d2d5;background:linear-gradient(145deg,#fff,#fffafa)}.compare-card.before>span{color:#d44c5a}.compare-card.before li:before{content:"×";color:#e2606d;background:#fff0f2}.compare-card.after{border-color:#d9d1ff;background:linear-gradient(145deg,#fff,#f7f4ff)}.compare-card.after>span{color:#6f57db}.compare-card.after li:before{content:"✓";color:#725fe0;background:#ebe7ff}.compare-bridge{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#8392a5;gap:8px}.compare-bridge span{width:44px;height:44px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;background:#fff;box-shadow:var(--shadow-sm)}.compare-bridge small{font-size:8px;text-transform:uppercase;letter-spacing:.12em;text-align:center}
.assistant-console{margin-top:22px;border:1px solid var(--line);border-radius:23px;background:#fff;box-shadow:var(--shadow);overflow:hidden}.assistant-head{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:13px 20px;border-bottom:1px solid var(--line);background:#f7fafc;color:#8a98a9;font-size:8px;letter-spacing:.15em;font-weight:780}.assistant-head span:last-child{display:flex;align-items:center;gap:6px}.assistant-head span:last-child i{width:6px;height:6px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 4px rgba(25,183,154,.08)}.assistant-body{padding:25px;min-height:190px}.user-bubble{margin-left:auto;width:max-content;max-width:70%;padding:12px 15px;border:1px solid #e1e8f1;border-radius:13px 13px 3px 13px;background:#f3f6fa;color:#53647a;font-size:13px}.ai-response{width:min(820px,88%);display:grid;grid-template-columns:38px 1fr;gap:12px;margin-top:20px}.assistant-avatar{width:36px;height:36px;border-radius:12px;background:var(--violet-soft);color:var(--violet);display:grid;place-items:center;border:1px solid #ddd5ff}.ai-response>div{padding:17px 18px;border:1px solid #d9d1ff;border-radius:14px 14px 14px 3px;background:linear-gradient(145deg,#f7f4ff,#f0edff)}.ai-response p{margin:0;color:#536279;font-size:13px}.ai-response b{color:#6c52d8}.response-meta{display:flex;gap:14px;flex-wrap:wrap;margin-top:13px;padding-top:10px;border-top:1px solid rgba(122,97,242,.15);font-size:7px;letter-spacing:.14em;color:#8e84c4;font-weight:800}

/* transformation */
.transformation-section{padding-top:50px}.transformation-grid{display:grid;grid-template-columns:1fr 76px 1fr;gap:18px;align-items:center}.trans-card{border:1px solid var(--line);border-radius:22px;padding:30px;min-height:330px}.trans-card small{display:block;font-size:9px;letter-spacing:.16em;font-weight:820;margin-bottom:17px}.trans-card ul{list-style:none;padding:0;margin:0;display:grid;gap:12px}.trans-card li{position:relative;padding-left:19px;font-size:14px;color:#66768c}.trans-card li:before{content:"";position:absolute;left:0;top:.57em;width:6px;height:6px;border-radius:2px}.trans-before{background:#f7fafc}.trans-before small{color:#99a4b3}.trans-before li{text-decoration:line-through;text-decoration-color:rgba(236,105,115,.45)}.trans-before li:before{background:#ec8790}.trans-after{background:linear-gradient(145deg,#f7fffc,#eafaf5);border-color:#bfe9dd;box-shadow:0 20px 45px rgba(25,183,154,.08)}.trans-after small{color:var(--teal)}.trans-after li{color:#375d57;font-weight:680}.trans-after li:before{border-radius:50%;background:var(--teal)}.transform-arrow{width:50px;height:50px;border:1px solid var(--line);border-radius:50%;background:#fff;display:grid;place-items:center;margin:auto;color:#8b99aa;box-shadow:var(--shadow-sm)}

/* tables */
.business-framing-section{background:#f8fafc}.tables-grid{display:grid;gap:24px}.data-table-card{border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:0 12px 36px rgba(39,61,89,.055);padding:26px}.table-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:17px}.table-heading h3{font-size:28px;letter-spacing:-.035em;margin:8px 0 0}.table-scroll{overflow:auto;border:1px solid #e5ebf3;border-radius:14px}.data-table-card table{border-collapse:collapse;width:100%;min-width:720px;font-size:12px}.data-table-card th,.data-table-card td{text-align:left;padding:13px 15px;border-bottom:1px solid #e9eef5;vertical-align:top}.data-table-card th{background:#f7f9fc;color:#5e6e84;font-size:10px;letter-spacing:.05em;text-transform:uppercase}.data-table-card tr:last-child td{border-bottom:0}.data-table-card td{color:#596a80}.data-table-card td b{color:#26384f}.market-pill{display:inline-flex;padding:5px 8px;border-radius:99px;background:#f3f6fa;color:#5f6e81;font-size:10px;font-weight:760}.data-table-card tr:nth-child(6) .market-pill,.data-table-card tr:nth-child(8) .market-pill{background:var(--amber-soft);color:#b26f00}

/* replaced */
.tools-replaced-section{background:linear-gradient(180deg,#fff,#f8fbff)}.replaced-shell{border:1px solid var(--line);border-radius:30px;background:#fff;box-shadow:var(--shadow);padding:38px;overflow:hidden;position:relative}.replaced-shell:before{content:"";position:absolute;width:350px;height:350px;border-radius:50%;right:-80px;top:-120px;background:radial-gradient(circle,rgba(245,166,35,.1),rgba(25,183,154,.04) 45%,transparent 70%)}.replaced-heading{position:relative;z-index:2;display:grid;grid-template-columns:1fr minmax(280px,.65fr);column-gap:50px;align-items:end;margin-bottom:28px}.replaced-heading .eyebrow{grid-column:1/-1}.replaced-heading h2{font-size:44px;line-height:1.04;letter-spacing:-.045em;margin:10px 0 0}.replaced-heading p{margin:0;color:var(--muted);font-size:14px}.replace-table{position:relative;z-index:2;border:1px solid var(--line);border-radius:16px;overflow:hidden}.replace-row{display:grid;grid-template-columns:1fr 250px;min-height:54px;align-items:center;padding:0 18px;border-bottom:1px solid #e9eef5;font-size:13px}.replace-row:last-child{border-bottom:0}.replace-row:nth-child(even):not(.replace-head){background:#fbfcfe}.replace-head{background:#f5f8fc;color:#42556d;font-size:11px;letter-spacing:.04em}.replace-check{display:flex;align-items:center;gap:8px;color:var(--teal)}.replace-check b{font-size:11px}.replace-summary{position:relative;z-index:2;margin-top:20px;padding-top:20px;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr) auto;gap:18px;align-items:center}.replace-summary span{border-right:1px solid var(--line)}.replace-summary small{display:block;font-size:8px;letter-spacing:.14em;color:#8c99aa;font-weight:800}.replace-summary b{font-size:18px;letter-spacing:-.03em}

/* demo strip + footer */
.demo-strip-section{padding:72px 0}.demo-strip{border:1px solid #efd8ad;border-radius:28px;background:linear-gradient(120deg,#fffaf1 0%,#fff 45%,#f6fffc 100%);padding:38px 42px;display:flex;align-items:center;justify-content:space-between;gap:36px;box-shadow:0 18px 48px rgba(102,80,36,.08)}.demo-strip h2{font-size:38px;line-height:1.06;letter-spacing:-.04em;margin:10px 0 10px;max-width:800px}.demo-strip p{font-size:14px}.site-footer{padding:20px 0 30px;background:#0b1423;color:#eef3f8}.footer-cta{display:flex;align-items:end;justify-content:space-between;gap:40px;padding:46px 0 50px;border-bottom:1px solid rgba(180,196,218,.14)}.footer-cta .eyebrow{color:#e8a637}.footer-cta h2{font-size:44px;max-width:780px}.footer-cta p{color:#9eb0c5;font-size:14px}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,.65fr);gap:56px;padding:48px 0}.footer-grid>div:not(.footer-brand){display:grid;align-content:start;gap:11px}.footer-grid b{font-size:12px;color:#e8edf5}.footer-grid a{font-size:12px;color:#8fa1b6}.footer-grid a:hover{color:#fff}.footer-brand .brand-word{color:#f3f6fb}.footer-brand p{font-size:12px;color:#8fa1b6;max-width:330px;margin:15px 0 0}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(180,196,218,.12);padding-top:20px;color:#74869b;font-size:10px}

/* generic pages */
.page-hero{padding:90px 0 60px;background:linear-gradient(180deg,#fbfdff,#f5f8fc);text-align:center}.page-hero h1{font-size:clamp(46px,6vw,76px);letter-spacing:-.055em;line-height:.98;margin:14px auto 18px;max-width:900px}.page-hero p{max-width:720px;margin:auto;color:var(--muted);font-size:18px}.page-content{padding:90px 0}.simple-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.simple-card{border:1px solid var(--line);border-radius:21px;background:#fff;padding:25px;box-shadow:0 10px 30px rgba(31,54,85,.05)}.simple-card h3{font-size:22px;letter-spacing:-.03em;margin:15px 0 7px}.simple-card p{color:var(--muted);font-size:13px;margin:0}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:stretch}.price-card{border:1px solid var(--line);border-radius:24px;background:#fff;padding:28px;box-shadow:var(--shadow-sm);position:relative}.price-card.featured{border-color:#e7b85d;box-shadow:0 26px 70px rgba(224,153,24,.13);transform:translateY(-8px)}.price-card .badge{display:inline-flex;padding:6px 9px;border-radius:99px;background:var(--amber-soft);color:#ae6d00;font-size:9px;font-weight:800;letter-spacing:.12em}.price-card h3{font-size:24px}.price-card strong{font-size:44px;letter-spacing:-.05em}.price-card strong small{font-size:14px;color:var(--muted);letter-spacing:0}.price-card ul{list-style:none;padding:0;margin:22px 0;display:grid;gap:10px}.price-card li{font-size:13px;color:#596a80}.price-card li:before{content:"✓";color:var(--teal);font-weight:900;margin-right:8px}.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.resource-card{border:1px solid var(--line);border-radius:22px;background:#fff;padding:26px;min-height:220px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:var(--shadow-sm)}.resource-card span{font-size:10px;letter-spacing:.12em;color:#8d9aac;font-weight:800}.resource-card h3{font-size:25px;letter-spacing:-.03em;margin:12px 0}.resource-card p{font-size:13px;color:var(--muted)}

/* forms/contact */
.contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:start}.contact-points{display:grid;gap:12px;margin-top:28px}.contact-points span{display:flex;gap:10px;align-items:center;color:#5c6c82;font-size:13px}.contact-points svg{color:var(--teal)}.demo-form{border:1px solid var(--line);border-radius:26px;background:#fff;padding:28px;box-shadow:var(--shadow)}.form-head{display:flex;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:18px}.form-head>span{width:40px;height:40px;border-radius:12px;background:var(--amber-soft);color:#c17a00;display:grid;place-items:center}.form-head small{font-size:8px;letter-spacing:.14em;color:#8f9aab}.form-head h3{margin:2px 0 0;font-size:24px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid label{display:grid;gap:7px}.form-grid label.full{grid-column:1/-1}.form-grid label>span{font-size:11px;font-weight:760;color:#5b6c82}.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:1px solid var(--line);background:#fbfcfe;border-radius:12px;padding:12px 13px;outline:none;color:var(--text);transition:.2s}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:#a8c8d9;box-shadow:0 0 0 4px rgba(25,183,154,.08);background:#fff}.form-grid textarea{resize:vertical}.demo-form>.btn{margin-top:16px}.form-note{font-size:10px;color:#7f8da0;text-align:center;display:flex;align-items:center;justify-content:center;gap:5px}.form-note svg{color:var(--teal)}.flash-message{padding:13px 15px;border-radius:13px;margin-bottom:16px;font-size:13px;font-weight:700}.flash-message.success{background:var(--teal-soft);color:#167e6b;border:1px solid #bfeadf}.flash-message.error{background:#fff0f2;color:#b44852;border:1px solid #f0c4c9}
.signin-box{max-width:500px;margin:0 auto;border:1px solid var(--line);border-radius:26px;background:#fff;padding:30px;box-shadow:var(--shadow);text-align:center}.signin-box .brand{margin-bottom:20px}.signin-box p{color:var(--muted)}

/* reveal */
.js .reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.75,.2,1)}.js .reveal.visible{opacity:1;transform:none}

/* responsive */
@media(max-width:1100px){
  .desktop-nav{display:none}.header-shell{grid-template-columns:1fr auto}.header-actions .signin-link,.header-actions>.btn{display:none}.menu-toggle{display:grid}.mobile-drawer{display:block;position:fixed;right:0;top:0;width:min(420px,92vw);height:100dvh;background:#fff;z-index:100;transform:translateX(105%);transition:.34s cubic-bezier(.2,.8,.2,1);box-shadow:-25px 0 70px rgba(25,43,66,.18);padding:24px;overflow:auto}.mobile-drawer.open{transform:none}.drawer-backdrop{display:block;position:fixed;inset:0;background:rgba(11,23,41,.28);backdrop-filter:blur(4px);z-index:90;opacity:0;visibility:hidden;transition:.25s}.drawer-backdrop.open{opacity:1;visibility:visible}.mobile-drawer__top{display:flex;align-items:center;justify-content:space-between;padding-bottom:25px;border-bottom:1px solid var(--line)}.mobile-drawer__top button{width:42px;height:42px;border:1px solid var(--line);border-radius:12px;background:#fff;display:grid;place-items:center}.mobile-nav{display:grid;padding:24px 0}.mobile-nav a{display:flex;align-items:center;gap:13px;padding:16px 4px;border-bottom:1px solid var(--line);font-size:20px;font-weight:740}.mobile-nav a span{font-size:10px;color:#9aa6b5}.mobile-drawer__footer{display:grid;gap:12px;padding-top:18px}.mobile-drawer__footer small{font-size:10px;color:#8c99aa;text-transform:uppercase;letter-spacing:.13em}.mobile-drawer__footer>a:not(.btn){font-weight:760;color:#55667b}.hero-grid{grid-template-columns:1fr;gap:30px}.hero-copy{max-width:800px}.hero-orbit{width:min(700px,100%);margin:auto}.module-entry-grid{grid-template-columns:1fr}.module-entry-grid .section-heading{position:relative;top:auto}.coverage-shell{grid-template-columns:1fr;padding:42px}.world-stage{min-height:390px}.simple-grid,.resource-grid,.price-grid{grid-template-columns:repeat(2,1fr)}.price-card.featured{transform:none}
}
@media(max-width:820px){
  .section{padding:82px 0}.container{width:min(calc(100% - 28px),var(--shell))}.announcement__inner a{display:none}.header-shell{height:64px}.brand-word{font-size:18px}.hero-section{padding:64px 0 70px}.hero-copy h1{font-size:clamp(44px,11vw,62px)}.hero-orbit{min-height:450px;transform:scale(.9);transform-origin:center}.stack-shell{padding:22px}.stack-topline{align-items:flex-start;flex-direction:column}.stack-stage{min-height:520px}.scattered-grid{grid-template-columns:repeat(3,1fr)}.ecosystem-board{height:auto;min-height:840px;padding:28px 20px}.ecosystem-lines,.ecosystem-halo{display:none}.eco-core{top:80px;left:50%;translate:-50% 0}.eco-card{position:relative;width:100%;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;margin-top:12px}.eco-card.e1{margin-top:260px}.module-entry-cards{grid-template-columns:1fr}.section-heading.split{grid-template-columns:1fr;gap:10px}.command-grid{grid-template-columns:1fr 1fr}.profit{grid-template-columns:1fr;grid-column:1/-1}.coverage-shell{padding:30px}.coverage-stats{grid-template-columns:repeat(3,1fr)}.pillar-list article{grid-template-columns:40px 1fr 28px;gap:10px}.pillar-separator{display:none}.pillar-list p{grid-column:2/3}.pillar-arrow{grid-column:3;grid-row:1/3}.compliance-compare{grid-template-columns:1fr}.compare-bridge{flex-direction:row}.compare-bridge span{transform:rotate(90deg)}.transformation-grid{grid-template-columns:1fr}.transform-arrow{transform:rotate(90deg)}.replaced-heading{grid-template-columns:1fr}.replaced-heading p{margin-top:10px}.replace-summary{grid-template-columns:repeat(3,1fr)}.replace-summary .btn{grid-column:1/-1}.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.footer-brand{grid-column:1/-1}.footer-cta{align-items:flex-start;flex-direction:column}.contact-layout{grid-template-columns:1fr}
}
@media(max-width:600px){
  body{font-size:15px}.section{padding:68px 0}.announcement{height:28px}.announcement__inner{justify-content:center}.header-shell{height:62px}.hero-section{padding-top:50px}.hero-copy h1{font-size:43px;line-height:1.01}.hero-copy p,.section-heading p{font-size:16px}.hero-actions .btn{width:100%}.inline-proof{gap:9px;display:grid}.hero-orbit{min-height:390px;transform:scale(.78);margin-top:-20px;margin-bottom:-35px}.stack-shell{padding:18px;border-radius:22px}.segmented{width:100%}.segmented button{flex:1}.stack-stage{min-height:700px}.scattered-grid{grid-template-columns:1fr 1fr;gap:10px}.scattered-grid span{min-height:58px;padding:12px;font-size:11px}.stack-friction{align-items:flex-start;justify-content:flex-start;gap:9px;display:grid}.unified-card{padding:20px}.unified-list{grid-template-columns:1fr;gap:10px}.unified-footer{gap:10px;flex-wrap:wrap}.stack-metrics{grid-template-columns:1fr;gap:10px}.stack-metrics span{justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:9px}.ecosystem-board{min-height:900px}.module-entry-grid .section-heading h2,.section-heading h2{font-size:38px}.module-entry-cards a{grid-template-columns:40px 1fr}.module-entry-cards a>svg{display:none}.command-grid{grid-template-columns:1fr}.command-card{min-height:auto}.profit{grid-template-columns:1fr}.coverage-shell{padding:24px;border-radius:24px}.coverage-copy h2{font-size:42px}.coverage-stats{grid-template-columns:1fr}.coverage-stats span,.coverage-stats span+span{border-left:0;border-bottom:1px solid var(--line);padding:12px 0}.coverage-stats span:last-child{border-bottom:0}.world-stage{min-height:310px;margin-top:8px}.world-stage img{height:280px;top:5px}.region-node{font-size:7px;padding:6px 7px}.north-america{left:7%;top:28%}.canada{left:24%;top:15%}.europe{left:57%;top:27%}.uk{right:7%;top:42%}.uae{left:62%;bottom:18%}.pillar-block{padding:22px;border-radius:22px}.pillar-heading h2{font-size:31px}.pillar-list article{grid-template-columns:34px 1fr 22px;padding:11px;min-height:84px}.pillar-icon{width:34px;height:34px}.pillar-list p{font-size:11px}.assistant-head{align-items:flex-start;flex-direction:column}.assistant-body{padding:17px}.user-bubble{max-width:90%}.ai-response{width:100%;grid-template-columns:30px 1fr}.assistant-avatar{width:30px;height:30px}.trans-card{padding:22px}.data-table-card{padding:17px}.table-heading{align-items:flex-start}.table-heading h3{font-size:24px}.replaced-shell{padding:22px}.replaced-heading h2{font-size:34px}.replace-row{grid-template-columns:1fr 90px;padding:0 12px;font-size:11px}.replace-check b{display:none}.replace-summary{grid-template-columns:1fr}.replace-summary span{border-right:0;border-bottom:1px solid var(--line);padding-bottom:10px}.replace-summary .btn{grid-column:auto;width:100%}.demo-strip{padding:26px;flex-direction:column;align-items:flex-start}.demo-strip h2{font-size:32px}.demo-strip .btn{width:100%}.footer-cta h2{font-size:36px}.footer-cta .btn{width:100%}.footer-grid{grid-template-columns:1fr 1fr}.footer-bottom{flex-direction:column}.simple-grid,.resource-grid,.price-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-grid label.full{grid-column:auto}.page-hero{padding:64px 0 48px}.page-hero h1{font-size:46px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.js .reveal{opacity:1;transform:none}.ecosystem-lines animateMotion,.world-routes animateMotion{display:none}}
.brand.logo-replay .brand-mark{animation:logoReveal .7s cubic-bezier(.2,.8,.2,1) both,logoFloat 4s ease-in-out .8s infinite!important}.brand.logo-replay .brand-word b{animation:wordReveal .55s .08s both!important}.brand.logo-replay .brand-word em{animation:wordReveal .55s .15s both!important}.world-stage img{transition:transform .45s cubic-bezier(.2,.75,.2,1)}
.hp-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
/* =========================================================
   COMPLYVA — GLOBAL COVERAGE
   Animated global Amazon operating network
   ========================================================= */

.coverage-section{
    position:relative;
    padding-top:105px;
    overflow:hidden;
}

.coverage-shell{
    position:relative;
    display:grid;
    grid-template-columns:minmax(310px,.72fr) minmax(560px,1.28fr);
    align-items:center;
    gap:20px;

    min-height:680px;

    padding:64px 64px 64px 58px;

    border:1px solid rgba(57,84,118,.12);
    border-radius:34px;

    background:
        radial-gradient(
            circle at 83% 23%,
            rgba(25,183,154,.095),
            transparent 25%
        ),
        radial-gradient(
            circle at 70% 82%,
            rgba(55,124,245,.055),
            transparent 32%
        ),
        linear-gradient(
            135deg,
            #ffffff 0%,
            #f8fbff 52%,
            #fffdf8 100%
        );

    box-shadow:
        0 34px 85px rgba(31,55,84,.11);

    overflow:hidden;
}

.coverage-shell::before{
    content:"";
    position:absolute;
    inset:0;

    background-image:
        linear-gradient(
            rgba(70,99,134,.027) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(70,99,134,.027) 1px,
            transparent 1px
        );

    background-size:42px 42px;

    mask-image:
        linear-gradient(
            90deg,
            transparent,
            rgba(0,0,0,.55) 35%,
            rgba(0,0,0,.25),
            transparent
        );

    pointer-events:none;
}

.coverage-shell::after{
    content:"";
    position:absolute;

    width:650px;
    height:650px;

    right:-220px;
    top:-290px;

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(25,183,154,.085),
            rgba(55,124,245,.025) 40%,
            transparent 69%
        );

    pointer-events:none;
}


/* ==========================================
   LEFT COPY
   ========================================== */

.coverage-copy{
    position:relative;
    z-index:10;
}

.coverage-copy h2{
    max-width:465px;

    margin:15px 0 22px;

    font-size:clamp(52px,5vw,76px);
    line-height:.94;

    letter-spacing:-.058em;
}

.coverage-copy p{
    max-width:430px;

    margin:0;

    color:#64758d;

    font-size:15px;
    line-height:1.7;
}

.coverage-stats{
    display:grid;
    grid-template-columns:repeat(3,1fr);

    max-width:430px;

    margin:30px 0;

    border-top:1px solid rgba(46,70,101,.13);
    border-bottom:1px solid rgba(46,70,101,.13);
}

.coverage-stats span{
    min-height:100px;

    display:flex;
    flex-direction:column;
    justify-content:center;

    padding:18px 20px 17px 0;
}

.coverage-stats span + span{
    padding-left:20px;
    border-left:1px solid rgba(46,70,101,.13);
}

.coverage-stats b{
    color:#0d1b30;

    font-size:30px;
    line-height:1;

    letter-spacing:-.045em;
}

.coverage-stats small{
    display:block;

    margin-top:7px;

    color:#8291a5;

    font-size:9px;
    line-height:1.35;
}

.coverage-copy .btn{
    box-shadow:
        0 13px 30px rgba(245,166,35,.23);
}


/* ==========================================
   GLOBAL STAGE
   ========================================== */

.cv-global-stage{
    --globe-x:0px;
    --globe-y:0px;

    position:relative;
    z-index:5;

    width:100%;
    min-height:570px;

    display:grid;
    place-items:center;

    perspective:1200px;

    transform-style:preserve-3d;
}

.cv-global-stage::before{
    content:"";

    position:absolute;

    width:84%;
    height:84%;

    left:50%;
    top:50%;

    transform:
        translate(-50%,-50%)
        translate(var(--globe-x),var(--globe-y));

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(255,255,255,.96) 0%,
            rgba(240,248,251,.48) 35%,
            rgba(25,183,154,.025) 60%,
            transparent 72%
        );

    filter:blur(2px);

    transition:transform .25s ease-out;

    pointer-events:none;
}


/* ==========================================
   BACKGROUND GLOWS
   ========================================== */

.cv-global-glow{
    position:absolute;

    border-radius:50%;

    filter:blur(25px);

    pointer-events:none;
}

.cv-global-glow-one{
    width:310px;
    height:310px;

    right:17%;
    top:6%;

    background:
        radial-gradient(
            circle,
            rgba(25,183,154,.11),
            transparent 68%
        );

    animation:
        globalGlowOne 7s ease-in-out infinite;
}

.cv-global-glow-two{
    width:300px;
    height:300px;

    left:16%;
    bottom:2%;

    background:
        radial-gradient(
            circle,
            rgba(55,124,245,.08),
            transparent 70%
        );

    animation:
        globalGlowTwo 8s ease-in-out infinite;
}


/* ==========================================
   GLOBE
   ========================================== */

.cv-globe-wrap{
    position:absolute;

    left:50%;
    top:50%;

    width:min(510px,76%);
    aspect-ratio:1;

    transform:
        translate(-50%,-50%)
        translate(var(--globe-x),var(--globe-y));

    transition:transform .26s ease-out;

    transform-style:preserve-3d;
}

.cv-globe{
    position:absolute;
    inset:0;

    border-radius:50%;

    transform-style:preserve-3d;

    animation:
        globeAmbientFloat 7s ease-in-out infinite;
}

.cv-globe::before{
    content:"";

    position:absolute;
    inset:3.3%;

    z-index:0;

    border-radius:50%;

    border:1px solid rgba(88,118,151,.11);

    box-shadow:
        inset -35px -35px 70px rgba(74,116,156,.055),
        inset 28px 28px 70px rgba(255,255,255,.9),
        0 35px 65px rgba(47,74,104,.10);
}

.cv-globe::after{
    content:"";

    position:absolute;

    inset:-6%;

    z-index:-1;

    border-radius:50%;

    border:1px solid rgba(62,111,155,.075);

    animation:
        globePulse 4.8s ease-in-out infinite;
}

.cv-globe-shadow{
    position:absolute;

    width:72%;
    height:12%;

    left:14%;
    bottom:-5%;

    border-radius:50%;

    background:
        radial-gradient(
            ellipse,
            rgba(31,63,91,.15),
            rgba(31,63,91,.045) 45%,
            transparent 72%
        );

    filter:blur(13px);

    animation:
        globeShadow 7s ease-in-out infinite;
}

.cv-globe-aura{
    position:absolute;

    inset:-12%;

    z-index:-2;

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(25,183,154,.10),
            rgba(55,124,245,.035) 37%,
            transparent 67%
        );

    animation:
        globeAura 6s ease-in-out infinite;
}

.cv-globe-svg{
    position:absolute;

    inset:0;

    z-index:2;

    width:100%;
    height:100%;

    overflow:visible;

    filter:
        drop-shadow(0 20px 35px rgba(38,67,97,.065));
}


/* ==========================================
   INTERNAL GLOBE MOTION
   ========================================== */

.cv-globe-grid{
    transform-box:fill-box;
    transform-origin:center;

    animation:
        internalSphereRotate 16s linear infinite;
}

.cv-grid-line{
    fill:none;

    stroke:rgba(66,102,139,.17);

    stroke-width:1.3;

    vector-effect:non-scaling-stroke;
}

.cv-grid-line.soft{
    stroke:rgba(66,102,139,.12);
}

.cv-grid-line.softer{
    stroke:rgba(66,102,139,.075);
}

.cv-world-dots{
    fill:#bdcddd;

    opacity:.56;

    transform-box:fill-box;
    transform-origin:center;

    animation:
        continentDrift 12s ease-in-out infinite;
}

.cv-world-dots circle:nth-child(3n){
    fill:#aec5d8;
}

.cv-world-dots circle:nth-child(4n){
    opacity:.72;
}


/* ==========================================
   ROUTES
   ========================================== */

.cv-route{
    fill:none;

    stroke-width:2;

    stroke-linecap:round;

    stroke-dasharray:7 9;

    animation:
        globalRouteDash 13s linear infinite;
}

.route-teal{
    stroke:url(#cvRouteTeal);
}

.route-amber{
    stroke:url(#cvRouteAmber);
}

.route-blue{
    stroke:url(#cvRouteBlue);
}

.route-violet{
    stroke:#846ff1;
    stroke-opacity:.48;
}

.cv-travel-dot.teal{
    fill:#19b79a;
}

.cv-travel-dot.amber{
    fill:#f5a623;
}

.cv-travel-dot.blue{
    fill:#377cf5;
}

.cv-travel-dot.violet{
    fill:#806af2;
}


/* ==========================================
   ACTIVE POINTS
   ========================================== */

.node-halo{
    opacity:.14;

    transform-box:fill-box;
    transform-origin:center;

    animation:
        nodeHaloPulse 2.4s ease-out infinite;
}

.node-core{
    filter:
        drop-shadow(0 0 6px currentColor);
}

.node-core.amber,
.node-halo.amber{
    fill:#f5a623;
}

.node-core.teal,
.node-halo.teal{
    fill:#19b79a;
}

.node-core.blue,
.node-halo.blue{
    fill:#377cf5;
}


/* ==========================================
   CORE BRAND INSIDE GLOBE
   ========================================== */

.cv-globe-core{
    position:absolute;

    left:50%;
    top:50%;

    z-index:8;

    width:172px;

    transform:
        translate(-50%,-50%)
        translateZ(40px);

    display:flex;
    align-items:center;
    gap:11px;

    padding:13px 16px;

    border:1px solid rgba(54,82,116,.11);
    border-radius:18px;

    background:
        rgba(255,255,255,.78);

    backdrop-filter:
        blur(18px);

    box-shadow:
        0 17px 38px rgba(45,75,107,.11);

    animation:
        coreFloat 4s ease-in-out infinite;
}

.cv-globe-core .brand-mark{
    flex:0 0 auto;
}

.cv-globe-core b{
    display:block;

    color:#102039;

    font-size:12px;
}

.cv-globe-core small{
    display:block;

    margin-top:2px;

    color:#8290a3;

    font-size:6px;
    line-height:1.25;

    letter-spacing:.08em;
    text-transform:uppercase;
}


/* ==========================================
   OUTER ORBIT LINES
   ========================================== */

.cv-space-orbit{
    position:absolute;

    left:50%;
    top:50%;

    z-index:1;

    border:1px solid rgba(62,105,149,.12);
    border-radius:50%;

    pointer-events:none;

    transform-style:preserve-3d;
}

.cv-space-orbit-one{
    width:94%;
    height:46%;

    transform:
        translate(-50%,-50%)
        rotate(-10deg);

    animation:
        outerOrbitOne 10s ease-in-out infinite;
}

.cv-space-orbit-two{
    width:69%;
    height:89%;

    transform:
        translate(-50%,-50%)
        rotate(28deg);

    animation:
        outerOrbitTwo 12s ease-in-out infinite;
}

.cv-space-orbit-three{
    width:96%;
    height:65%;

    border-color:rgba(25,183,154,.10);

    transform:
        translate(-50%,-50%)
        rotate(17deg);

    animation:
        outerOrbitThree 14s ease-in-out infinite;
}

.cv-orbit-particle{
    position:absolute;

    width:8px;
    height:8px;

    border-radius:50%;

    background:#19b79a;

    box-shadow:
        0 0 0 7px rgba(25,183,154,.07),
        0 0 16px rgba(25,183,154,.32);
}

.particle-a{
    left:68%;
    top:-4px;

    animation:
        orbitParticlePulse 2s ease-in-out infinite;
}

.particle-b{
    left:-4px;
    top:48%;

    background:#f5a623;

    box-shadow:
        0 0 0 7px rgba(245,166,35,.07),
        0 0 16px rgba(245,166,35,.32);

    animation:
        orbitParticlePulse 2.5s ease-in-out infinite;
}

.particle-c{
    right:8%;
    bottom:9%;

    background:#7a61f2;

    box-shadow:
        0 0 0 7px rgba(122,97,242,.07),
        0 0 16px rgba(122,97,242,.32);

    animation:
        orbitParticlePulse 2.2s ease-in-out infinite;
}


/* ==========================================
   MARKETPLACE LABELS
   ========================================== */

.cv-market-node{
    position:absolute;

    z-index:12;

    min-width:154px;

    display:flex;
    align-items:center;
    gap:10px;

    padding:11px 13px;

    border:1px solid rgba(54,84,118,.11);
    border-radius:15px;

    background:
        rgba(255,255,255,.88);

    backdrop-filter:
        blur(18px);

    box-shadow:
        0 14px 34px rgba(37,66,98,.10);

    animation:
        marketNodeFloat 5s ease-in-out infinite;

    transition:
        border-color .25s ease,
        transform .25s ease,
        box-shadow .25s ease;
}

.cv-market-node:hover{
    border-color:rgba(25,183,154,.25);

    box-shadow:
        0 18px 42px rgba(37,66,98,.14);
}

.cv-market-node b{
    display:block;

    color:#33465e;

    font-size:10px;
}

.cv-market-node small{
    display:block;

    margin-top:2px;

    color:#91a0b2;

    font-size:7px;
}

.cv-market-dot{
    width:9px;
    height:9px;

    flex:0 0 auto;

    border-radius:50%;
}

.cv-market-dot.amber{
    background:#f5a623;

    box-shadow:
        0 0 0 6px rgba(245,166,35,.10),
        0 0 14px rgba(245,166,35,.25);
}

.cv-market-dot.teal{
    background:#19b79a;

    box-shadow:
        0 0 0 6px rgba(25,183,154,.10),
        0 0 14px rgba(25,183,154,.25);
}

.cv-market-dot.blue{
    background:#377cf5;

    box-shadow:
        0 0 0 6px rgba(55,124,245,.10),
        0 0 14px rgba(55,124,245,.25);
}

.cv-market-dot.violet{
    background:#7a61f2;

    box-shadow:
        0 0 0 6px rgba(122,97,242,.10),
        0 0 14px rgba(122,97,242,.25);
}

.market-na{
    left:2%;
    top:35%;

    animation-delay:-1s;
}

.market-eu{
    right:2%;
    top:24%;

    animation-delay:-2.1s;
}

.market-uk{
    right:-1%;
    top:57%;

    animation-delay:-3.2s;
}

.market-uae{
    right:14%;
    bottom:4%;

    animation-delay:-1.7s;
}


/* ==========================================
   LIVE LABEL
   ========================================== */

.cv-global-live{
    position:absolute;

    z-index:12;

    left:50%;
    bottom:1%;

    transform:translateX(-50%);

    display:flex;
    align-items:center;
    gap:8px;

    padding:8px 12px;

    border:1px solid rgba(66,92,122,.10);
    border-radius:999px;

    background:
        rgba(255,255,255,.72);

    backdrop-filter:blur(14px);

    color:#7c8ba0;

    font-size:7px;
    font-weight:800;

    letter-spacing:.14em;
}

.cv-global-live span{
    width:7px;
    height:7px;

    border-radius:50%;

    background:#19b79a;

    box-shadow:
        0 0 0 5px rgba(25,183,154,.09);

    animation:
        liveSignal 1.7s ease-in-out infinite;
}


/* ==========================================
   KEYFRAMES
   ========================================== */

@keyframes globeAmbientFloat{
    0%,
    100%{
        transform:
            translateY(0)
            rotateX(0deg)
            rotateY(0deg);
    }

    50%{
        transform:
            translateY(-9px)
            rotateX(1.5deg)
            rotateY(-1.5deg);
    }
}

@keyframes internalSphereRotate{
    from{
        transform:rotate(0deg);
    }

    to{
        transform:rotate(360deg);
    }
}

@keyframes continentDrift{
    0%,
    100%{
        transform:
            translateX(-2px)
            translateY(0)
            scale(1);
    }

    50%{
        transform:
            translateX(7px)
            translateY(-2px)
            scale(1.012);
    }
}

@keyframes globePulse{
    0%,
    100%{
        transform:scale(.97);
        opacity:.45;
    }

    50%{
        transform:scale(1.035);
        opacity:.9;
    }
}

@keyframes globeAura{
    0%,
    100%{
        transform:scale(.96);
        opacity:.6;
    }

    50%{
        transform:scale(1.05);
        opacity:1;
    }
}

@keyframes globeShadow{
    0%,
    100%{
        transform:scaleX(.92);
        opacity:.55;
    }

    50%{
        transform:scaleX(1.05);
        opacity:.85;
    }
}

@keyframes coreFloat{
    0%,
    100%{
        transform:
            translate(-50%,-50%)
            translateZ(40px)
            translateY(0);
    }

    50%{
        transform:
            translate(-50%,-50%)
            translateZ(40px)
            translateY(-5px);
    }
}

@keyframes globalRouteDash{
    to{
        stroke-dashoffset:-130;
    }
}

@keyframes nodeHaloPulse{
    0%{
        transform:scale(.55);
        opacity:.4;
    }

    75%,
    100%{
        transform:scale(2.2);
        opacity:0;
    }
}

@keyframes outerOrbitOne{
    0%,
    100%{
        transform:
            translate(-50%,-50%)
            rotate(-10deg)
            scale(1);
    }

    50%{
        transform:
            translate(-50%,-50%)
            rotate(-4deg)
            scale(1.02);
    }
}

@keyframes outerOrbitTwo{
    0%,
    100%{
        transform:
            translate(-50%,-50%)
            rotate(28deg);
    }

    50%{
        transform:
            translate(-50%,-50%)
            rotate(34deg);
    }
}

@keyframes outerOrbitThree{
    0%,
    100%{
        transform:
            translate(-50%,-50%)
            rotate(17deg);
    }

    50%{
        transform:
            translate(-50%,-50%)
            rotate(11deg)
            scale(1.025);
    }
}

@keyframes orbitParticlePulse{
    0%,
    100%{
        transform:scale(.8);
    }

    50%{
        transform:scale(1.35);
    }
}

@keyframes marketNodeFloat{
    0%,
    100%{
        translate:0 0;
    }

    50%{
        translate:0 -8px;
    }
}

@keyframes liveSignal{
    0%,
    100%{
        opacity:.55;
        transform:scale(.78);
    }

    50%{
        opacity:1;
        transform:scale(1.14);
    }
}

@keyframes globalGlowOne{
    0%,
    100%{
        transform:translate3d(0,0,0) scale(.9);
    }

    50%{
        transform:translate3d(-18px,14px,0) scale(1.08);
    }
}

@keyframes globalGlowTwo{
    0%,
    100%{
        transform:translate3d(0,0,0);
    }

    50%{
        transform:translate3d(18px,-12px,0);
    }
}


/* ==========================================
   TABLET
   ========================================== */

@media(max-width:1100px){

    .coverage-shell{
        grid-template-columns:1fr;
        gap:15px;

        padding:48px;

        min-height:unset;
    }

    .coverage-copy{
        max-width:700px;
    }

    .coverage-copy h2{
        max-width:600px;
    }

    .coverage-copy p{
        max-width:600px;
    }

    .coverage-stats{
        max-width:520px;
    }

    .cv-global-stage{
        min-height:590px;

        margin-top:10px;
    }

    .cv-globe-wrap{
        width:min(500px,72vw);
    }

}


/* ==========================================
   MOBILE
   ========================================== */

@media(max-width:700px){

    .coverage-section{
        padding-top:75px;
    }

    .coverage-shell{
        padding:
            30px
            20px
            25px;

        border-radius:26px;
    }

    .coverage-copy h2{
        max-width:330px;

        font-size:45px;
        line-height:.98;
    }

    .coverage-copy p{
        font-size:14px;
    }

    .coverage-stats{
        grid-template-columns:1fr;
    }

    .coverage-stats span{
        min-height:auto;

        padding:14px 0;
    }

    .coverage-stats span + span{
        padding-left:0;

        border-left:0;
        border-top:1px solid rgba(46,70,101,.12);
    }

    .coverage-copy .btn{
        width:100%;
    }

    .cv-global-stage{
        min-height:480px;

        margin-top:12px;

        transform:scale(.93);

        transform-origin:center top;
    }

    .cv-globe-wrap{
        width:340px;
        max-width:82vw;
    }

    .cv-market-node{
        min-width:auto;

        padding:8px 9px;
    }

    .cv-market-node small{
        display:none;
    }

    .cv-market-node b{
        font-size:8px;
    }

    .market-na{
        left:-1%;
        top:33%;
    }

    .market-eu{
        right:-1%;
        top:20%;
    }

    .market-uk{
        right:-3%;
        top:56%;
    }

    .market-uae{
        right:8%;
        bottom:5%;
    }

    .cv-global-live{
        bottom:-1%;

        white-space:nowrap;
    }

    .cv-globe-core{
        width:145px;

        padding:10px 12px;
    }

}


/* ==========================================
   REDUCED MOTION
   ========================================== */

@media(prefers-reduced-motion:reduce){

    .cv-globe,
    .cv-globe-grid,
    .cv-world-dots,
    .cv-globe::after,
    .cv-globe-aura,
    .cv-globe-shadow,
    .cv-globe-core,
    .cv-space-orbit,
    .cv-orbit-particle,
    .cv-market-node,
    .cv-global-live span,
    .cv-global-glow{
        animation:none !important;
    }

}
/* ================================
   MOBILE DRAWER — SAFE DEFAULT STATE
   ================================ */

.mobile-drawer{
    display:none;
    position:fixed;
    top:0;
    right:0;

    width:min(420px, 92vw);
    max-width:100%;

    height:100vh;
    height:100dvh;

    background:#fff;

    z-index:1200;

    transform:translate3d(110%,0,0);
    opacity:0;
    visibility:hidden;
    pointer-events:none;

    overflow-y:auto;
    overflow-x:hidden;

    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;

    transition:
        transform .34s cubic-bezier(.2,.8,.2,1),
        opacity .25s ease,
        visibility .25s ease;

    box-shadow:-25px 0 70px rgba(25,43,66,.18);
}

.drawer-backdrop{
    display:none;

    position:fixed;
    inset:0;

    z-index:1190;

    background:rgba(11,23,41,.32);
    backdrop-filter:blur(4px);
    -webkit-backdrop-filter:blur(4px);

    opacity:0;
    visibility:hidden;
    pointer-events:none;

    transition:
        opacity .25s ease,
        visibility .25s ease;
}


/* drawer will only appear with this class */
.mobile-drawer.open{
    transform:translate3d(0,0,0);
    opacity:1;
    visibility:visible;
    pointer-events:auto;
}

.drawer-backdrop.open{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
}


/* Stop page movement only when menu is actually open */
body.drawer-open{
    overflow:hidden !important;
    touch-action:none;
}
/* =========================================================
   COMPLYVA ECOSYSTEM V2
   10 capabilities → every card connected to center
   ========================================================= */

.ecosystem-section{
    position:relative;
    overflow:hidden;
}

.ecosystem-heading{
    max-width:780px;
    margin-inline:auto;
    margin-bottom:42px;
}

.ecosystem-heading h2{
    max-width:720px;
    margin-inline:auto;

    /* Maximum 3 lines */
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;
    overflow:hidden;
}

.ecosystem-heading p{
    max-width:690px;
    margin-inline:auto;

    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;
    overflow:hidden;
}


/* ==============================
   MAIN BOARD
   ============================== */

.ecosystem-board-v2{
    position:relative;

    width:100%;
    min-height:820px;

    overflow:hidden;

    border:1px solid rgba(48,73,104,.12);
    border-radius:32px;

    background:
        radial-gradient(
            circle at 50% 50%,
            rgba(26,183,154,.085),
            transparent 21%
        ),
        radial-gradient(
            circle at 52% 47%,
            rgba(245,166,35,.055),
            transparent 38%
        ),
        linear-gradient(
            145deg,
            #fbfdff 0%,
            #f6f9fd 45%,
            #fbfcff 100%
        );

    box-shadow:
        0 32px 85px rgba(36,58,88,.10);

    isolation:isolate;
}


/* subtle grid */

.ecosystem-grid-bg{
    position:absolute;
    inset:0;
    z-index:-5;

    opacity:.42;

    background-image:
        linear-gradient(
            rgba(67,95,130,.06) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(67,95,130,.06) 1px,
            transparent 1px
        );

    background-size:42px 42px;

    mask-image:
        radial-gradient(
            circle at center,
            black,
            transparent 80%
        );
}


/* ==============================
   HALOS
   ============================== */

.ecosystem-halo{
    position:absolute;

    left:50%;
    top:50%;

    border:1px solid rgba(70,101,138,.10);
    border-radius:50%;

    pointer-events:none;

    transform:translate(-50%,-50%);
}

.halo-1{
    width:230px;
    height:230px;

    animation:ecoHaloPulse 5s ease-in-out infinite;
}

.halo-2{
    width:370px;
    height:370px;

    border-color:rgba(25,183,154,.10);

    animation:ecoHaloRotate 22s linear infinite;
}

.halo-3{
    width:510px;
    height:510px;

    animation:ecoHaloRotateReverse 30s linear infinite;
}

.halo-4{
    width:680px;
    height:680px;

    opacity:.5;

    animation:ecoHaloPulseLarge 8s ease-in-out infinite;
}


/* ==============================
   SVG CONNECTORS
   ============================== */

.ecosystem-connectors{
    position:absolute;
    inset:0;

    z-index:2;

    width:100%;
    height:100%;

    overflow:visible;

    pointer-events:none;
}

.ecosystem-connector-line{
    fill:none;

    stroke:rgba(82,116,151,.24);
    stroke-width:1.3;

    stroke-linecap:round;

    stroke-dasharray:5 8;

    animation:
        ecosystemLineFlow 12s linear infinite;
}

.ecosystem-connector-line:nth-child(3n + 1){
    stroke:rgba(25,183,154,.45);
}

.ecosystem-connector-line:nth-child(3n + 2){
    stroke:rgba(245,166,35,.43);
}

.ecosystem-connector-line:nth-child(3n + 3){
    stroke:rgba(116,93,238,.36);
}


/* moving point generated by JS */

.ecosystem-signal-dot{
    filter:
        drop-shadow(0 0 7px currentColor);
}


/* ==============================
   CENTRAL CORE
   ============================== */

.ecosystem-core-v2{
    position:absolute;

    z-index:10;

    left:50%;
    top:50%;

    width:180px;
    height:180px;

    transform:translate(-50%,-50%);

    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;

    text-align:center;

    border:1px solid rgba(245,166,35,.42);
    border-radius:50%;

    background:
        radial-gradient(
            circle at 40% 28%,
            #ffffff,
            #fffdf7 66%,
            #f8f2e4
        );

    box-shadow:
        0 24px 55px rgba(31,57,87,.12),
        0 0 0 15px rgba(255,255,255,.54),
        0 0 70px rgba(245,166,35,.13);

    animation:
        ecosystemCoreFloat 5s ease-in-out infinite;
}

.ecosystem-core-glow{
    position:absolute;

    inset:-42px;

    z-index:-1;

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(245,166,35,.11),
            rgba(25,183,154,.055) 40%,
            transparent 69%
        );

    animation:
        ecosystemCoreGlow 4.5s ease-in-out infinite;
}

.ecosystem-core-v2 .brand-mark{
    width:48px;
    height:48px;

    margin-bottom:10px;
}

.ecosystem-core-v2 strong{
    color:#0d1a2d;

    font-size:17px;
    letter-spacing:-.025em;
}

.ecosystem-core-v2 small{
    margin-top:3px;

    color:#8190a4;

    font-size:8px;
}

.ecosystem-core-v2 em{
    display:flex;
    align-items:center;
    gap:5px;

    margin-top:10px;

    color:#13a88d;

    font-size:7px;
    font-style:normal;
    font-weight:800;

    letter-spacing:.12em;
}

.ecosystem-core-v2 em i{
    width:6px;
    height:6px;

    border-radius:50%;

    background:#15b999;

    box-shadow:
        0 0 0 5px rgba(21,185,153,.08);

    animation:
        ecoLivePulse 1.7s infinite;
}


/* ==============================
   CAPABILITY CARDS
   ============================== */

.ecosystem-capability{
    position:absolute;

    z-index:6;

    width:215px;
    min-height:130px;

    padding:16px;

    border:1px solid rgba(52,79,111,.11);
    border-radius:17px;

    background:
        rgba(255,255,255,.92);

    backdrop-filter:blur(17px);
    -webkit-backdrop-filter:blur(17px);

    box-shadow:
        0 16px 38px rgba(38,62,91,.09);

    transition:
        transform .3s ease,
        border-color .3s ease,
        box-shadow .3s ease;
}

.ecosystem-capability:hover{
    z-index:15;

    transform:translateY(-5px);

    border-color:rgba(25,183,154,.24);

    box-shadow:
        0 23px 48px rgba(38,62,91,.14);
}

.ecosystem-card-top{
    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:8px;

    margin-bottom:11px;
}

.ecosystem-card-top > span{
    color:#8b9aab;

    font-size:6px;
    font-weight:800;

    letter-spacing:.15em;
}

.eco-status{
    width:6px;
    height:6px;

    flex:none;

    border-radius:50%;
}

.eco-status.teal{
    background:#19b79a;
    box-shadow:0 0 10px rgba(25,183,154,.48);
}

.eco-status.blue{
    background:#377cf5;
    box-shadow:0 0 10px rgba(55,124,245,.48);
}

.eco-status.amber{
    background:#f5a623;
    box-shadow:0 0 10px rgba(245,166,35,.48);
}

.eco-status.violet{
    background:#7963ef;
    box-shadow:0 0 10px rgba(121,99,239,.48);
}

.eco-status.red{
    background:#ed665f;
    box-shadow:0 0 10px rgba(237,102,95,.48);
}


/* icons */

.eco-icon{
    width:30px;
    height:30px;

    display:grid;
    place-items:center;

    margin-bottom:10px;

    border-radius:9px;
}

.eco-icon.teal{
    color:#109f87;
    background:rgba(25,183,154,.09);
}

.eco-icon.blue{
    color:#3274e6;
    background:rgba(55,124,245,.09);
}

.eco-icon.amber{
    color:#d88800;
    background:rgba(245,166,35,.11);
}

.eco-icon.violet{
    color:#755ee1;
    background:rgba(121,99,239,.09);
}

.eco-icon.red{
    color:#df5a53;
    background:rgba(237,102,95,.09);
}


/* max three lines */

.ecosystem-capability h3{
    margin:0;

    color:#132139;

    font-size:13px;
    line-height:1.25;

    letter-spacing:-.02em;

    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;

    overflow:hidden;
}

.ecosystem-capability p{
    margin:6px 0 0;

    color:#718197;

    font-size:9px;
    line-height:1.45;

    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;

    overflow:hidden;
}


/* ==============================
   DESKTOP POSITIONS
   ============================== */

.eco-pos-1{
    left:4%;
    top:7%;
}

.eco-pos-2{
    left:29%;
    top:4%;
}

.eco-pos-3{
    right:29%;
    top:4%;
}

.eco-pos-4{
    right:4%;
    top:7%;
}


.eco-pos-5{
    left:2%;
    top:41%;
}

.eco-pos-6{
    right:2%;
    top:41%;
}


.eco-pos-7{
    left:5%;
    bottom:6%;
}

.eco-pos-8{
    left:29%;
    bottom:3%;
}

.eco-pos-9{
    right:29%;
    bottom:3%;
}

.eco-pos-10{
    right:5%;
    bottom:6%;
}


/* ==============================
   STATUS
   ============================== */

.ecosystem-live-status{
    position:absolute;

    z-index:8;

    left:50%;
    bottom:18px;

    transform:translateX(-50%);

    display:flex;
    align-items:center;
    gap:8px;

    padding:8px 13px;

    border:1px solid rgba(53,80,113,.10);
    border-radius:999px;

    background:rgba(255,255,255,.80);

    backdrop-filter:blur(14px);

    color:#8392a5;

    font-size:7px;
    font-weight:800;

    letter-spacing:.12em;

    white-space:nowrap;
}

.ecosystem-live-status i{
    width:6px;
    height:6px;

    border-radius:50%;

    background:#19b79a;

    animation:ecoLivePulse 1.7s infinite;
}


/* =========================================================
   ANIMATIONS
   ========================================================= */

@keyframes ecosystemLineFlow{
    to{
        stroke-dashoffset:-150;
    }
}

@keyframes ecosystemCoreFloat{
    0%,
    100%{
        transform:
            translate(-50%,-50%)
            translateY(0);
    }

    50%{
        transform:
            translate(-50%,-50%)
            translateY(-8px);
    }
}

@keyframes ecosystemCoreGlow{
    0%,
    100%{
        transform:scale(.92);
        opacity:.62;
    }

    50%{
        transform:scale(1.08);
        opacity:1;
    }
}

@keyframes ecoHaloPulse{
    0%,
    100%{
        transform:
            translate(-50%,-50%)
            scale(.94);

        opacity:.55;
    }

    50%{
        transform:
            translate(-50%,-50%)
            scale(1.05);

        opacity:1;
    }
}

@keyframes ecoHaloPulseLarge{
    0%,
    100%{
        transform:
            translate(-50%,-50%)
            scale(.96);
    }

    50%{
        transform:
            translate(-50%,-50%)
            scale(1.025);
    }
}

@keyframes ecoHaloRotate{
    from{
        transform:
            translate(-50%,-50%)
            rotate(0deg);
    }

    to{
        transform:
            translate(-50%,-50%)
            rotate(360deg);
    }
}

@keyframes ecoHaloRotateReverse{
    from{
        transform:
            translate(-50%,-50%)
            rotate(360deg);
    }

    to{
        transform:
            translate(-50%,-50%)
            rotate(0deg);
    }
}

@keyframes ecoLivePulse{
    0%,
    100%{
        opacity:.55;
        transform:scale(.78);
    }

    50%{
        opacity:1;
        transform:scale(1.16);
    }
}


/* =========================================================
   TABLET
   ========================================================= */

@media(max-width:1100px){

    .ecosystem-board-v2{
        min-height:1000px;
    }

    .ecosystem-capability{
        width:190px;
    }


    .eco-pos-1{
        left:3%;
        top:5%;
    }

    .eco-pos-2{
        left:27%;
        top:3%;
    }

    .eco-pos-3{
        right:27%;
        top:3%;
    }

    .eco-pos-4{
        right:3%;
        top:5%;
    }


    .eco-pos-5{
        left:3%;
        top:32%;
    }

    .eco-pos-6{
        right:3%;
        top:32%;
    }


    .eco-pos-7{
        left:3%;
        bottom:6%;
    }

    .eco-pos-8{
        left:27%;
        bottom:3%;
    }

    .eco-pos-9{
        right:27%;
        bottom:3%;
    }

    .eco-pos-10{
        right:3%;
        bottom:6%;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media(max-width:760px){

    .ecosystem-heading{
        margin-bottom:26px;
    }

    .ecosystem-board-v2{
        display:grid;

        grid-template-columns:1fr;
        gap:12px;

        min-height:unset;

        padding:
            205px
            14px
            60px;

        border-radius:24px;
    }


    /*
       IMPORTANT:
       Cards become normal grid items on mobile.
       JS recalculates every connector from the core.
    */

    .ecosystem-capability{
        position:relative !important;

        inset:auto !important;

        width:100%;

        min-height:unset;

        padding:15px;

        transform:none;
    }

    .ecosystem-capability:hover{
        transform:translateY(-2px);
    }


    .ecosystem-core-v2{
        top:96px;

        width:142px;
        height:142px;
    }

    .ecosystem-core-v2 .brand-mark{
        width:39px;
        height:39px;
    }

    .ecosystem-core-v2 strong{
        font-size:14px;
    }


    .ecosystem-halo{
        top:96px;
    }

    .halo-1{
        width:175px;
        height:175px;
    }

    .halo-2{
        width:245px;
        height:245px;
    }

    .halo-3{
        display:none;
    }

    .halo-4{
        display:none;
    }


    .ecosystem-live-status{
        bottom:15px;

        max-width:calc(100% - 30px);

        overflow:hidden;

        text-overflow:ellipsis;
    }

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media(max-width:420px){

    .ecosystem-board-v2{
        padding-left:10px;
        padding-right:10px;
    }

    .ecosystem-capability h3{
        font-size:12px;
    }

    .ecosystem-capability p{
        font-size:8.5px;
    }

}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media(prefers-reduced-motion:reduce){

    .ecosystem-connector-line,
    .ecosystem-core-v2,
    .ecosystem-core-glow,
    .ecosystem-halo,
    .ecosystem-live-status i{
        animation:none !important;
    }

}
/* =========================================
   COMPLYVA STACK — UPDATED CAPABILITIES
   ========================================= */

.scattered-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
}

.scattered-grid > span{
    position:relative;

    min-height:76px;

    display:flex;
    align-items:center;
    justify-content:center;
    flex-direction:column;

    gap:4px;

    padding:15px 18px;

    text-align:center;

    color:#425570;

    font-size:13px;
    line-height:1.3;
    font-weight:700;

    border:1px solid #dce6f1;
    border-radius:17px;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.98),
            rgba(248,251,255,.94)
        );

    box-shadow:
        0 12px 30px rgba(42,67,97,.06);

    transition:
        transform .25s ease,
        border-color .25s ease,
        box-shadow .25s ease;
}

.scattered-grid > span::after{
    content:"";

    position:absolute;

    width:7px;
    height:7px;

    right:11px;
    top:10px;

    border-radius:50%;

    background:#f26b72;

    box-shadow:
        0 0 0 5px rgba(242,107,114,.08);
}


/* Different signal colors */

.scattered-grid > span:nth-child(3n)::after{
    background:#f5a623;

    box-shadow:
        0 0 0 5px rgba(245,166,35,.08);
}

.scattered-grid > span:nth-child(4n)::after{
    background:#8067f3;

    box-shadow:
        0 0 0 5px rgba(128,103,243,.08);
}

.scattered-grid > span:nth-child(5n)::after{
    background:#19b79a;

    box-shadow:
        0 0 0 5px rgba(25,183,154,.08);
}

.scattered-grid > span:hover{
    transform:translateY(-3px);

    border-color:rgba(25,183,154,.25);

    box-shadow:
        0 18px 36px rgba(42,67,97,.10);
}

.scattered-grid small{
    display:block;

    max-width:190px;

    color:#8493a6;

    font-size:9px;
    line-height:1.35;
    font-weight:600;
}


/* Sales Analysis slightly wider */

.scattered-grid .scattered-wide{
    grid-column:span 2;
}


/* WITH COMPLYVA */

.unified-list{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px 22px;
}

.unified-list > span{
    display:flex;
    align-items:flex-start;
    gap:8px;

    min-width:0;

    color:#465a74;

    font-size:12px;
    line-height:1.4;
    font-weight:650;
}

.unified-list > span svg{
    flex:0 0 auto;

    margin-top:1px;

    color:#18af94;
}

.unified-list .unified-wide{
    grid-column:span 2;
}

.unified-list .unified-wide > span{
    display:block;
}

.unified-list small{
    display:block;

    margin-top:2px;

    color:#8b99aa;

    font-size:8px;
    font-weight:600;
}


/* ==========================
   TABLET
   ========================== */

@media(max-width:900px){

    .scattered-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .scattered-grid .scattered-wide{
        grid-column:span 2;
    }

}


/* ==========================
   MOBILE
   ========================== */

@media(max-width:560px){

    .scattered-grid{
        grid-template-columns:1fr;
        gap:10px;
    }

    .scattered-grid > span{
        min-height:64px;

        padding:13px 36px 13px 14px;

        align-items:flex-start;

        text-align:left;

        font-size:12px;
    }

    .scattered-grid .scattered-wide{
        grid-column:auto;
    }


    .unified-list{
        grid-template-columns:1fr;
    }

    .unified-list .unified-wide{
        grid-column:auto;
    }

}


/* =========================================================
   HERO ORBIT — EXACT CENTER (FINAL)
   Keep the same 600 × 520 geometry as the SVG viewBox.
   Centering uses `translate`, while orbit animation is free to use `transform`.
   ========================================================= */
.hero-orbit{
    position:relative;
    width:min(600px,100%);
    aspect-ratio:600 / 520;
    min-height:0;
    margin-inline:auto;
    overflow:visible;
    isolation:isolate;
}

.hero-core{
    position:absolute !important;
    left:50% !important;
    top:50% !important;
    right:auto !important;
    bottom:auto !important;
    translate:-50% -50% !important;
    transform:none !important;
    margin:0 !important;
    z-index:10 !important;
}

.hero-orbit .orbit-ring{
    position:absolute;
    left:50%;
    top:50%;
    translate:-50% -50% !important;
    transform-origin:center;
}

.hero-connectors{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    z-index:2;
    pointer-events:none;
}

/* Operations node uses the same single centering mechanism. */
.hero-node.hn5{
    left:50% !important;
    right:auto !important;
    translate:-50% 0 !important;
}

/* Keep only the mark itself animated; never animate the core position. */
.hero-core .brand-mark,
.hero-core .brand-mark i{
    animation-play-state:running;
}

@media(max-width:1100px){
    .hero-orbit{
        width:min(570px,92vw);
        margin:15px auto 0;
    }
}

@media(max-width:700px){
    .hero-orbit{
        width:100%;
        max-width:500px;
        aspect-ratio:600 / 520;
        margin:18px auto 0;
    }

    .hero-core{
        translate:-50% -50% !important;
        scale:.84;
        transform:none !important;
        transform-origin:center;
    }
}

@media(max-width:430px){
    .hero-core{
        translate:-50% -50% !important;
        scale:.72;
        transform:none !important;
    }
}
/* =========================================================
   COMPLYVA — REALISTIC 3D ROTATING EARTH
   USA · CANADA · MEXICO · UK
   ========================================================= */

.cv-earth-stage{
    --earth-x:0px;
    --earth-y:0px;

    position:relative;
    z-index:5;

    width:100%;
    min-height:570px;

    display:grid;
    place-items:center;

    perspective:1400px;

    isolation:isolate;
    overflow:visible;
}


/* =========================================================
   AMBIENT BACKGROUND
   ========================================================= */

.cv-earth-ambient{
    position:absolute;

    border-radius:50%;

    filter:blur(30px);

    pointer-events:none;
}

.cv-earth-ambient.ambient-one{
    width:390px;
    height:390px;

    right:9%;
    top:4%;

    background:
        radial-gradient(
            circle,
            rgba(25,183,154,.13),
            rgba(55,124,245,.035) 47%,
            transparent 70%
        );

    animation:
        earthAmbientOne 8s ease-in-out infinite;
}

.cv-earth-ambient.ambient-two{
    width:330px;
    height:330px;

    left:13%;
    bottom:3%;

    background:
        radial-gradient(
            circle,
            rgba(55,124,245,.10),
            transparent 70%
        );

    animation:
        earthAmbientTwo 9s ease-in-out infinite;
}


/* =========================================================
   EARTH WRAPPER
   ========================================================= */

.cv-earth-wrap{
    position:absolute;

    left:50%;
    top:50%;

    width:min(440px,65%);

    aspect-ratio:1;

    transform:
        translate(-50%,-50%)
        translate(
            var(--earth-x),
            var(--earth-y)
        );

    transform-style:preserve-3d;

    transition:
        transform .22s ease-out;
}


/* shadow below earth */

.cv-earth-shadow{
    position:absolute;

    left:15%;
    right:15%;

    bottom:-8%;

    height:12%;

    border-radius:50%;

    background:
        radial-gradient(
            ellipse,
            rgba(19,47,71,.24),
            rgba(33,72,102,.08) 45%,
            transparent 73%
        );

    filter:blur(13px);

    animation:
        earthShadow 6s ease-in-out infinite;
}


/* =========================================================
   ACTUAL SPHERE
   ========================================================= */

.cv-earth{
    position:absolute;

    inset:0;

    overflow:hidden;

    border-radius:50%;

    background:
        radial-gradient(
            circle at 33% 25%,
            #c7f8f1 0%,
            #82d9d0 16%,
            #449bb5 36%,
            #1f638b 62%,
            #123e66 83%,
            #09243d 100%
        );

    border:
        1px solid rgba(72,141,169,.28);

    box-shadow:
        inset -60px -32px 80px rgba(3,24,45,.46),
        inset 38px 26px 60px rgba(255,255,255,.20),
        0 38px 75px rgba(26,58,85,.20),
        0 0 0 14px rgba(255,255,255,.18),
        0 0 100px rgba(25,183,154,.12);

    transform-style:preserve-3d;

    animation:
        earthFloat 6s ease-in-out infinite;
}


/* =========================================================
   ROTATING WORLD MAP TEXTURE
   ========================================================= */

.cv-earth-texture{
    position:absolute;

    inset:0;

    z-index:2;

    overflow:hidden;

    border-radius:50%;

    opacity:.90;
}


/*
   Texture is 200% width and moves continuously.
   Two map copies make the animation seamless.
*/

.cv-earth-map{
    position:absolute;

    top:0;

    width:102%;
    height:100%;

    background-repeat:no-repeat;
    background-position:center;
    background-size:100% 100%;

    filter:
        drop-shadow(
            0 2px 2px rgba(1,28,28,.15)
        );

    /*
       Inline SVG continent texture.
       No external image required.
    */

    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 500'%3E%3Cg fill='%238bd6ad' stroke='%2352b995' stroke-width='3'%3E%3Cpath d='M86 106 L125 77 192 64 248 81 281 118 264 154 234 171 214 208 176 231 145 209 130 177 98 161 75 134Z'/%3E%3Cpath d='M191 224 L226 239 249 281 239 325 216 366 197 412 178 389 171 344 153 300 166 257Z'/%3E%3Cpath d='M424 98 L458 84 493 95 508 121 491 142 456 139 435 127Z'/%3E%3Cpath d='M452 146 L493 151 518 181 525 231 507 286 476 320 452 289 438 237 439 192Z'/%3E%3Cpath d='M510 91 L569 71 636 75 704 94 761 125 790 161 756 178 706 161 668 190 620 184 590 160 545 156 519 132Z'/%3E%3Cpath d='M760 327 L805 310 848 324 869 353 842 378 794 377 763 354Z'/%3E%3Cpath d='M386 92 L402 78 415 91 407 110 391 111Z'/%3E%3C/g%3E%3C/svg%3E");
}


.map-copy-one{
    left:0;

    animation:
        earthTextureMove 20s linear infinite;
}

.map-copy-two{
    left:100%;

    animation:
        earthTextureMoveSecond 20s linear infinite;
}


/* =========================================================
   3D GRID
   ========================================================= */

.cv-earth-grid{
    position:absolute;

    inset:0;

    z-index:3;

    overflow:hidden;

    border-radius:50%;

    pointer-events:none;
}


/* latitude lines */

.earth-lat{
    position:absolute;

    left:5%;

    width:90%;

    border:
        1px solid rgba(255,255,255,.16);

    border-radius:50%;
}

.lat-1{
    height:24%;
    top:21%;
}

.lat-2{
    height:30%;
    top:36%;
}

.lat-3{
    height:25%;
    top:57%;
}


/* longitude curves */

.earth-long{
    position:absolute;

    top:4%;

    height:92%;

    border:
        1px solid rgba(255,255,255,.14);

    border-radius:50%;
}

.long-1{
    width:28%;
    left:36%;
}

.long-2{
    width:57%;
    left:21.5%;

    transform:rotate(5deg);
}

.long-3{
    width:80%;
    left:10%;

    transform:rotate(-5deg);
}


/* =========================================================
   LIGHT / SHADOW FOR 3D DEPTH
   ========================================================= */

.cv-earth-light{
    position:absolute;

    inset:0;

    z-index:5;

    border-radius:50%;

    background:
        radial-gradient(
            circle at 28% 20%,
            rgba(255,255,255,.70) 0%,
            rgba(255,255,255,.18) 22%,
            transparent 47%
        );

    pointer-events:none;
}

.cv-earth-depth{
    position:absolute;

    inset:0;

    z-index:6;

    border-radius:50%;

    background:
        linear-gradient(
            100deg,
            rgba(3,24,42,.06) 0%,
            transparent 37%,
            transparent 60%,
            rgba(3,20,37,.42) 100%
        );

    box-shadow:
        inset -25px 0 45px rgba(1,21,39,.20);

    pointer-events:none;
}


/* =========================================================
   COMPLYVA CENTER CHIP
   ========================================================= */

.cv-earth-brand{
    position:absolute;

    z-index:10;

    left:50%;
    top:50%;

    transform:
        translate(-50%,-50%)
        translateZ(55px);

    min-width:178px;

    display:flex;
    align-items:center;
    gap:11px;

    padding:12px 15px;

    border:
        1px solid rgba(255,255,255,.74);

    border-radius:17px;

    background:
        rgba(255,255,255,.91);

    backdrop-filter:
        blur(18px);

    box-shadow:
        0 18px 38px rgba(11,37,62,.18);

    animation:
        earthBrandFloat 4.5s ease-in-out infinite;
}

.cv-earth-brand .brand-mark{
    flex:0 0 auto;
}

.cv-earth-brand b{
    display:block;

    color:#12223a;

    font-size:12px;
}

.cv-earth-brand small{
    display:block;

    margin-top:2px;

    color:#8390a3;

    font-size:6px;
    line-height:1.35;

    text-transform:uppercase;
    letter-spacing:.07em;
}


/* =========================================================
   OUTER ORBITAL SYSTEM
   ========================================================= */

.cv-earth-orbit{
    position:absolute;

    z-index:1;

    left:50%;
    top:50%;

    border:
        1px solid rgba(72,124,161,.13);

    border-radius:50%;

    pointer-events:none;
}

.cv-earth-orbit.orbit-a{
    width:92%;
    height:54%;

    transform:
        translate(-50%,-50%)
        rotate(-14deg);

    animation:
        earthOrbitA 11s linear infinite;
}

.cv-earth-orbit.orbit-b{
    width:67%;
    height:94%;

    transform:
        translate(-50%,-50%)
        rotate(31deg);

    animation:
        earthOrbitB 14s linear infinite;
}

.cv-earth-orbit.orbit-c{
    width:94%;
    height:71%;

    border-color:
        rgba(25,183,154,.12);

    transform:
        translate(-50%,-50%)
        rotate(18deg);

    animation:
        earthOrbitC 18s linear infinite;
}


/* small particles */

.cv-earth-orbit > span{
    position:absolute;

    width:8px;
    height:8px;

    border-radius:50%;

    background:#19b79a;

    box-shadow:
        0 0 0 7px rgba(25,183,154,.08),
        0 0 17px rgba(25,183,154,.48);
}

.orbit-a > span{
    left:62%;
    top:-4px;
}

.orbit-b > span{
    right:-4px;
    top:41%;

    background:#f5a623;

    box-shadow:
        0 0 0 7px rgba(245,166,35,.08),
        0 0 17px rgba(245,166,35,.42);
}

.orbit-c > span{
    left:18%;
    bottom:-4px;

    background:#6d7ff5;

    box-shadow:
        0 0 0 7px rgba(109,127,245,.08),
        0 0 17px rgba(109,127,245,.42);
}


/* =========================================================
   MARKET CONNECTIONS
   ========================================================= */

.cv-earth-connections{
    position:absolute;

    inset:0;

    z-index:7;

    width:100%;
    height:100%;

    pointer-events:none;

    overflow:visible;
}

.earth-market-route{
    fill:none;

    stroke-width:1.7;

    stroke-linecap:round;

    stroke-dasharray:6 8;

    animation:
        earthRouteMove 13s linear infinite;
}

.route-usa{
    stroke:rgba(245,166,35,.64);
}

.route-canada{
    stroke:rgba(116,93,238,.55);
}

.route-mexico{
    stroke:rgba(25,183,154,.58);
}

.route-uk{
    stroke:rgba(55,124,245,.58);
}


/* moving signals */

.earth-travel-dot.dot-usa{
    fill:#f5a623;
}

.earth-travel-dot.dot-canada{
    fill:#7a61f2;
}

.earth-travel-dot.dot-mexico{
    fill:#19b79a;
}

.earth-travel-dot.dot-uk{
    fill:#377cf5;
}


/* =========================================================
   MARKET CARDS
   ========================================================= */

.cv-earth-market{
    position:absolute;

    z-index:15;

    min-width:142px;

    display:flex;
    align-items:center;
    gap:10px;

    padding:10px 12px;

    border:
        1px solid rgba(62,88,120,.12);

    border-radius:14px;

    background:
        rgba(255,255,255,.90);

    backdrop-filter:
        blur(18px);

    box-shadow:
        0 14px 34px rgba(36,64,95,.11);

    animation:
        earthMarketFloat 5s ease-in-out infinite;
}

.cv-earth-market b{
    display:block;

    color:#33475f;

    font-size:10px;
}

.cv-earth-market small{
    display:block;

    margin-top:1px;

    color:#91a0b3;

    font-size:7px;
}


/* country dots */

.earth-market-dot{
    width:9px;
    height:9px;

    flex:0 0 auto;

    border-radius:50%;
}

.earth-market-dot.usa{
    background:#f5a623;

    box-shadow:
        0 0 0 6px rgba(245,166,35,.10),
        0 0 14px rgba(245,166,35,.31);
}

.earth-market-dot.canada{
    background:#7a61f2;

    box-shadow:
        0 0 0 6px rgba(122,97,242,.10),
        0 0 14px rgba(122,97,242,.31);
}

.earth-market-dot.mexico{
    background:#19b79a;

    box-shadow:
        0 0 0 6px rgba(25,183,154,.10),
        0 0 14px rgba(25,183,154,.31);
}

.earth-market-dot.uk{
    background:#377cf5;

    box-shadow:
        0 0 0 6px rgba(55,124,245,.10),
        0 0 14px rgba(55,124,245,.31);
}


/* desktop card positions */

.earth-market-usa{
    left:0;
    top:32%;

    animation-delay:-1.2s;
}

.earth-market-canada{
    left:8%;
    top:6%;

    animation-delay:-2.4s;
}

.earth-market-mexico{
    left:8%;
    bottom:8%;

    animation-delay:-3.1s;
}

.earth-market-uk{
    right:0;
    top:22%;

    animation-delay:-1.8s;
}


/* =========================================================
   LIVE LABEL
   ========================================================= */

.cv-earth-live{
    position:absolute;

    z-index:15;

    left:50%;
    bottom:0;

    transform:
        translateX(-50%);

    display:flex;
    align-items:center;
    gap:7px;

    padding:7px 11px;

    border:
        1px solid rgba(64,91,123,.10);

    border-radius:999px;

    background:
        rgba(255,255,255,.78);

    backdrop-filter:blur(15px);

    color:#7e8da1;

    font-size:7px;
    font-weight:800;

    white-space:nowrap;

    letter-spacing:.11em;
}

.cv-earth-live i{
    width:7px;
    height:7px;

    border-radius:50%;

    background:#19b79a;

    box-shadow:
        0 0 0 5px rgba(25,183,154,.09);

    animation:
        earthLive 1.6s ease-in-out infinite;
}


/* =========================================================
   ANIMATIONS
   ========================================================= */

/*
   MAIN EARTH ROTATION
   map moves horizontally around sphere continuously
*/

@keyframes earthTextureMove{

    from{
        transform:translateX(0);
    }

    to{
        transform:translateX(-100%);
    }

}

@keyframes earthTextureMoveSecond{

    from{
        transform:translateX(0);
    }

    to{
        transform:translateX(-100%);
    }

}


/* slight floating 3d movement */

@keyframes earthFloat{

    0%,
    100%{
        transform:
            translateY(0)
            rotateX(0deg)
            rotateZ(-1deg);
    }

    50%{
        transform:
            translateY(-8px)
            rotateX(2deg)
            rotateZ(1deg);
    }

}


@keyframes earthBrandFloat{

    0%,
    100%{
        transform:
            translate(-50%,-50%)
            translateZ(55px)
            translateY(0);
    }

    50%{
        transform:
            translate(-50%,-50%)
            translateZ(55px)
            translateY(-5px);
    }

}


@keyframes earthShadow{

    0%,
    100%{
        transform:scaleX(.90);
        opacity:.65;
    }

    50%{
        transform:scaleX(1.06);
        opacity:.9;
    }

}


@keyframes earthOrbitA{

    from{
        transform:
            translate(-50%,-50%)
            rotate(-14deg);
    }

    to{
        transform:
            translate(-50%,-50%)
            rotate(346deg);
    }

}


@keyframes earthOrbitB{

    from{
        transform:
            translate(-50%,-50%)
            rotate(31deg);
    }

    to{
        transform:
            translate(-50%,-50%)
            rotate(391deg);
    }

}


@keyframes earthOrbitC{

    from{
        transform:
            translate(-50%,-50%)
            rotate(18deg);
    }

    to{
        transform:
            translate(-50%,-50%)
            rotate(-342deg);
    }

}


@keyframes earthRouteMove{

    to{
        stroke-dashoffset:-140;
    }

}


@keyframes earthMarketFloat{

    0%,
    100%{
        translate:0 0;
    }

    50%{
        translate:0 -7px;
    }

}


@keyframes earthLive{

    0%,
    100%{
        opacity:.45;
        transform:scale(.75);
    }

    50%{
        opacity:1;
        transform:scale(1.18);
    }

}


@keyframes earthAmbientOne{

    0%,
    100%{
        transform:
            translate3d(0,0,0)
            scale(.94);
    }

    50%{
        transform:
            translate3d(-18px,10px,0)
            scale(1.07);
    }

}


@keyframes earthAmbientTwo{

    0%,
    100%{
        transform:translate3d(0,0,0);
    }

    50%{
        transform:translate3d(18px,-13px,0);
    }

}


/* =========================================================
   TABLET
   ========================================================= */

@media(max-width:1100px){

    .cv-earth-stage{
        min-height:560px;
    }

    .cv-earth-wrap{
        width:min(430px,65vw);
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media(max-width:700px){

    .cv-earth-stage{
        min-height:500px;

        margin-top:15px;

        overflow:hidden;
    }

    .cv-earth-wrap{
        width:min(330px,78vw);
    }


    .cv-earth-brand{
        min-width:140px;

        padding:9px 11px;
    }

    .cv-earth-brand small{
        display:none;
    }


    .cv-earth-market{
        min-width:auto;

        padding:8px 9px;
    }

    .cv-earth-market small{
        display:none;
    }


    .earth-market-usa{
        left:0;
        top:31%;
    }

    .earth-market-canada{
        left:4%;
        top:7%;
    }

    .earth-market-mexico{
        left:2%;
        bottom:10%;
    }

    .earth-market-uk{
        right:0;
        top:20%;
    }


    .cv-earth-live{
        bottom:5px;
    }

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media(max-width:430px){

    .cv-earth-stage{
        min-height:430px;
    }

    .cv-earth-wrap{
        width:min(285px,74vw);
    }

    .cv-earth-market{
        padding:7px 8px;
    }

    .cv-earth-market b{
        font-size:8px;
    }

}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media(prefers-reduced-motion:reduce){

    .cv-earth-map,
    .cv-earth,
    .cv-earth-brand,
    .cv-earth-orbit,
    .cv-earth-market,
    .cv-earth-live i,
    .cv-earth-ambient{
        animation:none !important;
    }

}
/* =========================================================
   CLEAN PREMIUM EARTH
   ========================================================= */

.cv-clean-earth-stage{
    --earth-x:0px;
    --earth-y:0px;

    position:relative;
    width:100%;
    min-height:580px;
    display:grid;
    place-items:center;
    perspective:1400px;
    isolation:isolate;
    overflow:visible;
}

.cv-clean-earth-glow{
    position:absolute;
    border-radius:50%;
    filter:blur(32px);
    pointer-events:none;
}

.cv-clean-earth-glow.glow-a{
    width:340px;
    height:340px;
    right:10%;
    top:2%;
    background:radial-gradient(circle, rgba(25,183,154,.12), transparent 70%);
    animation:cleanGlowA 8s ease-in-out infinite;
}

.cv-clean-earth-glow.glow-b{
    width:270px;
    height:270px;
    left:12%;
    bottom:5%;
    background:radial-gradient(circle, rgba(55,124,245,.09), transparent 70%);
    animation:cleanGlowB 8.5s ease-in-out infinite;
}

/* ============================= */

.cv-clean-earth-wrap{
    position:absolute;
    left:50%;
    top:50%;
    width:min(430px,64%);
    aspect-ratio:1;
    transform:
        translate(-50%,-50%)
        translate(var(--earth-x), var(--earth-y));
    transition:transform .22s ease-out;
    transform-style:preserve-3d;
}

.cv-clean-earth-shadow{
    position:absolute;
    left:14%;
    right:14%;
    bottom:-9%;
    height:12%;
    border-radius:50%;
    background:radial-gradient(ellipse, rgba(15,38,58,.22), rgba(15,38,58,.07) 48%, transparent 74%);
    filter:blur(14px);
    animation:cleanEarthShadow 6s ease-in-out infinite;
}

/* subtle outer orbits */

.cv-clean-earth-orbit{
    position:absolute;
    left:50%;
    top:50%;
    border:1px solid rgba(88,130,165,.12);
    border-radius:50%;
    pointer-events:none;
}

.cv-clean-earth-orbit.orbit-one{
    width:86%;
    height:60%;
    transform:translate(-50%,-50%) rotate(-18deg);
    animation:cleanOrbitOne 16s linear infinite;
}

.cv-clean-earth-orbit.orbit-two{
    width:66%;
    height:92%;
    transform:translate(-50%,-50%) rotate(22deg);
    animation:cleanOrbitTwo 20s linear infinite;
}

/* ============================= */

.cv-clean-earth{
    position:absolute;
    inset:0;
    border-radius:50%;
    overflow:hidden;
    background:
        radial-gradient(circle at 35% 24%, #bff5ee 0%, #7edbd5 18%, #3187b0 42%, #164f77 70%, #0b2f4e 100%);
    border:1px solid rgba(94,155,181,.28);
    box-shadow:
        inset -42px -24px 58px rgba(2,21,40,.42),
        inset 24px 20px 48px rgba(255,255,255,.15),
        0 34px 76px rgba(22,54,81,.18),
        0 0 0 12px rgba(255,255,255,.16);
    animation:cleanEarthFloat 6s ease-in-out infinite;
    transform-style:preserve-3d;
}

/* rotating map */

.cv-clean-earth-rotate{
    position:absolute;
    inset:0;
    border-radius:50%;
    overflow:hidden;
    z-index:2;
}

.cv-clean-earth-map{
    position:absolute;
    top:0;
    width:102%;
    height:100%;
    background-repeat:no-repeat;
    background-position:center;
    background-size:100% 100%;
    opacity:.88;
    filter:drop-shadow(0 2px 3px rgba(0,0,0,.12));
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 500'%3E%3Cg fill='%2394d7aa' stroke='%237ec39a' stroke-width='4'%3E%3Cpath d='M78 114 L129 79 198 69 254 88 292 124 277 161 236 193 218 228 176 248 138 224 118 190 92 174 69 141 Z'/%3E%3Cpath d='M190 244 L228 260 252 302 245 342 225 380 201 426 182 405 172 364 154 318 161 277 Z'/%3E%3Cpath d='M431 105 L470 91 513 100 531 127 515 151 474 148 447 134 Z'/%3E%3Cpath d='M452 157 L499 162 528 191 536 239 516 292 486 332 455 306 441 252 440 201 Z'/%3E%3Cpath d='M519 100 L577 80 648 86 713 106 772 139 805 176 773 189 721 173 682 201 633 198 596 176 553 171 528 145 Z'/%3E%3Cpath d='M611 173 L632 164 647 175 645 190 627 199 610 189 Z'/%3E%3Cpath d='M773 335 L815 318 854 330 876 357 848 384 802 384 772 359 Z'/%3E%3Cpath d='M390 96 L406 80 420 94 412 112 395 114 Z'/%3E%3C/g%3E%3C/svg%3E");
}

.cv-clean-earth-map.map-one{
    left:0;
    animation:cleanMapMoveOne 22s linear infinite;
}

.cv-clean-earth-map.map-two{
    left:100%;
    animation:cleanMapMoveTwo 22s linear infinite;
}

/* latitude */

.cv-clean-earth-lat{
    position:absolute;
    left:7%;
    width:86%;
    border:1px solid rgba(255,255,255,.14);
    border-radius:50%;
    z-index:3;
}

.lat-1{ height:20%; top:25%; }
.lat-2{ height:28%; top:41%; }
.lat-3{ height:22%; top:59%; }

/* longitude */

.cv-clean-earth-long{
    position:absolute;
    top:5%;
    height:90%;
    border:1px solid rgba(255,255,255,.13);
    border-radius:50%;
    z-index:3;
}

.long-1{
    width:26%;
    left:37%;
}

.long-2{
    width:54%;
    left:23%;
    transform:rotate(6deg);
}

.long-3{
    width:78%;
    left:11%;
    transform:rotate(-6deg);
}

.cv-clean-earth-shine{
    position:absolute;
    inset:0;
    z-index:5;
    border-radius:50%;
    background:radial-gradient(circle at 29% 18%, rgba(255,255,255,.72) 0%, rgba(255,255,255,.14) 24%, transparent 46%);
    pointer-events:none;
}

.cv-clean-earth-shade{
    position:absolute;
    inset:0;
    z-index:6;
    border-radius:50%;
    background:linear-gradient(100deg, rgba(5,23,41,.02) 0%, transparent 32%, transparent 58%, rgba(3,17,30,.42) 100%);
    box-shadow:inset -20px 0 46px rgba(3,18,33,.17);
    pointer-events:none;
}

/* center card */

.cv-clean-earth-brand{
    position:absolute;
    z-index:10;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%) translateZ(40px);
    min-width:180px;
    display:flex;
    align-items:center;
    gap:11px;
    padding:12px 15px;
    border:1px solid rgba(255,255,255,.78);
    border-radius:18px;
    background:rgba(255,255,255,.93);
    backdrop-filter:blur(16px);
    box-shadow:0 16px 36px rgba(10,35,56,.16);
    animation:cleanBrandFloat 4.5s ease-in-out infinite;
}

.cv-clean-earth-brand .brand-mark{
    flex:0 0 auto;
}

.cv-clean-earth-brand b{
    display:block;
    color:#12223a;
    font-size:12px;
}

.cv-clean-earth-brand small{
    display:block;
    margin-top:2px;
    color:#8391a4;
    font-size:6px;
    line-height:1.35;
    text-transform:uppercase;
    letter-spacing:.07em;
}

/* ============================= */

.cv-clean-earth-routes{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    z-index:8;
    pointer-events:none;
    overflow:visible;
}

.clean-route{
    fill:none;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-dasharray:6 8;
    animation:cleanRouteMove 13s linear infinite;
}

.route-usa{ stroke:rgba(245,166,35,.72); }
.route-canada{ stroke:rgba(122,97,242,.68); }
.route-mexico{ stroke:rgba(25,183,154,.68); }
.route-uk{ stroke:rgba(55,124,245,.68); }

.clean-travel-dot.usa{ fill:#f5a623; }
.clean-travel-dot.canada{ fill:#7a61f2; }
.clean-travel-dot.mexico{ fill:#19b79a; }
.clean-travel-dot.uk{ fill:#377cf5; }

/* ============================= */

.cv-clean-market{
    position:absolute;
    z-index:15;
    min-width:145px;
    display:flex;
    align-items:center;
    gap:10px;
    padding:10px 12px;
    border:1px solid rgba(61,88,120,.12);
    border-radius:15px;
    background:rgba(255,255,255,.91);
    backdrop-filter:blur(16px);
    box-shadow:0 14px 32px rgba(36,61,89,.10);
    animation:cleanMarketFloat 5s ease-in-out infinite;
}

.cv-clean-market b{
    display:block;
    color:#33485f;
    font-size:10px;
}

.cv-clean-market small{
    display:block;
    margin-top:1px;
    color:#93a1b3;
    font-size:7px;
}

.clean-market-dot{
    width:9px;
    height:9px;
    flex:0 0 auto;
    border-radius:50%;
}

.clean-market-dot.usa{
    background:#f5a623;
    box-shadow:0 0 0 6px rgba(245,166,35,.10), 0 0 14px rgba(245,166,35,.28);
}

.clean-market-dot.canada{
    background:#7a61f2;
    box-shadow:0 0 0 6px rgba(122,97,242,.10), 0 0 14px rgba(122,97,242,.28);
}

.clean-market-dot.mexico{
    background:#19b79a;
    box-shadow:0 0 0 6px rgba(25,183,154,.10), 0 0 14px rgba(25,183,154,.28);
}

.clean-market-dot.uk{
    background:#377cf5;
    box-shadow:0 0 0 6px rgba(55,124,245,.10), 0 0 14px rgba(55,124,245,.28);
}

/* positions */

.market-canada{
    left:2%;
    top:8%;
    animation-delay:-2.2s;
}

.market-usa{
    left:-2%;
    top:40%;
    animation-delay:-1.1s;
}

.market-mexico{
    left:2%;
    bottom:8%;
    animation-delay:-3s;
}

.market-uk{
    right:-2%;
    top:30%;
    animation-delay:-1.8s;
}

/* live chip */

.cv-clean-live{
    position:absolute;
    z-index:15;
    left:50%;
    bottom:1%;
    transform:translateX(-50%);
    display:flex;
    align-items:center;
    gap:7px;
    padding:7px 11px;
    border:1px solid rgba(63,90,122,.10);
    border-radius:999px;
    background:rgba(255,255,255,.80);
    backdrop-filter:blur(14px);
    color:#7d8ca0;
    font-size:7px;
    font-weight:800;
    letter-spacing:.11em;
    white-space:nowrap;
}

.cv-clean-live i{
    width:7px;
    height:7px;
    border-radius:50%;
    background:#19b79a;
    box-shadow:0 0 0 5px rgba(25,183,154,.09);
    animation:cleanLivePulse 1.7s ease-in-out infinite;
}

/* =========================================================
   ANIMATIONS
   ========================================================= */

@keyframes cleanMapMoveOne{
    from{ transform:translateX(0); }
    to{ transform:translateX(-100%); }
}

@keyframes cleanMapMoveTwo{
    from{ transform:translateX(0); }
    to{ transform:translateX(-100%); }
}

@keyframes cleanEarthFloat{
    0%,100%{
        transform:translateY(0) rotateX(0deg);
    }
    50%{
        transform:translateY(-8px) rotateX(2deg);
    }
}

@keyframes cleanBrandFloat{
    0%,100%{
        transform:translate(-50%,-50%) translateZ(40px) translateY(0);
    }
    50%{
        transform:translate(-50%,-50%) translateZ(40px) translateY(-5px);
    }
}

@keyframes cleanEarthShadow{
    0%,100%{
        transform:scaleX(.92);
        opacity:.65;
    }
    50%{
        transform:scaleX(1.04);
        opacity:.90;
    }
}

@keyframes cleanOrbitOne{
    from{ transform:translate(-50%,-50%) rotate(-18deg); }
    to{ transform:translate(-50%,-50%) rotate(342deg); }
}

@keyframes cleanOrbitTwo{
    from{ transform:translate(-50%,-50%) rotate(22deg); }
    to{ transform:translate(-50%,-50%) rotate(382deg); }
}

@keyframes cleanRouteMove{
    to{ stroke-dashoffset:-140; }
}

@keyframes cleanMarketFloat{
    0%,100%{ translate:0 0; }
    50%{ translate:0 -6px; }
}

@keyframes cleanLivePulse{
    0%,100%{
        opacity:.45;
        transform:scale(.75);
    }
    50%{
        opacity:1;
        transform:scale(1.15);
    }
}

@keyframes cleanGlowA{
    0%,100%{
        transform:translate3d(0,0,0) scale(.95);
    }
    50%{
        transform:translate3d(-16px,8px,0) scale(1.06);
    }
}

@keyframes cleanGlowB{
    0%,100%{
        transform:translate3d(0,0,0);
    }
    50%{
        transform:translate3d(14px,-10px,0);
    }
}

/* =========================================================
   RESPONSIVE
   ========================================================= */

@media(max-width:1100px){

    .cv-clean-earth-stage{
        min-height:560px;
    }

    .cv-clean-earth-wrap{
        width:min(390px,66vw);
    }

    .market-usa{ left:0; }
    .market-canada{ left:4%; }
    .market-mexico{ left:4%; }
    .market-uk{ right:0; }
}

@media(max-width:700px){

    .cv-clean-earth-stage{
        min-height:470px;
        margin-top:12px;
        overflow:hidden;
    }

    .cv-clean-earth-wrap{
        width:min(310px,78vw);
    }

    .cv-clean-earth-brand{
        min-width:146px;
        padding:9px 11px;
    }

    .cv-clean-earth-brand small{
        display:none;
    }

    .cv-clean-market{
        min-width:auto;
        padding:8px 9px;
    }

    .cv-clean-market small{
        display:none;
    }

    .cv-clean-market b{
        font-size:8px;
    }

    .market-canada{
        left:0;
        top:8%;
    }

    .market-usa{
        left:-1%;
        top:40%;
    }

    .market-mexico{
        left:0;
        bottom:11%;
    }

    .market-uk{
        right:-1%;
        top:29%;
    }
}

@media(max-width:430px){

    .cv-clean-earth-stage{
        min-height:410px;
    }

    .cv-clean-earth-wrap{
        width:min(270px,72vw);
    }

    .cv-clean-live{
        bottom:6px;
        max-width:calc(100% - 24px);
        overflow:hidden;
        text-overflow:ellipsis;
    }
}

@media(prefers-reduced-motion:reduce){

    .cv-clean-earth,
    .cv-clean-earth-map,
    .cv-clean-earth-brand,
    .cv-clean-earth-orbit,
    .cv-clean-market,
    .cv-clean-live i,
    .cv-clean-earth-glow{
        animation:none !important;
    }
}
/* =========================================================
   BUSINESS TABLE HEADINGS — LEFT ALIGN FIX
   ========================================================= */

.page-home .business-framing-section .data-table-card .table-heading{
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    justify-content:flex-start !important;

    width:100% !important;

    gap:8px !important;
    margin:0 0 22px !important;

    text-align:left !important;
}


/* eyebrow left */
.page-home .business-framing-section .table-heading .eyebrow{
    width:auto !important;
    margin:0 !important;

    align-self:flex-start !important;

    text-align:left !important;
}


/* MAIN HEADING */
.page-home .business-framing-section .table-heading h3{
    width:100% !important;
    max-width:760px !important;

    margin:4px 0 0 !important;

    text-align:left !important;

    font-size:clamp(28px, 3vw, 40px) !important;
    line-height:1.08 !important;
    letter-spacing:-.045em !important;

    /* remove forced narrow heading */
    -webkit-line-clamp:unset !important;
    display:block !important;
    overflow:visible !important;

    text-wrap:balance;
}


/* Make whole card spacing cleaner */
.page-home .business-framing-section .data-table-card{
    padding:34px !important;
}


/* TABLET */
@media(max-width:820px){

    .page-home .business-framing-section .data-table-card{
        padding:26px 22px !important;
    }

    .page-home .business-framing-section .table-heading h3{
        max-width:620px !important;

        font-size:32px !important;
    }

}


/* MOBILE */
@media(max-width:560px){

    .page-home .business-framing-section .data-table-card{
        padding:20px 16px !important;
    }

    .page-home .business-framing-section .table-heading{
        margin-bottom:18px !important;
    }

    .page-home .business-framing-section .table-heading h3{
        max-width:100% !important;

        font-size:27px !important;
        line-height:1.1 !important;
    }

}
/* =========================================================
   COMPLYVA — STACKED INTELLIGENCE CORE
   ========================================================= */

.ecosystem-stack-section{
    position:relative;
    overflow:hidden;

    background:
        linear-gradient(
            180deg,
            #ffffff,
            #f7fbff 48%,
            #ffffff
        );
}


.intelligence-stack-board{
    position:relative;

    max-width:1240px;
    margin:0 auto;

    padding:
        70px
        48px
        38px;

    border:1px solid #dce6f0;
    border-radius:32px;

    background:
        radial-gradient(
            circle at 50% 10%,
            rgba(25,183,154,.10),
            transparent 22%
        ),
        radial-gradient(
            circle at 50% 47%,
            rgba(245,166,35,.055),
            transparent 30%
        ),
        #fbfdff;

    overflow:hidden;

    box-shadow:
        0 30px 75px rgba(37,60,88,.08);
}


.intelligence-grid-bg{
    position:absolute;
    inset:0;

    opacity:.38;

    background-image:
        linear-gradient(
            rgba(59,88,123,.06) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(59,88,123,.06) 1px,
            transparent 1px
        );

    background-size:38px 38px;

    mask-image:
        linear-gradient(
            black,
            rgba(0,0,0,.7),
            transparent
        );

    pointer-events:none;
}


/* ========================
   CORE
   ======================== */

.intelligence-core{
    position:relative;

    z-index:5;

    width:190px;
    height:190px;

    margin:0 auto 55px;

    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;

    text-align:center;

    border:1px solid rgba(245,166,35,.46);
    border-radius:50%;

    background:
        radial-gradient(
            circle at 35% 25%,
            #fff,
            #fffdf7 63%,
            #f8f2e6
        );

    box-shadow:
        0 25px 55px rgba(42,64,89,.12),
        0 0 0 15px rgba(255,255,255,.72),
        0 0 80px rgba(25,183,154,.09);

    animation:
        intelligenceCoreFloat
        5s ease-in-out infinite;
}


.intelligence-core-glow{
    position:absolute;
    inset:-60px;

    z-index:-1;

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(25,183,154,.11),
            rgba(245,166,35,.055) 42%,
            transparent 70%
        );

    animation:
        intelligenceCoreGlow
        5s ease-in-out infinite;
}


.intelligence-core strong{
    margin-top:10px;

    color:#101e33;

    font-size:18px;
}


.intelligence-core small{
    margin-top:3px;

    color:#8794a6;

    font-size:8px;
}


.intelligence-core em{
    display:flex;
    align-items:center;
    gap:6px;

    margin-top:10px;

    color:#15a88e;

    font-size:7px;
    font-weight:800;
    font-style:normal;

    letter-spacing:.13em;
}


.intelligence-core em i{
    width:6px;
    height:6px;

    border-radius:50%;

    background:#18b99c;

    box-shadow:
        0 0 0 5px rgba(24,185,156,.09);
}


/* ========================
   CENTRAL SPINE
   ======================== */

.intelligence-spine,
.stack-connector{
    position:relative;

    z-index:2;

    width:2px;
    height:50px;

    margin:
        -45px
        auto
        15px;

    background:
        linear-gradient(
            180deg,
            rgba(25,183,154,.14),
            rgba(25,183,154,.65),
            rgba(25,183,154,.10)
        );
}


.intelligence-spine::after,
.stack-connector::after{
    content:"";

    position:absolute;

    left:50%;
    bottom:-3px;

    width:8px;
    height:8px;

    transform:
        translateX(-50%);

    border-radius:50%;

    background:#19b79a;

    box-shadow:
        0 0 0 6px rgba(25,183,154,.07);
}


.stack-connector{
    height:44px;

    margin:
        16px
        auto;
}


/* ========================
   LAYERS
   ======================== */

.intelligence-layer{
    position:relative;

    z-index:4;

    padding:26px;

    border:1px solid #dce6f0;
    border-radius:24px;

    background:
        rgba(255,255,255,.90);

    backdrop-filter:
        blur(18px);

    box-shadow:
        0 16px 40px rgba(37,60,88,.055);
}


.intelligence-layer + .intelligence-layer{
    margin-top:0;
}


.intelligence-layer-heading{
    display:grid;

    grid-template-columns:
        92px
        minmax(0,1fr);

    gap:22px;

    align-items:start;

    padding-bottom:20px;
    margin-bottom:20px;

    border-bottom:
        1px solid #e7edf4;
}


.intelligence-layer-heading > span{
    width:max-content;

    padding:7px 10px;

    border-radius:999px;

    background:#f4f7fb;

    color:#8290a3;

    font-size:8px;
    font-weight:800;

    letter-spacing:.13em;
}


.intelligence-layer-heading h3{
    margin:0;

    color:#122138;

    font-size:25px;
    line-height:1.06;

    letter-spacing:-.035em;
}


.intelligence-layer-heading p{
    max-width:620px;

    margin:7px 0 0;

    color:#728198;

    font-size:11px;
    line-height:1.5;

    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;
    overflow:hidden;
}


/* ========================
   MODULE GRID
   ======================== */

.intelligence-layer-grid{
    display:grid;

    grid-template-columns:
        repeat(4,minmax(0,1fr));

    gap:12px;
}


.intelligence-module{
    min-width:0;
    min-height:164px;

    display:grid;

    grid-template-columns:
        38px
        minmax(0,1fr);

    gap:12px;

    padding:16px;

    border:1px solid #e1e9f2;
    border-radius:17px;

    background:
        linear-gradient(
            145deg,
            #ffffff,
            #fafcff
        );

    transition:
        transform .25s ease,
        border-color .25s ease,
        box-shadow .25s ease;
}


.intelligence-module:hover{
    transform:
        translateY(-4px);

    border-color:
        rgba(25,183,154,.25);

    box-shadow:
        0 17px 35px rgba(38,62,91,.08);
}


.module-icon{
    width:36px;
    height:36px;

    display:grid;
    place-items:center;

    border-radius:11px;
}


.module-icon.teal{
    color:#119f88;
    background:#eafbf7;
}


.module-icon.blue{
    color:#3978eb;
    background:#edf3ff;
}


.module-icon.amber{
    color:#d78900;
    background:#fff5e3;
}


.module-icon.violet{
    color:#765ee5;
    background:#f2efff;
}


.module-icon.red{
    color:#e25758;
    background:#fff0f0;
}


.intelligence-module small{
    display:block;

    color:#98a4b3;

    font-size:6px;
    font-weight:800;

    letter-spacing:.13em;
}


.intelligence-module h4{
    margin:7px 0 6px;

    color:#18283f;

    font-size:13px;
    line-height:1.25;

    letter-spacing:-.02em;
}


.intelligence-module p{
    margin:0;

    color:#718097;

    font-size:9px;
    line-height:1.48;

    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;

    overflow:hidden;
}


/* ========================
   FOOTER
   ======================== */

.intelligence-stack-footer{
    position:relative;
    z-index:5;

    display:flex;
    align-items:center;
    justify-content:center;

    gap:12px 24px;

    flex-wrap:wrap;

    margin-top:28px;

    padding-top:24px;

    border-top:1px solid #e2e9f1;

    color:#8593a5;

    font-size:7px;
    font-weight:800;

    letter-spacing:.12em;
}


.intelligence-stack-footer span{
    display:flex;
    align-items:center;
    gap:7px;
}


.intelligence-stack-footer i{
    width:7px;
    height:7px;

    border-radius:50%;

    background:#19b79a;
}


@keyframes intelligenceCoreFloat{

    0%,
    100%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(-7px);
    }

}


@keyframes intelligenceCoreGlow{

    0%,
    100%{
        transform:scale(.92);
        opacity:.55;
    }

    50%{
        transform:scale(1.06);
        opacity:1;
    }

}


/* TABLET */

@media(max-width:1000px){

    .intelligence-layer-grid{
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }

}


/* MOBILE */

@media(max-width:600px){

    .intelligence-stack-board{
        padding:
            45px
            14px
            24px;

        border-radius:24px;
    }


    .intelligence-core{
        width:150px;
        height:150px;

        margin-bottom:45px;
    }


    .intelligence-layer{
        padding:17px;
    }


    .intelligence-layer-heading{
        grid-template-columns:1fr;

        gap:10px;
    }


    .intelligence-layer-heading h3{
        font-size:21px;
    }


    .intelligence-layer-grid{
        grid-template-columns:1fr;
    }


    .intelligence-module{
        min-height:0;
    }

}
/* =========================================================
   OPRYVA — THREE PILLAR NAVIGATION MEGA MENU
   ========================================================= */

.site-header .header-shell{
    position:relative;
}


/* ---------------------------------------------------------
   OPRYVA WORDMARK
   --------------------------------------------------------- */

.brand-word--opryva b{
    letter-spacing:-.035em;
}


/* ---------------------------------------------------------
   PILLAR TRIGGER
   --------------------------------------------------------- */

.nav-dropdown--pillars{
    position:static !important;
}

.pillars-nav-trigger{
    display:flex !important;
    align-items:center;
    gap:6px;
}

.pillars-count{
    width:19px;
    height:19px;

    display:grid;
    place-items:center;

    margin-left:1px;

    border:1px solid rgba(25,183,154,.18);
    border-radius:6px;

    background:rgba(25,183,154,.07);

    color:#13a78d;

    font-size:8px;
    font-weight:800;
}


/* =========================================================
   MAIN MEGA PANEL
   ========================================================= */

.pillar-mega{
    position:absolute;

    left:50%;
    top:calc(100% + 10px);

    z-index:100;

    width:min(1160px, calc(100vw - 40px));

    padding:18px;

    border:1px solid rgba(50,78,111,.13);
    border-radius:24px;

    background:
        radial-gradient(
            circle at 5% 5%,
            rgba(25,183,154,.065),
            transparent 24%
        ),
        radial-gradient(
            circle at 95% 5%,
            rgba(120,94,240,.055),
            transparent 24%
        ),
        rgba(255,255,255,.985);

    backdrop-filter:blur(24px);
    -webkit-backdrop-filter:blur(24px);

    box-shadow:
        0 30px 80px rgba(24,47,75,.14),
        0 4px 18px rgba(24,47,75,.05);

    opacity:0;
    visibility:hidden;

    pointer-events:none;

    transform:
        translate(-50%, 12px)
        scale(.985);

    transform-origin:top center;

    transition:
        opacity .2s ease,
        transform .24s ease,
        visibility .2s ease;
}


/* invisible bridge prevents hover gap */
.pillar-mega::before{
    content:"";

    position:absolute;

    left:0;
    right:0;

    top:-16px;

    height:18px;
}


/* OPEN */
.nav-dropdown--pillars:hover .pillar-mega,
.nav-dropdown--pillars:focus-within .pillar-mega{
    opacity:1;
    visibility:visible;

    pointer-events:auto;

    transform:
        translate(-50%,0)
        scale(1);
}


/* =========================================================
   MEGA TOP
   ========================================================= */

.pillar-mega__top{
    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:30px;

    padding:
        5px
        5px
        17px;

    margin-bottom:14px;

    border-bottom:
        1px solid #e7edf4;
}


.pillar-mega__top > div{
    min-width:0;
}


.pillar-mega__eyebrow{
    display:block;

    margin-bottom:7px;

    color:#8a99ad;

    font-size:7px;
    line-height:1;

    font-weight:850;

    letter-spacing:.16em;
}


.pillar-mega__top strong{
    display:block;

    color:#122139;

    font-size:18px;
    line-height:1.1;

    letter-spacing:-.025em;
}


.pillar-mega__overview{
    display:flex;
    align-items:center;

    gap:7px;

    flex:0 0 auto;

    color:#52677f;

    font-size:10px;
    font-weight:700;

    transition:
        color .2s ease,
        transform .2s ease;
}


.pillar-mega__overview:hover{
    color:#12a98e;

    transform:translateX(2px);
}


/* =========================================================
   3 PILLARS
   ========================================================= */

.pillar-mega__grid{
    display:grid;

    grid-template-columns:
        repeat(3,minmax(0,1fr));

    gap:12px;
}


.mega-pillar{
    --pillar:#18b399;
    --pillar-soft:rgba(24,179,153,.08);
    --pillar-border:rgba(24,179,153,.19);

    min-width:0;

    padding:17px;

    border:
        1px solid var(--pillar-border);

    border-radius:18px;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.98),
            rgba(250,253,255,.96)
        );

    box-shadow:
        0 10px 30px rgba(35,61,90,.045);

    transition:
        transform .22s ease,
        box-shadow .22s ease,
        border-color .22s ease;
}


.mega-pillar:hover{
    transform:translateY(-2px);

    box-shadow:
        0 16px 36px rgba(35,61,90,.075);
}


/* themes */

.mega-pillar--product{
    --pillar:#16ae98;
    --pillar-soft:rgba(22,174,152,.09);
    --pillar-border:rgba(22,174,152,.20);
}

.mega-pillar--growth{
    --pillar:#df9413;
    --pillar-soft:rgba(223,148,19,.09);
    --pillar-border:rgba(223,148,19,.20);
}

.mega-pillar--protection{
    --pillar:#765ee8;
    --pillar-soft:rgba(118,94,232,.085);
    --pillar-border:rgba(118,94,232,.19);
}


/* =========================================================
   PILLAR HEADING
   ========================================================= */

.mega-pillar__head{
    display:grid;

    grid-template-columns:
        36px
        minmax(0,1fr);

    gap:10px;

    align-items:center;

    margin-bottom:11px;
}


.mega-pillar__number{
    width:36px;
    height:36px;

    display:grid;
    place-items:center;

    border:
        1px solid var(--pillar-border);

    border-radius:11px;

    background:
        var(--pillar-soft);

    color:var(--pillar);

    font-size:10px;
    font-weight:850;
}


.mega-pillar__head small{
    display:block;

    margin-bottom:4px;

    color:var(--pillar);

    font-size:6px;
    line-height:1;

    font-weight:850;

    letter-spacing:.13em;
}


.mega-pillar__head a{
    display:flex;
    align-items:center;

    gap:6px;

    color:#17273e;

    font-size:13px;
    line-height:1.15;

    font-weight:780;
}


.mega-pillar__head a svg{
    opacity:.45;

    transition:
        transform .2s ease,
        opacity .2s ease;
}


.mega-pillar__head a:hover svg{
    opacity:1;

    transform:translateX(2px);
}


/* description */

.mega-pillar__intro{
    min-height:34px;

    margin:
        0
        0
        13px;

    color:#77879b;

    font-size:8px;
    line-height:1.45;
}


/* =========================================================
   EXACT 2 COLUMNS × 2 ROWS
   ========================================================= */

.mega-feature-grid{
    display:grid;

    grid-template-columns:
        repeat(2,minmax(0,1fr));

    grid-template-rows:
        repeat(2,minmax(68px,auto));

    gap:8px;
}


/* feature */

.mega-feature{
    min-width:0;

    display:grid;

    grid-template-columns:
        30px
        minmax(0,1fr);

    gap:8px;

    align-items:center;

    padding:10px;

    border:1px solid #e8eef5;
    border-radius:12px;

    background:#fff;

    transition:
        transform .2s ease,
        border-color .2s ease,
        background .2s ease,
        box-shadow .2s ease;
}


.mega-feature:hover{
    transform:translateY(-2px);

    border-color:
        var(--pillar-border);

    background:
        linear-gradient(
            145deg,
            #fff,
            var(--pillar-soft)
        );

    box-shadow:
        0 9px 20px rgba(40,65,94,.065);
}


/* feature icon */

.mega-feature__icon{
    width:30px;
    height:30px;

    display:grid;
    place-items:center;

    border:
        1px solid var(--pillar-border);

    border-radius:9px;

    background:
        var(--pillar-soft);

    color:var(--pillar);
}


.mega-feature__icon svg{
    width:15px;
    height:15px;
}


/* feature text */

.mega-feature div{
    min-width:0;
}


.mega-feature b{
    display:block;

    margin-bottom:3px;

    color:#25374f;

    font-size:9px;
    line-height:1.2;

    font-weight:760;
}


.mega-feature small{
    display:block;

    color:#8a98aa;

    font-size:6.5px;
    line-height:1.3;
}


/* =========================================================
   FOOTER
   ========================================================= */

.pillar-mega__footer{
    display:flex;
    align-items:center;
    justify-content:center;

    flex-wrap:wrap;

    gap:9px 24px;

    margin-top:14px;

    padding:
        13px
        8px
        2px;

    border-top:
        1px solid #e9eef4;

    color:#8493a7;

    font-size:6.5px;
    line-height:1;

    font-weight:800;

    letter-spacing:.09em;

    text-transform:uppercase;
}


.pillar-mega__footer span{
    display:flex;
    align-items:center;

    gap:7px;
}


.pillar-mega__footer i{
    width:6px;
    height:6px;

    border-radius:50%;

    background:#18b399;

    box-shadow:
        0 0 0 5px
        rgba(24,179,153,.08);
}


/* =========================================================
   MOBILE PILLARS
   ========================================================= */

.mobile-pillars-label{
    display:flex;
    align-items:center;

    gap:14px;

    margin:
        9px
        0
        8px;

    padding:
        12px
        4px;

    color:#718198;

    font-size:11px;
    font-weight:800;

    letter-spacing:.06em;
}


.mobile-pillars-label > span{
    color:#9aa7b7;

    font-size:9px;
}


/* pillar */

.mobile-pillar{
    --pillar:#17b09a;
    --pillar-soft:rgba(23,176,154,.08);
    --pillar-border:rgba(23,176,154,.18);

    margin-bottom:8px;

    border:
        1px solid var(--pillar-border);

    border-radius:16px;

    background:
        rgba(255,255,255,.035);

    overflow:hidden;
}


.mobile-pillar--growth{
    --pillar:#df9413;
    --pillar-soft:rgba(223,148,19,.08);
    --pillar-border:rgba(223,148,19,.18);
}


.mobile-pillar--protection{
    --pillar:#775fe9;
    --pillar-soft:rgba(119,95,233,.08);
    --pillar-border:rgba(119,95,233,.18);
}


/* summary */

.mobile-pillar summary{
    list-style:none;

    display:grid;

    grid-template-columns:
        34px
        minmax(0,1fr)
        20px;

    gap:10px;

    align-items:center;

    padding:12px;

    cursor:pointer;
}


.mobile-pillar summary::-webkit-details-marker{
    display:none;
}


.mobile-pillar-number{
    width:34px;
    height:34px;

    display:grid;
    place-items:center;

    border-radius:10px;

    background:
        var(--pillar-soft);

    color:var(--pillar);

    font-size:9px;
    font-weight:850;
}


.mobile-pillar summary b{
    display:block;

    font-size:12px;
    line-height:1.2;
}


.mobile-pillar summary small{
    display:block;

    margin-top:3px;

    color:#8897aa;

    font-size:8px;
}


.mobile-pillar summary > svg{
    color:#8c9aae;

    transition:
        transform .2s ease;
}


.mobile-pillar[open] summary > svg{
    transform:rotate(180deg);
}


/* 2 × 2 mobile feature list */

.mobile-pillar-features{
    display:grid;

    grid-template-columns:
        repeat(2,minmax(0,1fr));

    gap:7px;

    padding:
        2px
        10px
        11px;
}


.mobile-pillar-features a{
    min-width:0;

    display:flex;
    align-items:center;

    gap:7px;

    padding:10px 9px;

    border:
        1px solid var(--pillar-border);

    border-radius:10px;

    background:
        var(--pillar-soft);

    color:inherit;

    font-size:9px;
    line-height:1.25;

    font-weight:650;
}


.mobile-pillar-features a svg{
    width:14px;
    height:14px;

    flex:0 0 14px;

    color:var(--pillar);
}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media(max-width:430px){

    .mobile-pillar-features{
        grid-template-columns:1fr;
    }

}
/* =========================================================
   OPRYVA — DIRECT PILLAR NAVIGATION
   ========================================================= */

.desktop-nav{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:3px;
}


/* normal links + pillar buttons */
.desktop-nav > a,
.desktop-nav .nav-pillar > button{
    position:relative;

    display:flex;
    align-items:center;
    justify-content:center;
    gap:5px;

    min-height:54px;

    padding:0 11px;

    border:0;
    background:transparent;

    color:#44556e;

    font:inherit;
    font-size:12px;
    font-weight:700;

    white-space:nowrap;

    cursor:pointer;

    transition:
        color .2s ease,
        background .2s ease;
}


/* hover */
.desktop-nav > a:hover,
.desktop-nav .nav-pillar:hover > button{
    color:#102039;
}


/* active home/page */
.desktop-nav > a.active{
    color:#102039;

    background:#f6f8fb;

    border-radius:11px;
}


/* orange active underline */
.desktop-nav > a.active::after{
    content:"";

    position:absolute;

    left:12px;
    right:12px;
    bottom:-1px;

    height:2px;

    border-radius:999px;

    background:#f5a623;
}


/* =========================================================
   PILLAR DROPDOWN
   ========================================================= */

.nav-pillar{
    position:relative;
}


/* rotate chevron */
.nav-pillar > button svg{
    transition:transform .2s ease;
}

.nav-pillar:hover > button svg,
.nav-pillar:focus-within > button svg{
    transform:rotate(180deg);
}


/* panel */
.nav-pillar-panel{
    --pillar:#18b49d;
    --pillar-soft:rgba(24,180,157,.08);
    --pillar-border:rgba(24,180,157,.18);

    position:absolute;

    left:50%;
    top:calc(100% + 8px);

    z-index:1000;

    width:470px;

    padding:16px;

    border:1px solid #dce6f0;
    border-radius:20px;

    background:
        radial-gradient(
            circle at 8% 8%,
            var(--pillar-soft),
            transparent 30%
        ),
        rgba(255,255,255,.985);

    backdrop-filter:blur(22px);
    -webkit-backdrop-filter:blur(22px);

    box-shadow:
        0 26px 65px rgba(26,50,78,.14);

    opacity:0;
    visibility:hidden;
    pointer-events:none;

    transform:
        translate(-50%,12px)
        scale(.985);

    transform-origin:top center;

    transition:
        opacity .2s ease,
        visibility .2s ease,
        transform .24s ease;
}


/* hover bridge */
.nav-pillar-panel::before{
    content:"";

    position:absolute;

    left:0;
    right:0;
    top:-14px;

    height:15px;
}


/* open */
.nav-pillar:hover .nav-pillar-panel,
.nav-pillar:focus-within .nav-pillar-panel{
    opacity:1;
    visibility:visible;
    pointer-events:auto;

    transform:
        translate(-50%,0)
        scale(1);
}


/* themes */
.nav-pillar--product .nav-pillar-panel{
    --pillar:#14ad96;
    --pillar-soft:rgba(20,173,150,.085);
    --pillar-border:rgba(20,173,150,.20);
}

.nav-pillar--growth .nav-pillar-panel{
    --pillar:#e59a17;
    --pillar-soft:rgba(229,154,23,.085);
    --pillar-border:rgba(229,154,23,.20);
}

.nav-pillar--protection .nav-pillar-panel{
    --pillar:#765de8;
    --pillar-soft:rgba(118,93,232,.085);
    --pillar-border:rgba(118,93,232,.20);
}


/* =========================================================
   DROPDOWN HEADER
   ========================================================= */

.nav-pillar-panel__head{
    display:grid;

    grid-template-columns:40px minmax(0,1fr);

    gap:11px;
    align-items:center;

    padding:
        2px
        2px
        14px;

    margin-bottom:12px;

    border-bottom:1px solid #e9eef4;
}


.nav-pillar-panel__head .pillar-no{
    width:40px;
    height:40px;

    display:grid;
    place-items:center;

    border:1px solid var(--pillar-border);
    border-radius:12px;

    background:var(--pillar-soft);

    color:var(--pillar);

    font-size:10px;
    font-weight:850;
}


.nav-pillar-panel__head small{
    display:block;

    margin-bottom:4px;

    color:var(--pillar);

    font-size:7px;
    font-weight:850;

    letter-spacing:.13em;
}


.nav-pillar-panel__head b{
    display:block;

    color:#14243b;

    font-size:15px;
    line-height:1.1;

    letter-spacing:-.02em;
}


/* =========================================================
   FEATURES — EXACT 2 × 2
   ========================================================= */

.nav-pillar-features{
    display:grid;

    grid-template-columns:
        repeat(2,minmax(0,1fr));

    gap:9px;
}


.nav-pillar-features > a{
    min-width:0;
    min-height:78px;

    display:grid;

    grid-template-columns:
        36px
        minmax(0,1fr);

    gap:10px;
    align-items:center;

    padding:11px;

    border:1px solid #e7edf4;
    border-radius:13px;

    background:#fff;

    transition:
        transform .2s ease,
        border-color .2s ease,
        background .2s ease,
        box-shadow .2s ease;
}


.nav-pillar-features > a:hover{
    transform:translateY(-2px);

    border-color:var(--pillar-border);

    background:
        linear-gradient(
            145deg,
            #fff,
            var(--pillar-soft)
        );

    box-shadow:
        0 9px 22px rgba(37,62,91,.07);
}


/* icon */
.nav-pillar-features > a > span{
    width:36px;
    height:36px;

    display:grid;
    place-items:center;

    border:1px solid var(--pillar-border);
    border-radius:10px;

    background:var(--pillar-soft);

    color:var(--pillar);
}


.nav-pillar-features > a > span svg{
    width:17px;
    height:17px;
}


/* text */
.nav-pillar-features b{
    display:block;

    margin-bottom:4px;

    color:#263950;

    font-size:10px;
    line-height:1.2;

    font-weight:760;
}


.nav-pillar-features small{
    display:block;

    color:#8b99ab;

    font-size:7px;
    line-height:1.3;
}


/* =========================================================
   YEARLY ACCESS BUTTON
   ========================================================= */

.yearly-access-btn{
    min-width:132px;

    justify-content:center;

    white-space:nowrap;
}


/* =========================================================
   DESKTOP WIDTH SAFETY
   ========================================================= */

@media(max-width:1250px){

    .desktop-nav > a,
    .desktop-nav .nav-pillar > button{
        padding-inline:8px;

        font-size:11px;
    }

}


@media(max-width:1120px){

    .desktop-nav{
        display:none !important;
    }

}
/* =========================================================
   OPRYVA — PREMIUM PILLAR COCKPIT MEGA MENU
   ========================================================= */

.nav-pillar{
    position:relative;
}


/* =========================================================
   PANEL
   ========================================================= */

.nav-pillar-panel.pillar-cockpit{
    --pillar:#19b79a;
    --pillar-rgb:25,183,154;

    position:absolute;

    left:50%;
    top:calc(100% + 8px);

    z-index:1200;

    width:680px;

    display:grid;
    grid-template-columns:190px minmax(0,1fr);

    padding:0;

    border:
        1px solid rgba(66,91,122,.14);

    border-radius:24px;

    background:
        rgba(251,253,255,.985);

    backdrop-filter:blur(24px);
    -webkit-backdrop-filter:blur(24px);

    box-shadow:
        0 34px 85px rgba(29,50,76,.17),
        0 8px 25px rgba(29,50,76,.07);

    overflow:hidden;

    isolation:isolate;

    opacity:0;
    visibility:hidden;

    pointer-events:none;

    transform:
        translate(-50%,14px)
        perspective(900px)
        rotateX(-3deg)
        scale(.985);

    transform-origin:top center;

    transition:
        opacity .18s ease,
        visibility .18s ease,
        transform .28s cubic-bezier(.2,.8,.2,1);
}


/* THEMES */

.nav-pillar--product .pillar-cockpit{
    --pillar:#13b49c;
    --pillar-rgb:19,180,156;
}

.nav-pillar--growth .pillar-cockpit{
    --pillar:#ec9b13;
    --pillar-rgb:236,155,19;
}

.nav-pillar--protection .pillar-cockpit{
    --pillar:#785ef0;
    --pillar-rgb:120,94,240;
}


/* hover bridge */

.pillar-cockpit::before{
    content:"";

    position:absolute;

    left:0;
    right:0;

    top:-16px;

    height:18px;
}


/* open */

.nav-pillar:hover .pillar-cockpit,
.nav-pillar:focus-within .pillar-cockpit{
    opacity:1;
    visibility:visible;

    pointer-events:auto;

    transform:
        translate(-50%,0)
        perspective(900px)
        rotateX(0)
        scale(1);
}


/* =========================================================
   BACKGROUND DETAILS
   ========================================================= */

.pillar-cockpit__gridbg{
    position:absolute;

    inset:0;

    z-index:-3;

    opacity:.32;

    background-image:
        linear-gradient(
            rgba(61,89,120,.055) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(61,89,120,.055) 1px,
            transparent 1px
        );

    background-size:26px 26px;

    pointer-events:none;
}


.pillar-cockpit__glow{
    position:absolute;

    z-index:-2;

    width:300px;
    height:300px;

    left:34%;
    top:-160px;

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(var(--pillar-rgb),.15),
            transparent 68%
        );

    filter:blur(5px);

    animation:
        pillarCockpitGlow
        4.8s ease-in-out infinite;
}


@keyframes pillarCockpitGlow{

    0%,100%{
        opacity:.55;
        transform:scale(.88);
    }

    50%{
        opacity:1;
        transform:scale(1.08);
    }

}


/* =========================================================
   LEFT IDENTITY PANEL
   ========================================================= */

.pillar-cockpit__side{
    position:relative;

    min-width:0;

    padding:
        24px
        20px;

    border-right:
        1px solid rgba(66,91,122,.11);

    background:
        linear-gradient(
            160deg,
            rgba(var(--pillar-rgb),.095),
            rgba(255,255,255,.68) 52%,
            rgba(var(--pillar-rgb),.035)
        );
}


/* vertical accent */

.pillar-cockpit__side::before{
    content:"";

    position:absolute;

    left:0;
    top:22px;
    bottom:22px;

    width:3px;

    border-radius:
        0 999px 999px 0;

    background:
        linear-gradient(
            var(--pillar),
            rgba(var(--pillar-rgb),.18)
        );

    box-shadow:
        0 0 18px
        rgba(var(--pillar-rgb),.25);
}


/* 01 / 02 / 03 */

.pillar-side-number{
    position:relative;

    width:48px;
    height:48px;

    display:grid;
    place-items:center;

    margin-bottom:22px;

    border:
        1px solid rgba(var(--pillar-rgb),.26);

    border-radius:15px;

    background:
        linear-gradient(
            145deg,
            #fff,
            rgba(var(--pillar-rgb),.10)
        );

    color:var(--pillar);

    font-size:12px;
    font-weight:850;

    box-shadow:
        0 12px 24px
        rgba(var(--pillar-rgb),.11);
}


.pillar-side-number i{
    position:absolute;

    right:-4px;
    top:-4px;

    width:9px;
    height:9px;

    border:2px solid #fff;
    border-radius:50%;

    background:var(--pillar);

    box-shadow:
        0 0 0 5px
        rgba(var(--pillar-rgb),.09);

    animation:
        pillarDotPulse
        1.8s ease-in-out infinite;
}


@keyframes pillarDotPulse{

    50%{
        box-shadow:
            0 0 0 9px
            rgba(var(--pillar-rgb),0);
    }

}


.pillar-cockpit__side > small{
    display:block;

    margin-bottom:8px;

    color:var(--pillar);

    font-size:7px;
    font-weight:850;

    letter-spacing:.15em;
}


.pillar-cockpit__side h3{
    margin:0;

    color:#112038;

    font-size:24px;
    line-height:.98;

    letter-spacing:-.05em;
}


.pillar-cockpit__side > p{
    margin:13px 0 18px;

    color:#708096;

    font-size:9px;
    line-height:1.55;
}


.pillar-cockpit__side > a{
    display:inline-flex;
    align-items:center;

    gap:7px;

    color:#273b55;

    font-size:9px;
    font-weight:760;
}


.pillar-cockpit__side > a svg{
    transition:transform .2s ease;
}


.pillar-cockpit__side > a:hover{
    color:var(--pillar);
}


.pillar-cockpit__side > a:hover svg{
    transform:translateX(3px);
}


/* status */

.pillar-side-status{
    position:absolute;

    left:20px;
    right:20px;
    bottom:20px;

    display:flex;
    align-items:center;

    gap:7px;

    padding-top:14px;

    border-top:
        1px solid rgba(71,96,125,.10);

    color:#8a98aa;

    font-size:6.5px;
    font-weight:800;

    letter-spacing:.08em;

    text-transform:uppercase;
}


.pillar-side-status i{
    width:6px;
    height:6px;

    border-radius:50%;

    background:var(--pillar);

    box-shadow:
        0 0 0 5px
        rgba(var(--pillar-rgb),.08);
}


/* =========================================================
   RIGHT CONTENT
   ========================================================= */

.pillar-cockpit__content{
    min-width:0;

    padding:20px;
}


/* top */

.pillar-cockpit__top{
    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:15px;

    margin-bottom:13px;
}


.pillar-cockpit__top span:first-child{
    display:block;

    margin-bottom:4px;

    color:#92a0b1;

    font-size:6px;
    font-weight:850;

    letter-spacing:.15em;
}


.pillar-cockpit__top strong{
    display:block;

    color:#21344d;

    font-size:11px;
    font-weight:750;
}


/* LIVE */

.pillar-live{
    display:flex !important;
    align-items:center;

    gap:6px;

    margin:0 !important;

    padding:7px 9px;

    border:
        1px solid rgba(var(--pillar-rgb),.18);

    border-radius:999px;

    background:
        rgba(var(--pillar-rgb),.055);

    color:var(--pillar) !important;

    font-size:6px !important;

    letter-spacing:.11em;
}


.pillar-live i{
    width:6px;
    height:6px;

    border-radius:50%;

    background:var(--pillar);

    animation:
        navLivePulse
        1.5s ease-in-out infinite;
}


@keyframes navLivePulse{

    50%{
        opacity:.35;
        transform:scale(.72);
    }

}


/* =========================================================
   FEATURE GRID — 2 × 2
   ========================================================= */

.pillar-cockpit__features{
    display:grid;

    grid-template-columns:
        repeat(2,minmax(0,1fr));

    gap:9px;
}


.pillar-cockpit__features > a{
    position:relative;

    min-width:0;
    min-height:104px;

    display:grid;

    grid-template-columns:
        40px
        minmax(0,1fr)
        18px;

    gap:10px;

    align-items:start;

    padding:13px;

    border:
        1px solid #e3eaf2;

    border-radius:15px;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.98),
            rgba(248,251,255,.96)
        );

    box-shadow:
        0 9px 24px
        rgba(35,60,88,.04);

    overflow:hidden;

    transition:
        transform .22s ease,
        border-color .22s ease,
        box-shadow .22s ease;
}


/* subtle accent underneath */

.pillar-cockpit__features > a::before{
    content:"";

    position:absolute;

    left:0;
    right:0;
    bottom:0;

    height:2px;

    background:
        linear-gradient(
            90deg,
            transparent,
            var(--pillar),
            transparent
        );

    opacity:0;

    transform:scaleX(.45);

    transition:
        opacity .22s ease,
        transform .22s ease;
}


.pillar-cockpit__features > a:hover{
    transform:
        translateY(-4px);

    border-color:
        rgba(var(--pillar-rgb),.28);

    box-shadow:
        0 16px 30px
        rgba(36,60,89,.09);
}


.pillar-cockpit__features > a:hover::before{
    opacity:1;
    transform:scaleX(1);
}


/* 3D icon */

.cockpit-feature-icon{
    width:40px;
    height:40px;

    display:grid;
    place-items:center;

    border:
        1px solid rgba(var(--pillar-rgb),.22);

    border-radius:12px;

    background:
        linear-gradient(
            145deg,
            #fff,
            rgba(var(--pillar-rgb),.11)
        );

    color:var(--pillar);

    box-shadow:
        0 8px 15px
        rgba(var(--pillar-rgb),.09),
        inset 0 1px 0 #fff;

    transition:
        transform .25s ease;
}


.pillar-cockpit__features > a:hover
.cockpit-feature-icon{
    transform:
        translateY(-2px)
        rotate(-3deg)
        scale(1.05);
}


/* labels */

.pillar-cockpit__features small{
    display:block;

    margin:
        1px 0
        6px;

    color:#9aa6b5;

    font-size:6px;
    line-height:1;

    font-weight:850;

    letter-spacing:.11em;
}


.pillar-cockpit__features b{
    display:block;

    color:#253850;

    font-size:10px;
    line-height:1.18;

    font-weight:780;
}


.pillar-cockpit__features p{
    margin:6px 0 0;

    color:#7e8da0;

    font-size:7px;
    line-height:1.4;

    display:-webkit-box;

    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;

    overflow:hidden;
}


/* arrow */

.cockpit-arrow{
    width:18px;
    height:18px;

    display:grid;
    place-items:center;

    align-self:center;

    border-radius:50%;

    color:#a2adba;

    transition:
        background .2s ease,
        color .2s ease,
        transform .2s ease;
}


.pillar-cockpit__features > a:hover
.cockpit-arrow{
    color:var(--pillar);

    background:
        rgba(var(--pillar-rgb),.08);

    transform:translateX(2px);
}


/* =========================================================
   CONNECTED SIGNAL FOOTER
   ========================================================= */

.pillar-cockpit__signal{
    display:grid;

    grid-template-columns:
        auto
        minmax(60px,1fr)
        auto;

    gap:10px;

    align-items:center;

    margin-top:14px;
}


.pillar-cockpit__signal > span{
    display:flex;
    align-items:center;

    gap:6px;

    color:#8b99ab;

    font-size:6px;
    font-weight:800;

    letter-spacing:.07em;

    text-transform:uppercase;
}


.pillar-cockpit__signal > span i{
    width:6px;
    height:6px;

    border-radius:50%;

    background:var(--pillar);

    box-shadow:
        0 0 0 5px
        rgba(var(--pillar-rgb),.07);
}


.pillar-cockpit__signal > b{
    color:var(--pillar);

    font-size:6px;

    letter-spacing:.12em;
}


/* signal track */

.cockpit-signal-line{
    position:relative;

    height:1px;

    overflow:hidden;

    background:
        rgba(var(--pillar-rgb),.15);
}


.cockpit-signal-line i{
    position:absolute;

    left:-20px;
    top:-2px;

    width:5px;
    height:5px;

    border-radius:50%;

    background:var(--pillar);

    box-shadow:
        0 0 10px
        var(--pillar);

    animation:
        megaSignalTravel
        2.8s linear infinite;
}


@keyframes megaSignalTravel{

    to{
        left:calc(100% + 20px);
    }

}


/* =========================================================
   WIDTH SAFETY
   ========================================================= */

@media(max-width:1260px){

    .nav-pillar-panel.pillar-cockpit{
        width:620px;

        grid-template-columns:
            170px
            minmax(0,1fr);
    }

    .pillar-cockpit__side h3{
        font-size:21px;
    }

}
/* =========================================================
   OPRYVA — GLOBAL HEADING RESPONSIVE SYSTEM
   MAXIMUM 3 LINES ON EVERY PAGE
   ========================================================= */


/* ---------------------------------------------------------
   GLOBAL SAFETY
   --------------------------------------------------------- */

html,
body{
    max-width:100%;
    overflow-x:hidden;
}

*,
*::before,
*::after{
    box-sizing:border-box;
}


/* =========================================================
   ALL CONTENT HEADINGS
   Header / navigation ko intentionally exclude kiya hai
   ========================================================= */

body main :is(h1,h2,h3,h4,h5,h6),
body .page-content :is(h1,h2,h3,h4,h5,h6),
body .section-heading :is(h1,h2,h3),
body .pillar-page :is(h1,h2,h3,h4),
body .pillar-heading :is(h1,h2,h3),
body .hero-copy :is(h1,h2),
body .hero-content :is(h1,h2),
body .table-heading :is(h2,h3),
body .replaced-heading :is(h2,h3),
body .demo-strip :is(h2,h3){

    /* never exceed available width */
    width:auto;
    max-width:100%;

    /* cleaner wrapping */
    overflow-wrap:normal;
    word-break:normal;
    hyphens:none;

    /* balanced SaaS heading */
    text-wrap:balance;

    /* MAXIMUM 3 LINES */
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:3 !important;

    overflow:hidden !important;

    /* remove weird clipping */
    padding-bottom:.04em;
}


/* =========================================================
   H1 — HERO / INNER PAGE HERO
   ========================================================= */

body main h1,
body .hero-copy h1,
body .hero-content h1,
body .pillar-page h1{

    max-width:16ch;

    margin-left:0;
    margin-right:0;

    font-size:clamp(
        48px,
        5.2vw,
        78px
    );

    line-height:.98;

    letter-spacing:-.055em;
}


/* =========================================================
   H2 — SECTION HEADINGS
   ========================================================= */

body main h2,
body .section-heading h2,
body .pillar-heading h2,
body .replaced-heading h2,
body .demo-strip h2{

    max-width:20ch;

    font-size:clamp(
        34px,
        3.5vw,
        54px
    );

    line-height:1.03;

    letter-spacing:-.045em;
}


/* =========================================================
   H3
   ========================================================= */

body main h3,
body .table-heading h3{

    max-width:28ch;

    font-size:clamp(
        24px,
        2.3vw,
        36px
    );

    line-height:1.08;

    letter-spacing:-.035em;
}


/* =========================================================
   SMALLER HEADINGS
   Cards / Modules
   ========================================================= */

body main h4{
    max-width:32ch;

    font-size:clamp(
        17px,
        1.5vw,
        22px
    );

    line-height:1.18;
}

body main h5,
body main h6{
    max-width:36ch;

    line-height:1.25;
}


/* =========================================================
   SECTION HEADING WIDTH CONTROL
   ========================================================= */

body .section-heading,
body .pillar-heading,
body .hero-copy,
body .hero-content{

    min-width:0;
    max-width:100%;
}

body .section-heading h1,
body .section-heading h2,
body .section-heading h3,
body .pillar-heading h1,
body .pillar-heading h2,
body .pillar-heading h3{

    margin-left:0;
    margin-right:0;
}


/* Centered sections stay centered */

body .section-heading.centered :is(h1,h2,h3),
body .section-heading.text-center :is(h1,h2,h3),
body .text-center :is(h1,h2,h3){

    margin-left:auto;
    margin-right:auto;

    text-align:center;
}


/* =========================================================
   DESKTOP — prevent unnecessarily narrow headings
   ========================================================= */

@media(min-width:1101px){

    body main h1,
    body .hero-copy h1,
    body .hero-content h1,
    body .pillar-page h1{

        max-width:15ch;
    }

    body main h2,
    body .section-heading h2{

        max-width:19ch;
    }

}


/* =========================================================
   TABLET
   ========================================================= */

@media(max-width:1100px){

    body main h1,
    body .hero-copy h1,
    body .hero-content h1,
    body .pillar-page h1{

        max-width:17ch;

        font-size:clamp(
            46px,
            7vw,
            66px
        );

        line-height:.99;
    }


    body main h2,
    body .section-heading h2,
    body .pillar-heading h2{

        max-width:22ch;

        font-size:clamp(
            34px,
            5vw,
            48px
        );
    }


    body main h3{

        max-width:30ch;

        font-size:clamp(
            23px,
            3vw,
            32px
        );
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media(max-width:700px){

    body main :is(h1,h2,h3,h4,h5,h6){

        width:100%;

        /* still maximum 3 lines */
        -webkit-line-clamp:3 !important;

        text-wrap:balance;
    }


    /* HERO */

    body main h1,
    body .hero-copy h1,
    body .hero-content h1,
    body .pillar-page h1{

        max-width:15ch;

        font-size:clamp(
            38px,
            10vw,
            52px
        ) !important;

        line-height:1 !important;

        letter-spacing:-.05em;
    }


    /* SECTION */

    body main h2,
    body .section-heading h2,
    body .pillar-heading h2,
    body .replaced-heading h2,
    body .demo-strip h2{

        max-width:18ch;

        font-size:clamp(
            30px,
            8vw,
            40px
        ) !important;

        line-height:1.04 !important;
    }


    /* SUB HEADINGS */

    body main h3,
    body .table-heading h3{

        max-width:24ch;

        font-size:clamp(
            22px,
            6vw,
            29px
        ) !important;

        line-height:1.08 !important;
    }


    body main h4{

        max-width:28ch;

        font-size:17px;

        line-height:1.18;
    }

}


/* =========================================================
   SMALL PHONES
   ========================================================= */

@media(max-width:430px){

    body main h1,
    body .hero-copy h1,
    body .hero-content h1,
    body .pillar-page h1{

        max-width:14ch;

        font-size:clamp(
            35px,
            10.2vw,
            44px
        ) !important;

        line-height:1.01 !important;
    }


    body main h2,
    body .section-heading h2,
    body .pillar-heading h2{

        max-width:17ch;

        font-size:clamp(
            28px,
            8vw,
            36px
        ) !important;
    }


    body main h3{

        max-width:22ch;

        font-size:22px !important;
    }

}


/* =========================================================
   VERY SMALL PHONES
   ========================================================= */

@media(max-width:360px){

    body main h1{

        max-width:15ch;

        font-size:34px !important;
    }


    body main h2{

        max-width:18ch;

        font-size:28px !important;
    }


    body main h3{

        font-size:21px !important;
    }

}