@font-face{font-family:Commissioner;src:url("../fonts/Commissioner-Regular.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Commissioner;src:url("../fonts/Commissioner-SemiBold.ttf") format("truetype");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:Commissioner;src:url("../fonts/Commissioner-Bold.ttf") format("truetype");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:Commissioner;src:url("../fonts/Commissioner-ExtraBold.ttf") format("truetype");font-weight:800;font-style:normal;font-display:swap}

:root{
  --pink:#ff0066;
  --violet:#4d2ee5;
  --yellow:#fdc538;
  --aqua:#54c2d8;
  --navy:#101937;
  --ink:#11152c;
  --muted:#72778c;
  --paper:#fff;
  --soft:#f4f4f7;
  --radius:44px;
  --max:1280px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Commissioner,Arial,sans-serif;font-size:18px;line-height:1.55;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img,svg{display:block;max-width:100%}
button,summary{font:inherit}
.skip-link{position:fixed;z-index:100;left:12px;top:12px;padding:12px 16px;background:var(--navy);color:#fff;transform:translateY(-160%)}
.skip-link:focus{transform:none}
.container{width:min(var(--max),calc(100% - 64px));margin-inline:auto}

.hero{min-height:100svh;display:grid;align-items:center;padding:64px 0 72px;background:var(--soft);position:relative;isolation:isolate}
.hero::after{content:"";position:absolute;inset:auto 0 0;height:94px;background:var(--paper);clip-path:path("M0 72 C240 8 450 118 710 55 C940 0 1120 80 1440 28 L1440 94 L0 94 Z");z-index:-1}
.hero-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(520px,1.15fr);gap:72px;align-items:center}
.brand{display:inline-flex;align-items:baseline;color:var(--pink);font-size:clamp(34px,4vw,58px);font-weight:800;letter-spacing:0;margin-bottom:44px}
.brand span{color:var(--violet)}
h1,h2,h3,p{margin-top:0}
h1{max-width:760px;margin-bottom:28px;font-size:clamp(54px,6vw,102px);line-height:.94;letter-spacing:0;font-weight:800}
.hero-lead{max-width:690px;margin:0;color:#3f4459;font-size:clamp(20px,1.75vw,28px);line-height:1.5}
.hero-links{display:flex;gap:16px;align-items:center;margin-top:40px;flex-wrap:wrap}
.primary-link,.text-link{display:inline-flex;align-items:center;justify-content:center;min-height:58px;padding:0 28px;font-weight:700}
.primary-link{background:var(--navy);color:#fff;border-radius:16px}
.text-link{color:var(--violet)}

.product-scene{--scene-x:0px;--scene-y:0px;position:relative;min-height:640px;transform:translate3d(var(--scene-x),var(--scene-y),0);transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.scene-field{position:absolute;inset:4% 0 0 5%;border-radius:48% 48% 44% 52% / 46% 52% 48% 54%;background:var(--navy);overflow:hidden}
.scene-field::before,.scene-field::after{content:"";position:absolute;border-radius:50%}
.scene-field::before{width:52%;aspect-ratio:1;background:var(--violet);right:-14%;top:-13%}
.scene-field::after{width:44%;aspect-ratio:1;background:var(--yellow);left:-10%;bottom:-17%}
.scene-core{position:absolute;z-index:3;left:24%;top:31%;width:51%;aspect-ratio:1.08;border-radius:50% 44% 48% 45% / 45% 52% 42% 54%;display:grid;place-items:center;text-align:center;background:var(--pink);color:#fff;font-size:clamp(28px,3vw,48px);font-weight:800;padding:30px;transform:rotate(-7deg)}
.scene-node{position:absolute;z-index:4;display:grid;place-items:center;text-align:center;min-width:150px;min-height:96px;padding:18px 24px;border-radius:999px;font-weight:700;box-shadow:0 14px 36px rgba(16,25,55,.11)}
.scene-node--1{left:0;top:9%;background:var(--aqua);transform:rotate(8deg)}
.scene-node--2{right:-1%;top:22%;background:#fff}
.scene-node--3{left:3%;bottom:9%;background:#fff}
.scene-node--4{right:3%;bottom:3%;background:var(--violet);color:#fff;transform:rotate(-7deg)}
.scene-line{position:absolute;z-index:2;inset:0;width:100%;height:100%}
.scene-line path{fill:none;stroke:rgba(255,255,255,.55);stroke-width:3;stroke-dasharray:10 12}

.section{padding:126px 0}
.section-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.62fr);gap:64px;align-items:end;margin-bottom:72px}
h2{margin-bottom:0;font-size:clamp(44px,5vw,78px);line-height:1;letter-spacing:0;font-weight:800}
.section-heading p{margin:0;color:var(--muted);font-size:21px}
.capability-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-radius:var(--radius);overflow:hidden;background:var(--navy)}
.capability{min-height:390px;padding:48px 42px;display:flex;flex-direction:column;justify-content:flex-end}
.capability:nth-child(1){background:var(--violet);color:#fff}
.capability:nth-child(2){background:var(--pink);color:#fff}
.capability:nth-child(3){background:var(--yellow)}
.capability h3{font-size:clamp(27px,2.5vw,39px);line-height:1.05;margin-bottom:24px;font-weight:800}
.capability p{margin:0;font-size:18px}

.workflow{background:var(--navy);color:#fff;position:relative;overflow:hidden}
.workflow::before{content:"";position:absolute;width:420px;aspect-ratio:1;border-radius:45% 55% 50% 50%;background:var(--pink);right:-230px;top:-210px}
.workflow .section-heading p{color:#c4c8d9}
.workflow-list{display:grid;gap:1px;background:rgba(255,255,255,.2);border-radius:var(--radius);overflow:hidden}
.workflow-item{display:grid;grid-template-columns:1fr 1.35fr;gap:48px;padding:46px 52px;background:var(--navy);align-items:start}
.workflow-item h3{margin:0;font-size:clamp(28px,3vw,45px);line-height:1.08;font-weight:800}
.workflow-item p{margin:0;color:#c4c8d9;font-size:20px}

.use-cases{background:var(--soft)}
.cases-stage{display:grid;grid-template-columns:1.12fr .88fr;grid-template-areas:"one two" "one three";gap:0;border-radius:var(--radius);overflow:hidden}
.case{min-height:300px;padding:48px;display:flex;flex-direction:column;justify-content:space-between}
.case:nth-child(1){grid-area:one;min-height:600px;background:var(--pink);color:#fff}
.case:nth-child(2){grid-area:two;background:var(--aqua)}
.case:nth-child(3){grid-area:three;background:var(--yellow)}
.case-kicker{font-size:14px;font-weight:800;text-transform:uppercase}
.case h3{max-width:680px;margin:0;font-size:clamp(28px,3vw,48px);line-height:1.06;font-weight:800}

.ecosystem{padding:0;background:var(--soft)}
.ecosystem-panel{display:grid;grid-template-columns:.9fr 1.1fr;background:var(--violet);color:#fff;border-radius:var(--radius);overflow:hidden}
.ecosystem-copy{padding:72px 64px}
.ecosystem-copy h2{margin-bottom:30px}
.ecosystem-copy p{max-width:650px;margin-bottom:0;font-size:21px}
.ecosystem-products{display:grid;grid-template-columns:repeat(2,1fr)}
.ecosystem-products a{display:flex;align-items:center;justify-content:space-between;min-height:112px;padding:24px 30px;border-left:1px solid rgba(255,255,255,.28);border-bottom:1px solid rgba(255,255,255,.28);font-weight:700}
.ecosystem-products a::after{content:"↗";font-size:24px}

.faq{background:var(--soft)}
.faq-list{display:grid;gap:12px;max-width:980px;margin-left:auto}
.faq details{background:#fff;border-radius:22px;padding:0 30px}
.faq summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:24px;cursor:pointer;padding:28px 0}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:28px;line-height:1}
.faq details[open] summary::after{content:"−"}
.faq h3{margin:0;font-size:22px;font-weight:700}
.faq details>p{max-width:760px;padding:0 46px 30px 0;margin:0;color:var(--muted)}

.site-footer{background:var(--navy);color:#fff;padding:76px 0 34px}
.footer-grid{display:grid;grid-template-columns:1.3fr repeat(3,.7fr);gap:50px}
.footer-brand{font-size:42px;font-weight:800;color:var(--pink)}
.footer-brand p{max-width:310px;margin:16px 0 0;color:#b4b8ca;font-size:16px;font-weight:400}
.footer-column h3{color:#8e95ae;font-size:13px;text-transform:uppercase;margin-bottom:18px}
.footer-column a{display:block;margin:11px 0;color:#fff;font-size:15px}
.footer-bottom{display:flex;justify-content:space-between;gap:24px;margin-top:60px;padding-top:28px;border-top:1px solid rgba(255,255,255,.16);color:#8e95ae;font-size:14px}
.footer-bottom p{margin:0}

.legal{min-height:100vh;background:var(--soft);padding:70px 0 110px}
.legal-brand{display:inline-block;color:var(--pink);font-size:32px;font-weight:800;margin-bottom:64px}
.legal article{max-width:900px}
.legal h1{font-size:clamp(44px,6vw,76px)}
.legal h2{font-size:26px;margin:48px 0 16px}
.legal p,.legal li{color:#44495f}
.legal-back{display:inline-block;margin-top:48px;color:var(--violet);font-weight:700}

[data-reveal]{opacity:1;transform:none}
.js [data-reveal]{opacity:0;transform:translateY(24px);transition:opacity .7s ease var(--delay,0ms),transform .7s cubic-bezier(.2,.8,.2,1) var(--delay,0ms)}
.js [data-reveal].is-visible{opacity:1;transform:none}

@media(max-width:980px){
  .container{width:min(100% - 40px,var(--max))}
  .hero{min-height:auto;padding:44px 0 96px}
  .hero-grid{display:flex;flex-direction:column;gap:38px}
  .hero-copy{display:contents}
  .brand{order:1;align-self:center;margin:0}
  .product-scene{order:2;min-height:560px;width:min(720px,100%);margin-inline:auto}
  h1{order:3;margin:0 auto;text-align:center}
  .hero-lead{order:4;margin-inline:auto;text-align:center}
  .hero-links{order:5;justify-content:center;margin-top:0}
  .section{padding:92px 0}
  .section-heading{grid-template-columns:1fr;gap:24px}
  .capability-grid{grid-template-columns:1fr}
  .capability{min-height:270px}
  .workflow-item{grid-template-columns:1fr;gap:16px}
  .ecosystem-panel{grid-template-columns:1fr}
  .ecosystem-products a{border-left:0;border-top:1px solid rgba(255,255,255,.28)}
  .footer-grid{grid-template-columns:1.2fr repeat(3,1fr)}
}

@media(max-width:640px){
  body{font-size:16px}
  .container{width:calc(100% - 28px)}
  .hero{padding:28px 0 74px}
  .hero-grid{gap:24px}
  .brand{font-size:36px}
  h1{font-size:50px;line-height:.98}
  .hero-lead{font-size:18px}
  .hero-links{margin-top:30px}
  .primary-link,.text-link{min-height:52px;padding:0 20px}
  .product-scene{min-height:380px}
  .scene-field{inset:2% 0 0}
  .scene-core{left:23%;top:30%;width:55%;font-size:25px}
  .scene-node{min-width:112px;min-height:66px;padding:11px 14px;font-size:13px}
  .scene-node--1{left:0;top:7%}.scene-node--2{right:0;top:19%}.scene-node--3{left:0;bottom:10%}.scene-node--4{right:0;bottom:2%}
  .section{padding:76px 0}
  .section-heading{margin-bottom:42px}
  h2{font-size:43px}
  .section-heading p{font-size:18px}
  .capability{min-height:250px;padding:34px 28px}
  .workflow-item{padding:34px 28px}
  .workflow-item p{font-size:17px}
  .cases-stage{grid-template-columns:1fr;grid-template-areas:"one" "two" "three"}
  .case,.case:nth-child(1){min-height:290px;padding:34px 28px}
  .ecosystem-panel{border-radius:32px}
  .ecosystem-copy{padding:46px 28px}
  .ecosystem-copy p{font-size:18px}
  .ecosystem-products{grid-template-columns:1fr}
  .ecosystem-products a{min-height:76px}
  .faq-list{margin:0}
  .faq details{border-radius:18px;padding:0 22px}
  .faq h3{font-size:18px}
  .site-footer{padding-top:58px}
  .footer-grid{grid-template-columns:1fr 1fr;gap:34px 24px}
  .footer-brand{grid-column:1/-1}
  .footer-bottom{flex-direction:column}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .js [data-reveal]{opacity:1;transform:none;transition:none}
  .product-scene{transition:none}
}
