@font-face{font-family:'Inter';font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fonts/inter-400.8909904ab6.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:italic;font-display:swap;font-weight:400;src:url(/assets/fonts/inter-400-italic.7ea9d2f127.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Cairo';font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fonts/cairo-400.1e12ba8a71.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fonts/inter-500.f3779f1efc.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:italic;font-display:swap;font-weight:500;src:url(/assets/fonts/inter-500-italic.ec7b5fad60.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Cairo';font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fonts/cairo-500.023bd040cf.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fonts/inter-600.f9a06e79cd.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:italic;font-display:swap;font-weight:600;src:url(/assets/fonts/inter-600-italic.c45ec86655.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Cairo';font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fonts/cairo-600.7212d7c494.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fonts/inter-700.6f56409fd3.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:italic;font-display:swap;font-weight:700;src:url(/assets/fonts/inter-700-italic.facd8f930c.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Cairo';font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fonts/cairo-700.c174069a5f.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
/* ===== Xpect v2 — tokens (Xpect corporate deck) ===== */
:root{
  color-scheme: dark;
  --ink:#010a10; --abyss:#03151f; --deep:#072433; --petrol:#0e3948;
  --line:rgba(134,205,220,.12); --line-2:rgba(134,205,220,.24);
  --teal:#2694ae; --teal-2:#45afc8; --teal-lt:#8fd3e2;
  --gold:#d9a641; --gold-dim:rgba(217,166,65,.42);
  --green:#8cc63c; --red:#e5484f;
  --text:#ecf5f7; --muted:#a9bfc7; --dim:#6b8590;
  --surf-a:#0a2834; --surf-b:#04151e;
  --edge:linear-gradient(150deg,rgba(143,211,226,.55),rgba(143,211,226,.08) 32%,rgba(143,211,226,.04) 64%,rgba(217,166,65,.32));
  --r-l:28px; --r-m:20px; --r-s:12px;
  --maxw:1240px; --gut:clamp(20px,4vw,48px);
  --font:'Inter',ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --fs-display:clamp(4.2rem,12.5vw,11rem);
  --fs-h1:clamp(2.8rem,6.6vw,6rem);
  --fs-h2:clamp(2.05rem,4.3vw,3.6rem);
  --fs-h3:clamp(1.15rem,1.5vw,1.375rem);
  --fs-lead:clamp(1.125rem,1.5vw,1.375rem);
  --fs-body:1.0625rem;
  --top:92px;
  --net:url(/assets/img/net-texture.0dda18039c.svg);
}
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]){ --ink:#010a10; --text:#ecf5f7; } }
:root[data-theme="dark"]{ --ink:#010a10; --text:#ecf5f7; }
@property --ang{syntax:'<angle>';initial-value:0deg;inherits:false}

/* ===== base ===== */
*,*::before,*::after{box-sizing:border-box}
:root{box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
html{scroll-padding-top:calc(var(--top) + env(safe-area-inset-top,0px));-webkit-text-size-adjust:100%;background:var(--ink)}
body{margin:0;background:var(--ink);color:var(--text);font-family:var(--font);font-size:var(--fs-body);line-height:1.65;font-optical-sizing:auto;
  font-feature-settings:"cv11" 1,"ss03" 1;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
body::after{content:"";position:fixed;inset:0;z-index:200;pointer-events:none;opacity:.05;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
p{margin:0 0 1em} p:last-child{margin-bottom:0}
h1,h2,h3,h4{margin:0;font-weight:600;letter-spacing:-.025em;line-height:1.08;text-wrap:balance;overflow-wrap:break-word}
strong,b{font-weight:600;color:#fff}
::selection{background:rgba(69,175,200,.4)}
:focus-visible{outline:2px solid var(--teal-lt);outline-offset:3px;border-radius:8px}
.wrap{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gut)}
.skip{position:absolute;left:12px;top:-60px;z-index:300;background:var(--teal);color:#fff;padding:10px 16px;border-radius:999px;text-decoration:none}
.skip:focus{top:12px}
main{display:block;overflow-x:clip}
.page-in{animation:pagein .5s cubic-bezier(.2,.7,.2,1)}
@keyframes pagein{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* ===== surfaces: glass cards with light-catching edge ===== */
.pcard,.benefit,.tile,.q,.callout,.why article,.person,.box,.vs-card,.stat,.btile,.cband,.chart-wrap,.msg .bubble,.badge,.fields-card{
  position:relative;border:1px solid transparent;border-radius:var(--r-l);
  background:linear-gradient(160deg,var(--surf-a),var(--surf-b) 70%) padding-box,var(--edge) border-box;
  box-shadow:0 24px 60px -24px rgba(0,0,0,.6),inset 0 1px 0 rgba(255,255,255,.04)}
.spot{isolation:isolate}
.spot::before{content:"";position:absolute;inset:0;border-radius:inherit;z-index:-1;pointer-events:none;opacity:0;transition:opacity .35s;
  background:radial-gradient(520px circle at var(--mx,50%) var(--my,0%),rgba(69,175,200,.16),transparent 55%)}
.spot:hover::before{opacity:1}

/* ===== floating header ===== */
.hdr{position:fixed;inset:0 0 auto 0;z-index:80;padding:calc(env(safe-area-inset-top,0px) + 14px) var(--gut) 0;pointer-events:none}
.hdr-in{pointer-events:auto;max-width:1180px;margin:0 auto;height:62px;padding:0 8px 0 18px;border-radius:999px;display:flex;align-items:center;justify-content:space-between;
  background:rgba(4,22,31,.5);backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);
  border:1px solid rgba(143,211,226,.16);box-shadow:0 12px 40px -12px rgba(0,0,0,.6),inset 0 1px 0 rgba(255,255,255,.06);transition:background .3s}
.hdr.is-scrolled .hdr-in,.hdr.menu-open .hdr-in{background:rgba(3,18,26,.86)}
.brand{display:flex;align-items:center;color:#fff;text-decoration:none}
.brand .logo{width:38px;height:auto}
.nav{display:flex;align-items:center;gap:2px}
.nav>a,.nav .dd>a{color:var(--muted);text-decoration:none;font-size:.94rem;font-weight:500;padding:9px 14px;border-radius:999px;transition:color .2s,background .2s}
.nav>a:hover,.nav .dd>a:hover{color:#fff}
.nav a.is-active{color:#fff;background:rgba(69,175,200,.14)}
.nav .nav-cta{margin-left:8px;color:#fff !important;background:linear-gradient(180deg,#38abc6,#1f839d);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 6px 20px -6px rgba(38,148,174,.6);padding:10px 20px}
.nav .nav-cta:hover,.nav .nav-cta.is-active{background:linear-gradient(180deg,#4fbcd5,#2694ae)}
.dd{position:relative;display:flex;align-items:center;border-radius:999px;transition:background .2s}
.dd:has(>a.is-active){background:rgba(69,175,200,.14)}
.dd:has(>a.is-active) .dd-btn{color:#fff}
.nav .dd>a.is-active{background:none}
.dd>a{padding-right:4px !important}
.dd-btn{background:none;border:0;color:var(--muted);padding:8px 12px 8px 2px;cursor:pointer;display:flex;border-radius:999px}
.dd-btn .i{width:16px;height:16px;transition:transform .2s}
.dd-menu{position:absolute;top:calc(100% + 14px);left:50%;transform:translate(-50%,8px);width:560px;padding:10px;border-radius:24px;display:grid;grid-template-columns:1fr 1fr;gap:4px;
  background:rgba(3,18,26,.94);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(143,211,226,.18);box-shadow:0 30px 80px rgba(0,0,0,.6);
  opacity:0;visibility:hidden;transition:opacity .2s,transform .2s,visibility .2s}
.dd::after{content:"";position:absolute;left:0;right:0;top:100%;height:16px}
.dd:hover .dd-menu,.dd:focus-within .dd-menu,.dd.is-open .dd-menu{opacity:1;visibility:visible;transform:translate(-50%,0)}
.dd:hover .dd-btn .i,.dd.is-open .dd-btn .i{transform:rotate(180deg)}
.dd.is-closing .dd-menu{opacity:0 !important;visibility:hidden !important;transform:translate(-50%,8px) !important;transition:none !important}
.dd.is-closing .dd-btn .i{transform:none !important}
.dd-menu a{display:flex;align-items:center;gap:12px;padding:12px;border-radius:14px;color:var(--text);text-decoration:none;font-size:.94rem;line-height:1.25}
.dd-menu a:hover,.dd-menu a.is-active{background:rgba(69,175,200,.12)}
.dd-menu a .ic{width:36px;height:36px;border-radius:10px;flex:none;display:grid;place-items:center;color:var(--gold);background:rgba(217,166,65,.08);border:1px solid rgba(217,166,65,.22)}
.dd-menu a .ic .i{width:18px;height:18px}
.menu-btn{display:none;background:rgba(143,211,226,.08);border:0;color:#fff;width:44px;height:44px;border-radius:50%;align-items:center;justify-content:center;cursor:pointer}
.menu-btn .i{width:22px;height:22px}
.mnav{display:none}
.hdr-in .nav{margin-left:auto}
.lang{display:flex;align-items:center;gap:2px;margin-left:10px;padding:3px;border-radius:999px;background:rgba(143,211,226,.05);border:1px solid rgba(143,211,226,.14)}
.lang a{color:var(--muted);text-decoration:none;font-size:.76rem;font-weight:600;letter-spacing:.06em;line-height:1;padding:7px 9px;border-radius:999px;transition:color .2s,background .2s}
.lang a:hover{color:#fff}
.lang a[aria-current]{color:#fff;background:rgba(69,175,200,.2)}
@media (max-width:900px){
  .lang{margin-left:auto;margin-right:8px}
  .nav{display:none}
  .menu-btn{display:flex}
  .hdr-in{height:58px;padding-left:16px}
  .mnav{position:fixed;left:var(--gut);right:var(--gut);top:calc(env(safe-area-inset-top,0px) + 84px);z-index:79;max-height:calc(100svh - 110px);overflow-y:auto;
    padding:12px;border-radius:24px;background:rgba(3,18,26,.97);backdrop-filter:blur(18px);border:1px solid rgba(143,211,226,.18);box-shadow:0 30px 80px rgba(0,0,0,.6)}
  .mnav.is-open{display:block;animation:pagein .25s ease}
  .mnav a{display:flex;align-items:center;gap:14px;padding:13px 12px;border-radius:14px;color:var(--text);text-decoration:none;font-size:1.08rem;font-weight:500}
  .mnav a:hover{background:rgba(69,175,200,.1)}
  .mnav a .i{width:20px;height:20px;color:var(--gold)}
  .mnav .sub{padding:0 0 6px 10px;margin:0 0 6px;border-bottom:1px solid var(--line)}
  .mnav .sub a{font-size:.98rem;color:var(--muted);padding:10px 12px}
  .mnav a.is-active{color:var(--teal-lt);background:rgba(69,175,200,.1)}
}

/* ===== type ===== */
.pair{font-size:var(--fs-h2);max-width:22ch;letter-spacing:-.04em;line-height:1.03}
.pair>span{display:block}
.pair>span+span{background:linear-gradient(90deg,var(--teal-2),var(--teal-lt) 70%);-webkit-background-clip:text;background-clip:text;color:transparent}
.pair.wide{max-width:28ch}
.split>.pair,.split>div>.pair,.gblock .pair{font-size:clamp(1.75rem,2.9vw,2.7rem)}
.lead{font-size:var(--fs-lead);line-height:1.55;color:var(--text);max-width:60ch}
.prose{max-width:66ch;color:var(--muted)}
.prose strong{color:var(--text)}
.muted{color:var(--muted)}
.btn{display:inline-flex;align-items:center;gap:10px;padding:15px 26px;border-radius:999px;font-weight:600;font-size:1rem;text-decoration:none;color:#fff;border:0;
  background:linear-gradient(180deg,#38abc6,#1f839d);box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 10px 30px -10px rgba(38,148,174,.7);transition:box-shadow .25s,transform .25s,filter .25s}
.btn:hover{transform:translateY(-1px);filter:brightness(1.08);box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 16px 40px -10px rgba(38,148,174,.85)}
.btn .i{width:18px;height:18px}
.btn-ghost{background:rgba(143,211,226,.06);box-shadow:inset 0 0 0 1px rgba(143,211,226,.28)}
.btn-ghost:hover{background:rgba(143,211,226,.12);box-shadow:inset 0 0 0 1px rgba(143,211,226,.5)}

/* ===== sections ===== */
.sec{padding-block:clamp(80px,11vw,152px);position:relative}
.sec-tight{padding-block:clamp(40px,6vw,80px)}
.sec-alt{isolation:isolate}
.sec-alt::before{content:"";position:absolute;z-index:-1;inset:-10% auto -10% -20%;width:70%;pointer-events:none;
  background:radial-gradient(closest-side,rgba(38,148,174,.16),transparent)}
.sec-alt:nth-of-type(even)::before{left:auto;right:-20%}
.sec-head{display:grid;gap:24px;margin-bottom:clamp(40px,5vw,72px)}
.split{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,96px);align-items:start}
.split-even{grid-template-columns:1fr 1fr}
.split.mid{align-items:center}
@media (max-width:900px){.split,.split-even{grid-template-columns:1fr}}
.sec-statement{padding-block:clamp(40px,5vw,72px) 0}
.mt-l{margin-top:clamp(40px,5vw,64px)} .mt-m{margin-top:28px}

/* ===== page hero ===== */
.phero{position:relative;padding:calc(var(--top) + clamp(72px,10vw,150px)) 0 clamp(56px,8vw,112px);overflow:hidden;isolation:isolate}
.phero::before{content:"";position:absolute;inset:0;z-index:-3;-webkit-mask-image:linear-gradient(#000 55%,transparent);mask-image:linear-gradient(#000 55%,transparent);background:
  radial-gradient(55% 75% at 88% 0%,rgba(38,148,174,.36),transparent 70%),radial-gradient(35% 45% at 0% 30%,rgba(14,57,72,.5),transparent 70%)}
.phero .net{position:absolute;inset:0;z-index:-2;opacity:.5;background-image:var(--net);background-size:cover;background-position:center right;
  -webkit-mask-image:linear-gradient(100deg,transparent 20%,#000 75%),linear-gradient(#000 45%,transparent);-webkit-mask-composite:source-in;
  mask-image:linear-gradient(100deg,transparent 20%,#000 75%),linear-gradient(#000 45%,transparent);mask-composite:intersect}
.hero-ic{position:absolute;z-index:-1;right:max(var(--gut),calc((100vw - var(--maxw))/2 + var(--gut)));top:calc(var(--top) + 30px);width:clamp(260px,30vw,420px);aspect-ratio:1;
  display:grid;place-items:center;color:var(--teal-lt);pointer-events:none}
.hero-ic::before{content:"";position:absolute;inset:6%;border-radius:50%;border:1px solid rgba(143,211,226,.14);background:radial-gradient(circle,rgba(38,148,174,.18),transparent 65%)}
.hero-ic::after{content:"";position:absolute;inset:-8%;border-radius:50%;border:1px dashed rgba(217,166,65,.18)}
.hero-ic .i{width:56%;height:56%;stroke-width:.55;opacity:.75;filter:drop-shadow(0 0 18px rgba(69,175,200,.55))}
@media (max-width:1000px){.hero-ic{display:none}}
.crumbs{display:flex;align-items:center;gap:10px;margin-bottom:30px;color:var(--muted);font-size:.92rem}
.crumbs a{color:var(--muted);text-decoration:none} .crumbs a:hover{color:#fff}
.crumbs .chip{display:inline-flex;align-items:center;gap:10px;padding:6px 14px 6px 6px;border-radius:999px;background:rgba(143,211,226,.06);border:1px solid rgba(143,211,226,.16)}
.crumbs .ic{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:rgba(217,166,65,.12);color:var(--gold)}
.crumbs .ic .i{width:16px;height:16px}
.crumbs .sep{color:var(--dim)}
.phero h1{font-size:var(--fs-h1);max-width:15ch;letter-spacing:-.045em;line-height:.98}
.phero .sub{font-size:clamp(1.2rem,1.9vw,1.6rem);font-weight:500;margin-top:26px;max-width:40ch;line-height:1.3;letter-spacing:-.015em;
  background:linear-gradient(90deg,var(--teal-2),var(--teal-lt));-webkit-background-clip:text;background-clip:text;color:transparent}
.phero .intro{margin-top:30px;max-width:60ch;color:var(--muted);font-size:var(--fs-lead);line-height:1.6}
.phero .split{align-items:end;grid-template-columns:minmax(0,7fr) minmax(0,5fr)}

/* ===== home hero ===== */
.hero{position:relative;min-height:min(100svh,1000px);display:flex;align-items:center;padding:calc(var(--top) + 32px) 0 64px;overflow:hidden;isolation:isolate}
.hero::before{content:"";position:absolute;inset:0;z-index:-2;-webkit-mask-image:linear-gradient(#000 70%,transparent);mask-image:linear-gradient(#000 70%,transparent);background:
  radial-gradient(45% 55% at 72% 48%,rgba(38,148,174,.34),transparent 70%),radial-gradient(60% 40% at 20% 110%,rgba(14,57,72,.8),transparent 70%)}
.hero .net{position:absolute;inset:0;z-index:-1;opacity:.35;background-image:var(--net);background-size:cover;background-position:center;
  -webkit-mask-image:radial-gradient(80% 80% at 70% 40%,#000 30%,transparent 80%);mask-image:radial-gradient(80% 80% at 70% 40%,#000 30%,transparent 80%)}
.hero-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(16px,3vw,48px);align-items:center}
.hero-word{font-size:var(--fs-display);font-weight:700;letter-spacing:-.035em;line-height:.82;margin:0 0 .16em -.04em;
  background:linear-gradient(100deg,#fff 0%,#d5eef4 35%,#ffffff 46%,#7fc9da 54%,#e9f7fa 66%,#fff 100%);background-size:260% 100%;background-position:0 0;
  -webkit-background-clip:text;background-clip:text;color:transparent;animation:shine 2.6s cubic-bezier(.4,0,.2,1) .4s both}
@keyframes shine{from{background-position:100% 0}to{background-position:0 0}}
.hero h1{font-size:clamp(2rem,3.9vw,3.5rem);letter-spacing:-.034em;line-height:1.02;max-width:14ch}
.hero .tag{font-size:var(--fs-lead);margin-top:20px;font-weight:500;max-width:30ch;line-height:1.4;
  background:linear-gradient(90deg,var(--teal-2),var(--teal-lt));-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:40px}
.hero-graph{position:relative;margin-right:calc(-1 * clamp(0px,3vw,48px))}
.hero-graph::before{content:"";position:absolute;inset:8% 10%;border-radius:50%;z-index:-1;background:radial-gradient(closest-side,rgba(140,198,60,.12),rgba(38,148,174,.14) 45%,transparent)}
@media (max-width:900px){
  .hero{min-height:auto;padding-top:calc(var(--top) + 40px)}
  .hero-grid{grid-template-columns:1fr}
  .hero-graph{max-width:540px;margin:8px auto 0;width:100%}
}

/* ===== knowledge graph ===== */
.kg{width:100%;height:auto;overflow:visible;font-family:var(--font)}
.kg line{stroke-linecap:round}
.kg-edges line{stroke:#2fa6c0;stroke-width:3;stroke-opacity:.5;transition:stroke-opacity .25s,stroke .25s}
.kg-edges-glow line{stroke:#2694ae;stroke-width:10;stroke-opacity:.16;transition:stroke-opacity .25s}
.kg-node>rect{fill:#04161f;stroke:rgba(255,255,255,.92);stroke-width:2.2;transition:fill .25s,stroke .25s}
.kg-node svg{color:#fff}
.kg-node>text{fill:var(--text);font-size:21px;font-weight:500}
.kg-node{cursor:default;outline:none}
.kg-core>rect{fill:var(--green)}
.kg-core text{fill:#fff;font-size:24px;font-weight:700;letter-spacing:.06em;font-family:var(--font-head)}
.kg-pulses circle{fill:#d6f2f8}
.kg.is-focus .kg-edges line{stroke-opacity:.1}
.kg.is-focus .kg-edges-glow line{stroke-opacity:.03}
.kg.is-focus .kg-edges line.on{stroke:var(--teal-lt);stroke-opacity:1}
.kg.is-focus .kg-edges-glow line.on{stroke-opacity:.5}
.kg.is-focus .kg-node.on>rect{fill:#0c3a4a;stroke:var(--teal-lt)}
.kg-node:focus-visible>rect{stroke:var(--gold)}
.kg-anim .kg-edges line{stroke-dasharray:var(--len);stroke-dashoffset:var(--len);animation:kgdraw 1.1s cubic-bezier(.6,.1,.2,1) var(--d) forwards}
.kg-anim .kg-edges-glow{opacity:0;animation:kgfade 1.2s ease 1.1s forwards}
.kg-anim .kg-node,.kg-anim .kg-core{opacity:0;animation:kgfade .7s ease var(--d) forwards}
@keyframes kgdraw{to{stroke-dashoffset:0}}
@keyframes kgfade{to{opacity:1}}

/* ===== home intro ===== */
.intro-h{font-size:var(--fs-h1);letter-spacing:-.05em;line-height:.98}
.intro-p{font-size:clamp(1.2rem,1.9vw,1.6rem);line-height:1.5;color:var(--muted);letter-spacing:-.01em}
.intro-p strong{color:var(--text)}

/* ===== bento (solutions) ===== */
.bento{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}
.btile{grid-column:span 2;display:flex;flex-direction:column;gap:20px;min-height:340px;padding:clamp(24px,2.6vw,34px);text-decoration:none;color:inherit;overflow:hidden;transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.btile.wide{grid-column:span 3;min-height:360px}
.btile:hover{transform:translateY(-3px)}
.btile .top{display:flex;justify-content:space-between;align-items:flex-start}
.btile .ic{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;color:var(--gold);
  background:radial-gradient(circle at 35% 30%,rgba(217,166,65,.18),rgba(4,21,30,.6) 70%);border:1px solid rgba(217,166,65,.35);box-shadow:0 0 30px -6px rgba(217,166,65,.25)}
.btile .ic .i{width:30px;height:30px}
.btile .go{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;color:var(--teal-lt);background:rgba(143,211,226,.06);box-shadow:inset 0 0 0 1px rgba(143,211,226,.22);transition:background .3s,color .3s,transform .3s}
.btile .go .i{width:20px;height:20px;transform:rotate(-45deg);transition:transform .3s}
.btile:hover .go{background:var(--teal);color:#fff}
.btile:hover .go .i{transform:rotate(0)}
.btile h3{font-size:clamp(1.3rem,1.75vw,1.65rem);letter-spacing:-.025em;margin-top:22px;hyphens:manual}
.btile.wide h3{font-size:clamp(1.4rem,2.1vw,2rem)}
.btile p{color:var(--muted);margin:0;max-width:52ch}
.btile .tex{position:absolute;inset:0;z-index:-1;opacity:.22;background-image:var(--net);background-size:180% auto;background-position:100% 0;
  -webkit-mask-image:radial-gradient(70% 60% at 100% 0%,#000,transparent 75%);mask-image:radial-gradient(70% 60% at 100% 0%,#000,transparent 75%);transition:opacity .4s}
.btile:hover .tex{opacity:.4}
@media (max-width:1000px){.btile,.btile.wide{grid-column:span 3}.bento>.btile:last-child:nth-child(odd){grid-column:span 6}}
@media (max-width:640px){.btile,.btile.wide,.bento>.btile:last-child:nth-child(odd){grid-column:span 6;min-height:0}}

/* ===== testimonial ===== */
.quote{display:grid;grid-template-columns:minmax(0,3.2fr) minmax(0,8fr);gap:clamp(28px,5vw,88px);align-items:center}
.quote figure{margin:0;position:relative}
.quote .ph{border-radius:var(--r-l);overflow:hidden;aspect-ratio:1/1;padding:1px;background:var(--edge);box-shadow:0 40px 90px -30px rgba(38,148,174,.45)}
.quote .ph img{width:100%;height:100%;object-fit:cover;border-radius:calc(var(--r-l) - 1px)}
.quote blockquote{position:relative;isolation:isolate;margin:0;font-size:clamp(1.35rem,2.5vw,2.25rem);line-height:1.32;letter-spacing:-.025em;font-weight:500;text-wrap:pretty}
.quote blockquote::before{content:"\201C";position:absolute;left:-.08em;top:-.62em;font-size:5.5em;line-height:1;font-weight:700;z-index:-1;
  background:linear-gradient(180deg,rgba(69,175,200,.45),transparent 70%);-webkit-background-clip:text;background-clip:text;color:transparent}
.quote cite{display:flex;align-items:center;gap:14px;margin-top:32px;font-style:normal}
.quote cite::before{content:"";width:32px;height:1px;background:var(--gold)}
.quote cite b{font-size:1.05rem}
.quote cite span{color:var(--muted);font-size:.95rem}
@media (max-width:760px){.quote{grid-template-columns:1fr}.quote .ph{max-width:220px}.quote cite{flex-wrap:wrap}}

/* ===== problem cards ===== */
.pcards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.pcard{padding:30px 26px 30px}
.pcard .ic{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;margin-bottom:28px;color:var(--gold);
  background:radial-gradient(circle at 35% 30%,rgba(60,160,185,.32),rgba(4,21,30,.9) 70%);box-shadow:inset 0 0 0 1px rgba(143,211,226,.25),0 0 40px -8px rgba(38,148,174,.45)}
.pcard .ic .i{width:32px;height:32px}
.pcard h3{font-size:1.22rem;color:#fff;letter-spacing:-.015em;line-height:1.25}
.pcard hr{border:0;height:1px;width:40px;background:var(--gold);opacity:.6;margin:18px 0}
.pcard p{color:var(--muted);font-size:.98rem;line-height:1.55;margin:0}
@media (max-width:1060px){.pcards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.pcards{grid-template-columns:1fr}}

/* IKS tiles + questions */
.tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:8px}
.tile{padding:28px 24px;display:flex;flex-direction:column;gap:22px;min-height:200px}
.tile .i{width:38px;height:38px;color:var(--gold)}
.tile b{font-size:1.2rem;line-height:1.25;margin-top:auto;letter-spacing:-.015em}
@media (max-width:1000px){.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
.qs{display:grid;gap:12px}
.q{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 28px;border-radius:var(--r-m)}
.q b{font-size:clamp(1.1rem,1.6vw,1.35rem);font-weight:600;line-height:1.3;max-width:34ch;letter-spacing:-.015em}
.q .i{width:40px;height:40px;color:var(--teal-lt);flex:none;opacity:.9}

/* callouts */
.callouts{display:grid;gap:14px}
.callout{padding:28px 30px;border-radius:var(--r-m)}
.callout h3{font-size:1rem;color:var(--teal-lt);margin-bottom:10px;letter-spacing:0;font-weight:600}
.callout p{color:var(--text)}
.callout.is-risk{background:linear-gradient(160deg,#2a1418,var(--surf-b) 70%) padding-box,linear-gradient(150deg,rgba(229,72,79,.6),rgba(229,72,79,.08) 40%,rgba(229,72,79,.2)) border-box}
.callout.is-risk h3{color:#ff8b90}

/* ===== conversation ===== */
.thread{display:grid;gap:22px}
.msg{display:grid;gap:10px;max-width:880px}
.msg .who{display:flex;align-items:center;gap:12px;font-size:.92rem;color:var(--teal-lt);font-weight:500}
.msg .av{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-size:.7rem;font-weight:700;letter-spacing:.02em;color:#fff;
  background:linear-gradient(160deg,#16546a,#0a2a37);box-shadow:inset 0 0 0 1px rgba(143,211,226,.3)}
.msg .bubble{padding:24px 28px;border-radius:6px var(--r-m) var(--r-m) var(--r-m);font-size:var(--fs-lead);line-height:1.5;margin:0}
.msg-cfo{justify-self:end}
.msg-cfo .who{justify-content:flex-end}
.msg-cfo .bubble{border-radius:var(--r-m) 6px var(--r-m) var(--r-m)}
.msg-x{max-width:none}
.msg-x .av{background:none;box-shadow:none;width:auto;height:auto}
.msg-x .av .logo{width:40px;color:#fff}
.typing{display:inline-flex;gap:4px;margin-left:4px;opacity:0;transition:opacity .3s}
.typing i{width:6px;height:6px;border-radius:50%;background:var(--teal-lt);animation:typing 1s infinite ease-in-out}
.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}
.is-typing .typing{opacity:1}
@keyframes typing{0%,80%,100%{transform:translateY(0);opacity:.35}40%{transform:translateY(-4px);opacity:1}}
.answer{position:relative;padding:clamp(26px,3.4vw,46px);border-radius:var(--r-l);font-size:1.075rem;line-height:1.65;border:1px solid transparent;
  background:linear-gradient(160deg,#0f3d4d,#082733 45%,#04161f) padding-box,
             conic-gradient(from var(--ang),rgba(143,211,226,.18),rgba(143,211,226,.85),rgba(140,198,60,.7),rgba(143,211,226,.18) 45%,rgba(143,211,226,.18)) border-box;
  box-shadow:0 40px 100px -30px rgba(38,148,174,.45),inset 0 1px 0 rgba(255,255,255,.08)}
.answer.streaming{animation:spin 3.2s linear infinite}
@keyframes spin{to{--ang:360deg}}
.answer p{margin-bottom:.9em}
.answer h4{font-size:1.075rem;font-weight:700;margin:1.3em 0 .4em;letter-spacing:0}
.answer h4:first-child{margin-top:0}
.answer ul{margin:.3em 0 .9em;padding-left:1.2em}
.answer li{margin-bottom:.55em;padding-left:.2em}
.answer li::marker{color:var(--teal-lt)}
.answer .k{font-weight:700;color:#fff}
.answer.stream>*{opacity:0;transform:translateY(8px);filter:blur(4px);transition:opacity .55s ease,transform .55s ease,filter .55s ease}
.answer.stream.go>*{opacity:1;transform:none;filter:none}
.ent{color:var(--teal-lt);text-decoration:underline;text-decoration-color:rgba(143,211,226,.45);text-underline-offset:3px;text-decoration-thickness:1px}
.pos{color:var(--green);font-weight:500}
.neg{color:#ff6b72;font-weight:500}
.lab{font-size:.92rem;color:var(--muted);margin:14px 0 -6px}
.lab b{color:var(--text)}

/* ===== benefits ===== */
.benefits{display:grid;gap:14px}
.benefit{display:grid;grid-template-columns:96px 1fr;gap:clamp(18px,3vw,36px);align-items:center;padding:clamp(22px,2.6vw,32px) clamp(22px,3vw,40px)}
.benefit .ic{width:96px;height:96px;border-radius:50%;display:grid;place-items:center;color:var(--gold);
  background:radial-gradient(circle at 35% 30%,rgba(60,160,185,.3),rgba(4,21,30,.95) 70%);box-shadow:inset 0 0 0 1px rgba(143,211,226,.25),0 0 40px -8px rgba(38,148,174,.45)}
.benefit .ic .i{width:42px;height:42px}
.benefit h3{font-size:var(--fs-h3);color:#fff;margin-bottom:4px;letter-spacing:-.015em}
.benefit p{margin:8px 0 0;color:var(--muted)}
.benefit p em{font-style:normal;color:var(--teal-lt)}
@media (max-width:640px){.benefit{grid-template-columns:1fr}.benefit .ic{width:64px;height:64px}.benefit .ic .i{width:28px;height:28px}}
.bgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.bgrid .benefit{grid-template-columns:72px 1fr;align-items:start}
.bgrid .benefit .ic{width:72px;height:72px}
.bgrid .benefit .ic .i{width:32px;height:32px}
@media (max-width:820px){.bgrid{grid-template-columns:1fr}}

/* statement */
.statement{position:relative;max-width:1040px;margin-inline:auto;text-align:center;padding:clamp(40px,6vw,80px) clamp(24px,5vw,80px);border-radius:var(--r-l);overflow:hidden;
  border:1px solid transparent;background:radial-gradient(80% 120% at 50% 0%,rgba(140,198,60,.2),transparent 60%),linear-gradient(160deg,#0d2a1f,#04151e 70%) padding-box,
  linear-gradient(150deg,rgba(140,198,60,.75),rgba(140,198,60,.1) 40%,rgba(143,211,226,.3)) border-box}
.statement p{font-size:clamp(1.45rem,2.7vw,2.4rem);line-height:1.25;letter-spacing:-.03em;font-weight:500;color:#fff;margin:0;text-wrap:balance}

/* graph block */
.gblock{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(28px,5vw,80px);align-items:center}
.gblock .after{margin-top:28px;font-size:var(--fs-lead);color:var(--muted);line-height:1.55}
.gblock .after strong{color:var(--text)}
@media (max-width:900px){.gblock{grid-template-columns:1fr}.gblock .kg{max-width:540px;margin-inline:auto}}

/* ===== XactAudit ===== */
.thread-line{display:grid;gap:26px;position:relative;padding-left:44px;padding-block:8px}
.thread-line::before{content:"";position:absolute;left:12px;top:10px;bottom:10px;width:2px;border-radius:2px;background:linear-gradient(180deg,var(--red),#a3262c);box-shadow:0 0 16px rgba(229,72,79,.6)}
.thread-line p{position:relative;margin:0;font-size:clamp(1.35rem,2.3vw,2.05rem);font-weight:600;letter-spacing:-.035em;line-height:1.12}
.thread-line p::before{content:"";position:absolute;left:-37px;top:.4em;width:12px;height:12px;border-radius:50%;background:var(--ink);border:2px solid var(--red);box-shadow:0 0 12px rgba(229,72,79,.6)}
.thread-line p:nth-child(2){color:var(--teal-lt)}
.thread-line p:nth-child(3){color:var(--muted)}
.vs{display:grid;grid-template-columns:1fr auto 1fr;gap:14px;align-items:stretch}
.vs-card{padding:28px 26px}
.vs-card .i.big{width:44px;height:44px;color:var(--gold);margin-bottom:18px}
.vs-card h3{font-size:1.3rem;letter-spacing:-.02em}
.vs-card .eq{color:var(--teal-lt);font-weight:500;margin:8px 0 18px}
.vs-card ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.vs-card li{display:flex;gap:10px;align-items:center;color:var(--text)}
.vs-card li .i{width:20px;height:20px;color:var(--red);flex:none}
.vs-mid{display:grid;place-items:center}
.vs-mid span{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;font-weight:700;color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold-dim),0 0 30px -6px rgba(217,166,65,.35);background:radial-gradient(circle,rgba(217,166,65,.16),rgba(4,20,29,.9))}
@media (max-width:640px){.vs{grid-template-columns:1fr}.vs-mid span{width:52px;height:52px}}
.promise{display:grid;grid-template-columns:auto auto 1fr;gap:clamp(16px,3vw,36px);align-items:center;margin-top:clamp(40px,5vw,64px);padding:28px clamp(22px,3vw,40px);border-radius:var(--r-l);
  border:1px solid transparent;background:radial-gradient(60% 140% at 0% 50%,rgba(217,166,65,.14),transparent 60%),linear-gradient(var(--surf-b),var(--surf-b)) padding-box,linear-gradient(90deg,#8a5a12,#f0cf7a,#a06c1a,#f0cf7a) border-box}
.promise .i{width:40px;height:40px;color:var(--gold)}
.promise b{font-size:1.25rem;line-height:1.2}
.promise p{margin:0;font-size:var(--fs-lead);line-height:1.45}
@media (max-width:700px){.promise{grid-template-columns:auto 1fr}.promise p{grid-column:1/-1}}
.flow{list-style:none;padding:0;margin-bottom:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;position:relative;margin-top:clamp(48px,6vw,80px)}
.flow::before{content:"";position:absolute;left:6%;right:6%;top:58px;height:2px;background:linear-gradient(90deg,var(--red),#ff7a80,var(--red));box-shadow:0 0 16px rgba(229,72,79,.55);
  transform:scaleX(var(--draw,1));transform-origin:left;transition:transform 1.4s cubic-bezier(.6,.1,.2,1)}
.flow.pre::before{--draw:0}
.step{position:relative;z-index:1;text-align:center;padding:0 6px}
.step .ic{width:116px;height:116px;margin:0 auto 18px;border-radius:30px;display:grid;place-items:center;color:#fff;border:1px solid transparent;
  background:linear-gradient(160deg,var(--surf-a),var(--surf-b)) padding-box,var(--edge) border-box;box-shadow:0 20px 50px -20px rgba(0,0,0,.7)}
.step .ic .i{width:48px;height:48px}
.step.is-core .ic{background:linear-gradient(160deg,#145266,#05202b) padding-box,linear-gradient(150deg,rgba(143,211,226,.9),rgba(143,211,226,.2)) border-box;box-shadow:0 0 0 8px rgba(38,148,174,.08),0 0 50px -10px rgba(69,175,200,.6)}
.step .n{display:block;font-size:.82rem;color:var(--dim);margin-bottom:4px;font-variant-numeric:tabular-nums}
.step b{display:block;font-size:1.1rem}
.step small{display:block;color:var(--muted);font-size:.9rem;margin-top:6px;line-height:1.4}
@media (max-width:820px){.flow{grid-template-columns:1fr 1fr;row-gap:36px}.flow::before{display:none}}
.badges{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:clamp(40px,4vw,56px)}
.badge{display:flex;gap:16px;align-items:flex-start;padding:22px 24px;border-radius:var(--r-m);
  background:linear-gradient(160deg,#1a1a10,var(--surf-b) 60%) padding-box,linear-gradient(150deg,rgba(240,207,122,.7),rgba(217,166,65,.1) 45%,rgba(217,166,65,.35)) border-box}
.badge .ck{width:40px;height:40px;border-radius:50%;flex:none;display:grid;place-items:center;box-shadow:inset 0 0 0 1.5px var(--gold);color:#fff}
.badge .ck .i{width:20px;height:20px}
.badge b{display:block;font-size:1.1rem;margin-bottom:4px}
.badge span{color:var(--muted);font-size:.98rem;line-height:1.45}
@media (max-width:820px){.badges{grid-template-columns:1fr}}
.chart-wrap{padding:clamp(18px,3vw,36px)}
.chart{width:100%;height:auto;font-family:var(--font)}
.chart .grid line{stroke:rgba(143,211,226,.14)}
.chart .ax{fill:var(--muted);font-size:13px}
.chart .axt{fill:var(--text);font-size:14px;font-weight:500}
.chart .val{fill:#fff;font-size:13px;font-weight:600}
.chart .ln{stroke-dasharray:1;stroke-dashoffset:0;transition:stroke-dashoffset 1.6s cubic-bezier(.6,.1,.2,1)}
.chart .pt{transition:opacity .5s ease 1.2s}
.chart-wrap.pre .ln{stroke-dashoffset:1}
.chart-wrap.pre .pt{opacity:0}
.legend{display:flex;flex-wrap:wrap;gap:8px 24px;margin:0 0 14px;font-size:.95rem;font-weight:600}
.legend span{display:inline-flex;align-items:center;gap:8px}
.legend i{width:18px;height:3px;border-radius:2px;display:inline-block}
.steps-key{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;margin:20px 0 0;color:var(--muted);font-size:.95rem}
.steps-key dt{font-weight:700;color:var(--text)}
.steps-key dd{margin:0}
.box{padding:clamp(24px,3vw,36px)}
.box h3{font-size:var(--fs-h3);margin-bottom:14px}
.box ul{padding-left:1.1em;margin:.6em 0 1em}
.box li{margin-bottom:.5em}
.box li::marker{color:var(--teal-lt)}
.box .em{display:block;color:#fff;font-weight:600;margin-top:12px}
.shot{border-radius:var(--r-m);overflow:hidden;background:#e9eef1;box-shadow:0 40px 90px -30px rgba(0,0,0,.8),0 0 0 1px rgba(143,211,226,.2)}
.shot.clear{background:transparent;box-shadow:none;border-radius:0;filter:drop-shadow(0 30px 50px rgba(0,0,0,.5))}
.tour{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(24px,4vw,56px);align-items:start}
.tour-tabs{display:grid;gap:6px;position:sticky;top:calc(var(--top) + 24px)}
.tour-tab{all:unset;cursor:pointer;position:relative;display:grid;grid-template-columns:34px 1fr;gap:12px;padding:16px 18px;border-radius:16px;color:var(--muted);transition:background .25s,color .25s}
.tour-tab .n{font-size:.82rem;color:var(--dim);padding-top:3px;font-variant-numeric:tabular-nums}
.tour-tab b{display:block;color:var(--text);font-weight:600;line-height:1.3}
.tour-tab span.s{display:block;line-height:1.3;margin-top:2px}
.tour-tab:hover{background:rgba(143,211,226,.06)}
.tour-tab[aria-selected="true"]{background:linear-gradient(90deg,rgba(69,175,200,.18),rgba(69,175,200,.04));box-shadow:inset 0 0 0 1px rgba(143,211,226,.2)}
.tour-tab[aria-selected="true"]::before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:2px;border-radius:2px;background:var(--red);box-shadow:0 0 10px rgba(229,72,79,.7)}
.tour-tab[aria-selected="true"] .n{color:var(--red)}
.tour-tab[aria-selected="true"] span.s{color:var(--teal-lt)}
.tour-tab:focus-visible{outline:2px solid var(--teal-lt)}
.tour-panel{display:none}
.tour-panel.is-active{display:block;animation:pagein .4s ease}
.tour-panel h3{display:none}
.tour-panel .txt{max-width:70ch;color:var(--muted);margin-bottom:28px;font-size:1.05rem}
.tour-panel .txt strong{color:var(--gold);font-weight:600}
.tour-panel .txt ul{margin:.4em 0 1em;padding-left:1.1em}
@media (max-width:900px){
  .tour{grid-template-columns:1fr}
  .tour-tabs{display:none}
  .tour-panel{display:block !important;margin-bottom:56px}
  .tour-panel h3{display:block;font-size:var(--fs-h3);margin-bottom:14px}
  .tour-panel h3 span{display:block;color:var(--teal-lt)}
}
.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.stat{padding:28px 24px;border-radius:var(--r-m)}
.stat b{display:block;font-size:1.5rem;letter-spacing:-.03em;margin-bottom:12px;background:linear-gradient(90deg,var(--teal-2),var(--teal-lt));-webkit-background-clip:text;background-clip:text;color:transparent}
.stat p{margin:0;color:var(--muted);font-size:.98rem;line-height:1.5}
@media (max-width:820px){.stats{grid-template-columns:1fr}}
.cust{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,8fr);gap:clamp(24px,4vw,56px);align-items:center}
.cust figure{margin:0}
.cust figure .ph{border-radius:var(--r-l);padding:1px;background:var(--edge)}
.cust figure img{border-radius:calc(var(--r-l) - 1px);aspect-ratio:1/1;object-fit:cover;width:100%}
.cust figcaption{margin-top:14px;font-size:.95rem;color:var(--muted)}
.cust figcaption b{display:block;color:var(--text)}
.logo-chip{display:inline-flex;align-items:center;padding:14px 22px;border-radius:16px;background:#fff;margin-top:22px}
.logo-chip img{height:34px;width:auto}
@media (max-width:820px){.cust{grid-template-columns:1fr}.cust figure{max-width:240px}}

/* ===== WP consulting ===== */
.checks{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.checks li{display:flex;gap:16px;align-items:center;font-size:var(--fs-lead);font-weight:500;line-height:1.35;padding:18px 22px;border-radius:var(--r-m);background:rgba(140,198,60,.05);box-shadow:inset 0 0 0 1px rgba(140,198,60,.2)}
.checks .i{width:28px;height:28px;color:var(--green);flex:none}
.why{display:grid;gap:14px}
.why article{padding:24px 26px;border-radius:var(--r-m)}
.why h3{font-size:1.1rem;margin-bottom:8px;color:var(--teal-lt);letter-spacing:-.01em}
.why p{margin:0;color:var(--text)}
.fields{list-style:none;margin:0;padding:0}
.fields li{display:flex;gap:14px;align-items:baseline;padding:18px 0;border-bottom:1px solid var(--line);font-size:1.08rem}
.fields li::before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:var(--teal-2);box-shadow:0 0 10px rgba(69,175,200,.8);transform:translateY(-2px)}
.h-sm{font-size:clamp(1.5rem,2.4vw,2.1rem);letter-spacing:-.03em;margin-bottom:24px}
.people{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:36px 0}
.person{padding:24px 26px;border-radius:var(--r-m)}
.person b{display:block;font-size:1.15rem;margin-bottom:12px}
.person a{display:flex;align-items:center;gap:10px;color:var(--muted);text-decoration:none;padding:4px 0}
.person a:hover{color:#fff}
.person .i{width:18px;height:18px;color:var(--teal-lt)}
@media (max-width:640px){.people{grid-template-columns:1fr}}

/* ===== contact / imprint / cta band ===== */
.contact{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(32px,6vw,96px);align-items:end}
.mail-big{display:inline-block;font-size:clamp(1.9rem,4.6vw,3.9rem);font-weight:600;letter-spacing:-.045em;color:#fff;text-decoration:none;
  background:linear-gradient(90deg,var(--teal-lt),var(--teal-lt)) 0 100%/100% 2px no-repeat;padding-bottom:8px;transition:background-size .35s}
.mail-big:hover{background-size:0 2px;background-position:100% 100%}
@media (max-width:900px){.contact{grid-template-columns:1fr;align-items:start}}
.imp{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:clamp(32px,6vw,96px)}
.imp address{font-style:normal;font-size:var(--fs-lead);line-height:1.6}
.imp dl{margin:0;display:grid}
.imp dl>div{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:20px;padding:18px 0;border-bottom:1px solid var(--line)}
.imp dl>div:first-child{border-top:1px solid var(--line)}
.imp dt{color:var(--muted)} .imp dd{margin:0}
@media (max-width:800px){.imp{grid-template-columns:1fr}.imp dl>div{grid-template-columns:1fr;gap:4px}}
.cband{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px 40px;padding:clamp(32px,4.5vw,60px) clamp(26px,4.5vw,64px);overflow:hidden;
  background:radial-gradient(60% 140% at 100% 50%,rgba(38,148,174,.28),transparent 60%),linear-gradient(160deg,var(--surf-a),var(--surf-b) 70%) padding-box,var(--edge) border-box}
.cband .h-sm{margin-bottom:10px;font-size:clamp(1.6rem,2.8vw,2.4rem)}
.cband p{margin:0;max-width:56ch}

/* ===== footer ===== */
.ftr{position:relative;border-top:1px solid var(--line);padding:clamp(56px,7vw,96px) 0 0;overflow:hidden}
.ftr-grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,2fr) minmax(0,2fr) minmax(0,4fr);gap:clamp(28px,4vw,56px)}
.ftr .logo{width:56px;color:#fff;margin-bottom:18px}
.ftr h4{font-size:.92rem;color:var(--text);font-weight:600;margin-bottom:16px;letter-spacing:0}
.ftr .co{font-weight:600;color:var(--text);margin-bottom:4px}
.ftr p,.ftr li{color:var(--muted);font-size:.95rem}
.ftr ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.ftr a{color:var(--muted);text-decoration:none} .ftr a:hover{color:#fff}
.ftr .li{display:inline-flex;align-items:center;gap:10px;margin-top:16px;color:var(--text)}
.ftr .li .i{width:18px;height:18px;color:var(--teal-lt)}
.fund{display:flex;flex-direction:column;gap:16px;align-items:flex-start}
.fund a{display:inline-flex}
.fund img{height:46px;width:auto}
.fund .rlp{background:#fff;border-radius:10px;padding:6px 12px}
.ftr-bot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:clamp(40px,5vw,64px);padding-top:24px;border-top:1px solid var(--line);color:var(--dim);font-size:.875rem}
.wordmark{font-size:clamp(5rem,24vw,22rem);font-weight:700;letter-spacing:-.05em;line-height:.74;text-align:center;margin:clamp(24px,4vw,48px) 0 -.06em;user-select:none;
  background:linear-gradient(180deg,rgba(143,211,226,.22),rgba(143,211,226,.02) 85%);-webkit-background-clip:text;background-clip:text;color:transparent}
@media (max-width:900px){.ftr-grid{grid-template-columns:1fr 1fr}.ftr-grid>div:first-child,.ftr-grid>div:last-child{grid-column:1/-1}}

[data-page][hidden]{display:none !important}

@media (max-width:900px){
  .phero .split{grid-template-columns:1fr}
  .phero .thread-line{margin-top:44px}
}
@media (hover:none){.btile:hover{transform:none}}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.001ms !important;animation-delay:0ms !important;transition-duration:.001ms !important;scroll-behavior:auto !important}
  .kg-anim .kg-edges line{stroke-dashoffset:0}
  .answer.stream>*{opacity:1;transform:none;filter:none}
}

/* ===== v3 — Originalschrift (Cairo für Headlines, Inter für Text) + Originalhintergründe von xpect.ai ===== */
:root{
  --font-head:'Cairo',var(--font);
  --img-x:url(/assets/img/bg-x.38e8d70f04.webp);
  --img-xv:url(/assets/img/bg-xv.1c32e2a619.webp);
  --img-mesh:url(/assets/img/bg-mesh.3f82c647d8.webp);
}
/* Typografie wie auf xpect.ai: Überschriften in Cairo, Fließtext in Inter */
h1,h2,h3,h4,.hero-word,.pair,.intro-h,.h-sm,.statement p,.thread-line p,.mail-big,.wordmark,.stat b,.step b,.tour-tab b,.q b,.tile b,.promise b,.badge b,.person b,.benefit h3,.vs-card h3,.btn,.nav .nav-cta{font-family:var(--font-head);font-feature-settings:normal}
h1,h2,h3,h4{font-weight:700;letter-spacing:-.005em;line-height:1.12}
.hero-word{font-weight:700;letter-spacing:.005em;line-height:.82}
.hero h1,.phero h1,.intro-h,.pair,.btile h3,.btile.wide h3,.statement p,.thread-line p,.mail-big,.h-sm,.cband .h-sm,.quote blockquote+cite b{letter-spacing:-.008em}
.hero h1{line-height:1.08;font-weight:600;max-width:16ch}
.phero h1,.intro-h{line-height:1.04}
.pair{line-height:1.1}
.pair>span+span{padding-bottom:.08em}
.statement p,.thread-line p{font-weight:600;line-height:1.22}
.wordmark{letter-spacing:0}
.btn{font-weight:600;letter-spacing:.01em}

/* --- Hero: das X-Netzwerk als Hauptbild, Ontologie sitzt im Kreuzungspunkt --- */
.hero::before{background:radial-gradient(60% 60% at 18% 60%,rgba(1,10,16,.55),transparent 70%)}
.hero .net{opacity:1;-webkit-mask-image:none;mask-image:none;z-index:-3;
  background:var(--img-x) 64% 46%/cover no-repeat}
.hero::after{content:"";position:absolute;inset:0;z-index:-2;pointer-events:none;
  background:linear-gradient(90deg,var(--ink) 0%,rgba(1,10,16,.88) 22%,rgba(1,10,16,.35) 48%,rgba(1,10,16,0) 70%),
             linear-gradient(0deg,var(--ink) 0%,rgba(1,10,16,0) 26%),
             linear-gradient(180deg,rgba(1,10,16,.6) 0%,rgba(1,10,16,0) 18%)}
.hero-graph::before{background:radial-gradient(closest-side,rgba(1,10,16,.55),rgba(1,10,16,.2) 60%,transparent)}
@media (max-width:900px){
  .hero .net{background:var(--img-xv) center 70%/cover no-repeat}
  .hero::after{background:linear-gradient(180deg,rgba(1,10,16,.92) 0%,rgba(1,10,16,.7) 38%,rgba(1,10,16,.15) 62%,var(--ink) 100%)}
}

/* --- Unterseiten-Header: X-Netzwerk rechts, kräftig --- */
.phero .net{opacity:.95;background-image:var(--img-x);background-size:cover;background-position:72% 42%;
  -webkit-mask-image:linear-gradient(100deg,transparent 8%,#000 58%),linear-gradient(#000 55%,transparent);
  mask-image:linear-gradient(100deg,transparent 8%,#000 58%),linear-gradient(#000 55%,transparent)}
@media (max-width:700px){.phero .net{opacity:.7}}
.hero-ic::before{background:radial-gradient(circle,rgba(1,10,16,.55),rgba(1,10,16,.15) 65%)}

/* --- „Xpect more…“: X-Netzwerk als volle Fläche wie im Original --- */
.sec-x{isolation:isolate;overflow:hidden}
.sec-x::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:linear-gradient(90deg,var(--ink) 0%,rgba(1,10,16,.55) 35%,rgba(1,10,16,.75) 60%,rgba(1,10,16,.92) 100%),
             linear-gradient(180deg,var(--ink) 0%,rgba(1,10,16,0) 22%,rgba(1,10,16,0) 78%,var(--ink) 100%),
             var(--img-x) 30% 50%/cover no-repeat}

/* --- Wechselnde Sektionen: Netz-Horizont aus dem Original am unteren Rand --- */
.sec-alt::after{content:"";position:absolute;z-index:-1;left:0;right:0;bottom:0;height:min(70%,560px);pointer-events:none;opacity:.55;
  background:var(--img-mesh) center 30%/cover no-repeat;
  -webkit-mask-image:linear-gradient(180deg,transparent,#000 55%,transparent);mask-image:linear-gradient(180deg,transparent,#000 55%,transparent)}

/* --- Lösungs-Kacheln: Ausschnitte des X-Netzwerks --- */
.btile .tex{opacity:.45;background-image:var(--img-x);background-size:240% auto;background-position:62% 40%;
  -webkit-mask-image:radial-gradient(90% 80% at 100% 0%,#000 10%,transparent 78%);mask-image:radial-gradient(90% 80% at 100% 0%,#000 10%,transparent 78%)}
.btile:nth-child(2) .tex{background-position:70% 62%}
.btile:nth-child(3) .tex{background-position:48% 30%}
.btile:nth-child(4) .tex{background-position:80% 20%}
.btile:nth-child(5) .tex{background-position:58% 70%}
.btile:hover .tex{opacity:.75}

/* --- Kontaktband, Statement, Footer --- */
.cband{background:linear-gradient(90deg,rgba(4,21,30,.97) 25%,rgba(4,21,30,.6) 62%,rgba(4,21,30,.25)) padding-box,
  var(--img-x) 75% 45%/cover no-repeat padding-box,var(--edge) border-box}
.statement{background:radial-gradient(80% 120% at 50% 0%,rgba(140,198,60,.16),transparent 60%),linear-gradient(rgba(6,26,22,.82),rgba(4,21,30,.9)) padding-box,
  var(--img-x) center 46%/cover no-repeat padding-box,linear-gradient(150deg,rgba(140,198,60,.75),rgba(140,198,60,.1) 40%,rgba(143,211,226,.3)) border-box}
.ftr{isolation:isolate}
.ftr::before{content:"";position:absolute;inset:auto 0 0 0;height:75%;z-index:-1;pointer-events:none;opacity:.6;
  background:var(--img-mesh) center 20%/cover no-repeat;
  -webkit-mask-image:linear-gradient(180deg,transparent,#000 60%);mask-image:linear-gradient(180deg,transparent,#000 60%)}
.wordmark{background:linear-gradient(180deg,rgba(143,211,226,.38),rgba(143,211,226,.04) 85%);-webkit-background-clip:text;background-clip:text}

/* ===== neue Seiten: Aktuelles + XtractProcess ===== */
.flow.flow-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.flow.flow-3::before{left:16%;right:16%}
@media (max-width:820px){.flow.flow-3{grid-template-columns:1fr}}
.news{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:stretch}
.news-card{position:relative;overflow:hidden;border:1px solid transparent;border-radius:var(--r-l);display:flex;flex-direction:column;
  background:linear-gradient(160deg,var(--surf-a),var(--surf-b) 70%) padding-box,var(--edge) border-box;box-shadow:0 24px 60px -24px rgba(0,0,0,.6)}
.news-card figure{margin:0;aspect-ratio:3/4;overflow:hidden;border-bottom:1px solid var(--line);background:#000;flex:none}
.news-card figure img{width:100%;height:100%;object-fit:contain;object-position:center}
.news-body{flex:1}
.news-body{padding:clamp(22px,2.6vw,32px)}
.news-meta{display:flex;flex-wrap:wrap;gap:8px 20px;margin:0 0 14px;color:var(--teal-lt);font-size:.95rem;font-weight:500}
.news-meta span{display:inline-flex;align-items:center;gap:8px}
.news-meta .i{width:18px;height:18px;color:var(--gold)}
.news-body h2{font-size:clamp(1.3rem,1.9vw,1.7rem);margin-bottom:14px}
.news-body p:not(.news-meta){color:var(--muted)}
@media (max-width:760px){.news{grid-template-columns:1fr}}

/* ===== verschiedene Hintergründe je Seite (Originalbilder von xpect.ai, petrol eingefärbt) ===== */
:root{--img-wave:url(/assets/img/bg-wave.e6c414d214.webp);--img-highway:url(/assets/img/bg-highway.bb55a1d873.webp);--img-dotx:url(/assets/img/bg-dotx.197f449d0c.webp);--img-netsq:url(/assets/img/bg-netsq.e8fe3f1a2f.webp);--img-circuit:url(/assets/img/bg-circuit.d6dea0db6c.webp)}
.phero .net{background-image:var(--pbg,var(--img-x))}
[data-page="jahresabschlusspruefung"] .phero .net{background-position:60% 50%}
[data-page="wp-ai-consulting"] .phero .net,[data-page="aktuelles"] .phero .net{background-position:70% 85%}
[data-page="loesungen"] .phero .net{background-position:center 45%}
[data-page="process-interview-agent"] .phero .net{background-position:center 40%}
.cband{background:linear-gradient(90deg,rgba(4,21,30,.97) 25%,rgba(4,21,30,.6) 62%,rgba(4,21,30,.25)) padding-box,
  var(--cbg,var(--img-x)) 75% 45%/cover no-repeat padding-box,var(--edge) border-box}
/* Lesbarkeit: dunkler Schleier hinter dem Text aller Seiten-Header */
.phero::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:linear-gradient(90deg,rgba(1,10,16,.9) 0%,rgba(1,10,16,.82) 38%,rgba(1,10,16,.5) 62%,rgba(1,10,16,.12) 85%,transparent),
             linear-gradient(0deg,var(--ink) 0%,rgba(1,10,16,0) 30%)}
.phero .intro,.phero .crumbs{text-shadow:0 1px 14px rgba(1,10,16,.9)}
[data-page="jahresabschlusspruefung"] .phero .net{opacity:.75}
@media (max-width:900px){.phero::after{background:linear-gradient(180deg,rgba(1,10,16,.55) 0%,rgba(1,10,16,.85) 40%,rgba(1,10,16,.9) 100%)}}
/* Horizont unter wechselnden Sektionen: Netz-Gelände und Datenwelle im Wechsel */
.sec-alt:nth-of-type(even)::after{background:var(--img-wave) center 85%/cover no-repeat;opacity:.6}
/* Lösungs-Kacheln: jede Lösung mit eigenem Motiv (auf Startseite und Lösungsseite gleich) */
.btile .tex{background-size:cover;background-position:center}
.btile[href="/pmi/"] .tex{background-image:var(--img-x);background-position:65% 45%}
.btile[href="/transformation-2/"] .tex{background-image:var(--img-circuit)}
.btile[href="/iks-risikomanagement/"] .tex{background-image:var(--img-netsq)}
.btile[href="/wissensmanagement/"] .tex{background-image:var(--img-mesh)}
.btile[href="/jahresabschlusspruefung/"] .tex{background-image:var(--img-highway);background-position:80% 30%}
.statement{background:radial-gradient(80% 120% at 50% 0%,rgba(140,198,60,.16),transparent 60%),linear-gradient(rgba(6,26,22,.82),rgba(4,21,30,.9)) padding-box,
  var(--img-netsq) center/cover no-repeat padding-box,linear-gradient(150deg,rgba(140,198,60,.75),rgba(140,198,60,.1) 40%,rgba(143,211,226,.3)) border-box}
