/* Reference-inspired homepage, using the site's existing blue/violet theme. */
.data-home .data-hero{padding:74px 0 88px;min-height:660px;background:linear-gradient(125deg,#080b23 25%,#17113d 70%,#39316a)}
.data-home .hero-grid{grid-template-columns:1.05fr 1fr;gap:36px}
.data-home .hero h1{font-size:clamp(42px,4.5vw,64px);line-height:1.1;letter-spacing:-.05em}
.data-home .hero-lead{max-width:490px;font-size:16px}
.data-home .hero .gradient-text{background-image:linear-gradient(110deg,#76beff,#9e83ff 65%,#d09aff)}
.data-home .hero-actions{gap:20px}.data-home .hero-actions .btn{font-size:12px;padding:0 18px}
.data-home .video-link span{width:auto;height:auto;margin:0 0 0 5px;background:none;color:#bda4ff}
.hero-notes{display:flex;flex-wrap:wrap;gap:20px;margin-top:28px;color:#a6a5c0;font-size:11px}
.hero-notes span::before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:#9674ff;margin:0 7px 2px 0}
.data-universe{position:relative;min-width:0;aspect-ratio:1.15;isolation:isolate}
.data-universe .ribbon-art{position:absolute;inset:0;opacity:.36;filter:saturate(.85);z-index:-1}
.data-universe .ribbon-art img{width:100%;margin:0;object-fit:contain}
.data-connections{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:#a286ff66;stroke-width:1.5;stroke-dasharray:5 10;animation:data-travel 9s linear infinite}
@keyframes data-travel{to{stroke-dashoffset:-150}}
.cloud-core{position:absolute;left:25%;top:28%;width:51%;min-height:190px;padding:22px 12px;text-align:center;border:1px solid #a191eb88;border-radius:32px;background:linear-gradient(135deg,#29244ded,#191836f5);box-shadow:0 20px 60px #05051d55,0 0 35px #9a58ff18}
.cloud-core .template-icon{background:#8b71ff20;color:#bcafff;width:44px;height:44px;margin:0 0 8px}
.cloud-core strong{display:block;font-size:18px;color:#f3efff;line-height:1.3}.cloud-core>span:last-child{display:block;font-size:8px;letter-spacing:.14em;color:#aaa0d1;margin-top:15px}
.orbit-node{position:absolute;display:flex;align-items:center;gap:8px;background:#11152aee;padding:9px 12px;border:1px solid #8e78c64d;border-radius:10px;box-shadow:0 8px 24px #04051c33;color:#e0d9f2;font-size:11px;animation:node-drift 6s ease-in-out infinite alternate}
.orbit-node .template-icon{width:28px;height:28px;border-radius:8px;margin:0;background:#8164ff20;color:#9d9bff}.orbit-node svg{width:19px;height:19px}
.node-one{left:0;top:12%}.node-two{left:-2%;top:48%;animation-delay:-2s}.node-three{left:7%;bottom:9%;animation-delay:-4s}.node-four{right:0;top:12%;animation-delay:-1s}.node-five{right:-2%;bottom:22%;animation-delay:-3s}
@keyframes node-drift{from{translate:0 -4px}to{translate:0 5px}}
.universe-caption{position:absolute;bottom:0;left:20%;font-size:10px;color:#b0a6c9}.universe-caption i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#9b83ff;margin-right:6px;box-shadow:0 0 10px #997bff}
.home-section{padding:76px 0}.home-soft{background:linear-gradient(135deg,#f4f4fc,#f0f3ff)}
.home-heading{text-align:center;max-width:720px;margin:0 auto 40px}.home-heading .eyebrow{color:#7955cc;font-size:10px;letter-spacing:.16em}.home-heading h2{font-size:clamp(28px,3.1vw,40px);line-height:1.16;margin:14px 0}.home-heading p{font-size:14px;max-width:570px;margin:auto}
.home-intro{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center;padding:56px 0;border-bottom:1px solid #eae7f4}
.home-intro h2{font-size:28px;margin:0 0 14px;letter-spacing:-.025em}.home-intro p{font-size:14px;max-width:540px}.intro-mark{padding:15px 40px 15px 0;border-right:1px solid #e2ddef}.intro-mark>span{font-size:10px;letter-spacing:.13em;color:#77648d}.intro-mark strong{display:block;font-size:34px;line-height:1.2;margin-top:13px;letter-spacing:-.04em}.intro-mark em{font-style:normal;color:#7650d9}
.technology-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.technology-tile{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #e9e7f2;border-radius:9px;padding:18px;transition:transform .25s,border-color .25s}.technology-tile strong{display:block;font-size:13px}.technology-tile small{display:block;font-size:10px;color:#8190a4;margin-top:3px}.tech-monogram{display:grid;place-items:center;width:35px;height:35px;border-radius:8px;background:#efebff;color:#754ada;font-weight:700;font-size:11px;flex-shrink:0}.technology-tile:nth-child(3n) .tech-monogram{background:#eaf4ff;color:#3779c7}.technology-note{text-align:center;font-size:10px;margin:20px 0 0;color:#778097}
.data-home .service-grid{padding:0;gap:20px}.data-home .service-grid .template-card{padding:28px;min-height:250px}.data-home .service-grid h3{font-size:18px}.data-home .service-grid p{font-size:13px}.data-home .service-grid .template-icon{border-radius:12px}
.section-action{text-align:center;margin-top:30px}.section-action .btn{font-size:12px}
.benefit-list{display:grid;gap:20px}.benefit-row{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding:34px 20px;min-height:320px;border-bottom:1px solid #eeebf5}.benefit-row:last-child{border:0}.benefit-row:nth-child(even) .benefit-copy{order:2}.benefit-number{font-size:10px;letter-spacing:.12em;color:#8c71ba}.benefit-copy h3{font-size:29px;letter-spacing:-.03em;margin:14px 0}.benefit-copy h4{font-size:14px;font-weight:600;color:#78638c;margin:0 0 12px}.benefit-copy p{font-size:14px;max-width:430px}.benefit-tags{display:flex;gap:9px;flex-wrap:wrap;margin-top:20px}.benefit-tags span{font-size:10px;padding:5px 10px;border-radius:20px;color:#7754b2;background:#f1ebfd}
.benefit-visual{position:relative;height:260px;border-radius:22px;overflow:hidden;background:radial-gradient(ellipse at center,#e9e0ff,#f7f7fe 65%);isolation:isolate}.visual-center{position:absolute;inset:0;display:grid;place-items:center}.visual-center .template-icon{width:85px;height:85px;margin:0;background:linear-gradient(135deg,#6544ed,#387aff);color:#fff;border-radius:24px;box-shadow:0 16px 38px #7649db33}.visual-center svg{width:42px;height:42px}.visual-orbit{position:absolute;left:50%;top:50%;border:1px solid #9872eb36;border-radius:50%;width:210px;height:210px;transform:translate(-50%,-50%)}.orbit-b{width:310px;height:310px;border-style:dashed}.visual-label{position:absolute;padding:10px 15px;border:1px solid #e7dff8;border-radius:8px;background:#ffffffec;box-shadow:0 8px 20px #69449a08;font-size:10px;color:#725a99;z-index:1}.label-a{left:6%;top:17%}.label-b{right:6%;bottom:17%}.signal-line{position:absolute;left:0;top:50%;width:100%;height:1px;background:linear-gradient(90deg,transparent,#9468ee66,transparent);z-index:-1}.signal-line:after{content:"";position:absolute;left:0;top:-2px;width:30px;height:5px;border-radius:5px;background:#9468ee;box-shadow:0 0 12px #9468ee;animation:signal-flow 4s ease-in-out infinite;animation-play-state:paused}
.motion-visible .signal-line:after{animation-play-state:running}.motion-visible .visual-label{animation:node-drift 5s ease-in-out infinite alternate}.motion-visible .label-b{animation-delay:-2.5s}.visual-02 .visual-center .template-icon,.visual-04 .visual-center .template-icon{background:linear-gradient(135deg,#358fe2,#6d61df)}
@keyframes signal-flow{from{left:-10%;opacity:0}25%,75%{opacity:1}to{left:110%;opacity:0}}
.challenge-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.challenge-grid .template-card{padding:24px}.challenge-grid h3{font-size:17px}.challenge-grid p{font-size:13px}.home-banner{padding-top:55px;padding-bottom:55px}.home-banner .cta-panel{box-shadow:none;padding:40px}.home-banner .btn{background:#fff;color:#583cd3;flex-shrink:0}.home-banner .cta-panel h2{margin-top:10px;font-size:29px}.delivery-proof{padding-top:25px;padding-bottom:25px}.delivery-proof .principles{width:100%;background:transparent;border-top:1px solid #ebe7f4;border-bottom:1px solid #ebe7f4;border-radius:0}.delivery-proof .principles strong{font-size:25px}
.home-industries{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.home-industries>a{position:relative;text-align:center;padding:24px 12px;border:1px solid #edeaf5;background:#fff;border-radius:12px;transition:transform .25s,border-color .25s}.home-industries h3{font-size:13px;margin:8px 0}.home-industries>a>span:last-child{position:absolute;right:12px;top:10px;color:#ad9bc9;font-size:14px}.home-final{padding:65px 0;text-align:center;background:#0b1030 url('../img/waves.svg') no-repeat center;background-size:cover;color:#fff}.home-final .home-heading{margin-bottom:25px}.home-final .eyebrow{color:#b198ee}.home-final .home-heading p{color:#b6b4cd}.home-final .gradient-text{background-image:linear-gradient(110deg,#72b5ff,#c689ff)}.data-home .insights-section{padding-bottom:65px}
@media(hover:hover) and (pointer:fine){.technology-tile:hover,.home-industries>a:hover{transform:translateY(-4px);border-color:#bd9cea}}
@media(max-width:980px){.data-home .hero-grid{grid-template-columns:1fr 1fr;gap:20px}.data-home .hero h1{font-size:42px}.data-home .data-hero{min-height:550px;padding:55px 0}.data-home .hero-lead{font-size:14px}.cloud-core{min-height:150px;top:25%;padding:15px 8px}.cloud-core strong{font-size:14px}.cloud-core>span:last-child{font-size:6px}.orbit-node{font-size:9px;padding:6px}.orbit-node .template-icon{width:22px;height:22px}.orbit-node svg{width:15px}.universe-caption{font-size:8px;left:10%}.technology-grid{grid-template-columns:repeat(3,1fr)}.home-intro{gap:35px}.intro-mark strong{font-size:28px}.benefit-row{gap:30px;padding:25px 0}.challenge-grid{grid-template-columns:repeat(2,1fr)}.home-banner .cta-panel{padding:30px}.home-banner .cta-panel h2{font-size:25px}}
@media(max-width:680px){.data-home .hero-grid{grid-template-columns:1fr}.data-home .data-hero{padding:35px 0 50px}.data-home .hero h1{font-size:clamp(36px,8vw,50px)}.data-universe{width:min(100%,480px);margin:10px auto 0}.data-universe .ribbon-art{width:auto;height:auto;max-width:none;margin:0}.data-universe .ribbon-art img{width:100%}.cloud-core{top:29%;min-height:150px}.node-two{left:0}.node-five{right:0}.universe-caption{left:20%}.home-intro{grid-template-columns:1fr;gap:25px;padding:36px 0}.intro-mark{border:0;padding:0}.intro-mark strong{font-size:26px}.home-intro h2{font-size:25px}.home-section{padding:48px 0}.home-heading{margin-bottom:28px}.home-heading h2{font-size:29px}.home-heading p{font-size:13px}.technology-grid{grid-template-columns:repeat(2,1fr);gap:9px}.technology-tile{gap:9px;padding:12px 9px}.technology-tile strong{font-size:11px}.tech-monogram{width:28px;height:28px;font-size:9px}.data-home .service-grid{grid-template-columns:1fr}.data-home .service-grid .template-card{min-height:0;padding:24px}.benefit-row{grid-template-columns:1fr;gap:20px}.benefit-row:nth-child(even) .benefit-copy{order:0}.benefit-copy h3{font-size:26px}.benefit-visual{height:230px}.challenge-grid{gap:12px}.challenge-grid .template-card{padding:17px}.challenge-grid h3{font-size:15px}.challenge-grid p{font-size:12px}.home-banner{padding-top:35px;padding-bottom:35px}.home-banner .cta-panel{padding:27px 22px}.delivery-proof .principles strong{font-size:21px}.delivery-proof .principles span{font-size:11px}.home-industries{grid-template-columns:repeat(2,1fr);gap:12px}.home-final{padding:48px 0}.data-home .heading-row h2{font-size:23px;max-width:75%}}
.technology-logo{width:44px;height:44px;object-fit:contain;flex-shrink:0;padding:3px}
.technology-tile{min-height:88px;gap:15px}
.benefit-photo{position:relative;height:300px;isolation:isolate;overflow:hidden;border-radius:18px;background:#151735;box-shadow:0 14px 40px #4b318b12}
.benefit-photo>img{width:100%;height:100%;object-fit:cover;transition:transform 1s ease}
.benefit-photo::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#6455bb08 30%,#11132ce6 100%);z-index:0}
.photo-caption{position:absolute;bottom:20px;left:20px;right:20px;z-index:1;display:flex;align-items:center;gap:12px;color:white;font-size:13px;font-weight:600}
.photo-caption .template-icon{width:38px;height:38px;flex-shrink:0;margin:0;border-radius:10px;background:#8a66ef66;color:#e6dcff;border:1px solid #c7aaff55}
.photo-caption svg{width:23px;height:23px}
@media(hover:hover) and (pointer:fine){.benefit-photo:hover>img{transform:scale(1.045)}}
@media(max-width:680px){.technology-logo{width:34px;height:34px}.technology-tile{gap:10px;min-height:76px}.benefit-photo{height:260px}.photo-caption{font-size:12px;left:15px;bottom:15px}}
@media(prefers-reduced-motion:reduce){.data-connections,.orbit-node,.visual-label,.signal-line:after{animation:none!important}}
