:root {
  --orange:#f36b21;
  --orange-2:#ff8a3d;
  --ink:#111214;
  --ink-2:#1b1d21;
  --muted:#676b72;
  --line:#e6e2dc;
  --paper:#f6f4f0;
  --white:#fff;
  --max:1240px;
  --radius:26px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Segoe UI",Arial,Helvetica,sans-serif;color:var(--ink);background:#fff;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.container{width:min(calc(100% - 48px),var(--max));margin-inline:auto}.site-header{position:fixed;inset:0 0 auto;z-index:1000;transition:.3s ease;border-bottom:1px solid transparent}.site-header.scrolled{background:rgba(255,255,255,.92);backdrop-filter:blur(16px);border-color:rgba(17,18,20,.08);box-shadow:0 10px 30px rgba(0,0,0,.04)}.nav-wrap{height:88px;display:flex;align-items:center;justify-content:space-between}.brand img{width:235px;max-height:62px}.nav{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:600}.nav>a:not(.btn){position:relative}.nav>a:not(.btn)::after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:2px;background:var(--orange);transition:.25s}.nav>a:not(.btn):hover::after{width:100%}.nav-toggle{display:none;background:none;border:0;padding:8px}.nav-toggle span{display:block;width:24px;height:2px;background:var(--ink);margin:5px 0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;border-radius:999px;padding:15px 22px;font-size:14px;font-weight:700;border:1px solid transparent;transition:.25s ease;cursor:pointer}.btn:hover{transform:translateY(-2px)}.btn-sm{padding:11px 18px}.btn-dark{background:var(--ink);color:#fff}.btn-primary{background:var(--orange);color:#fff;box-shadow:0 12px 24px rgba(243,107,33,.22)}.btn-primary:hover{background:#df5c18}.btn-ghost{border-color:#d8d3cc;background:rgba(255,255,255,.55)}.btn-light{background:#fff;color:var(--ink)}.hero{padding:122px 0 34px;background:radial-gradient(circle at 76% 18%,rgba(243,107,33,.17),transparent 28%),linear-gradient(180deg,#fff 0%,#fbfaf8 100%);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:56px;align-items:center;min-height:560px}.eyebrow,.kicker,.overline{font-size:12px;text-transform:uppercase;letter-spacing:.17em;font-weight:800}.eyebrow{display:flex;align-items:center;gap:10px;color:#4a4d53;margin-bottom:22px}.dot{width:8px;height:8px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 6px rgba(243,107,33,.12)}h1,h2,h3{font-family:"Segoe UI",Arial,Helvetica,sans-serif;letter-spacing:-.04em;margin:0}.hero h1{font-size:clamp(52px,6vw,82px);line-height:.98;font-weight:800}.hero h1 span{color:var(--orange)}.hero-lead{font-size:19px;max-width:680px;color:#53575e;margin:28px 0 30px;line-height:1.7}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-proof{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:24px;padding-top:22px;border-top:1px solid #dedad4}.hero-proof strong{display:block;font-size:16px}.hero-proof span{display:block;color:#777b82;font-size:12px;margin-top:4px}.hero-visual{position:relative;min-height:520px}.visual-panel{position:absolute;inset:18px 0 0 0;border-radius:34px;background:linear-gradient(145deg,#16171a,#24262a);box-shadow:0 35px 75px rgba(19,19,20,.25);overflow:hidden;border:1px solid rgba(255,255,255,.08)}.visual-panel::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:36px 36px;mask-image:linear-gradient(to bottom,black,transparent 90%)}.visual-topline{position:absolute;top:24px;left:28px;right:28px;display:flex;justify-content:space-between;color:#9fa3aa;font-size:10px;letter-spacing:.18em}.live{display:flex;align-items:center;gap:8px;color:#eaecef}.live i{width:7px;height:7px;border-radius:50%;background:#69e08f;box-shadow:0 0 0 5px rgba(105,224,143,.12)}.core-node{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:180px;height:180px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,#ff9a59,var(--orange) 44%,#b94108);box-shadow:0 0 0 18px rgba(243,107,33,.08),0 0 80px rgba(243,107,33,.36)}.core-ring{position:absolute;inset:-38px;border-radius:50%;border:1px dashed rgba(255,255,255,.14);animation:spin 18s linear infinite}.core-label{text-align:center;color:#fff}.core-label small{display:block;font-size:12px;letter-spacing:.2em}.core-label strong{font-size:34px}.orbit{position:absolute}.orbit-1{left:48px;top:92px}.orbit-2{right:44px;top:76px}.orbit-3{left:42px;bottom:65px}.orbit-4{right:38px;bottom:64px}.node{width:105px;height:78px;border-radius:18px;background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(10px);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 16px 26px rgba(0,0,0,.18)}.node b{font-size:16px}.node small{color:#9ca1a8;margin-top:3px}.flow-lines{position:absolute;inset:0;width:100%;height:100%}.flow-lines path{fill:none;stroke:rgba(255,130,60,.6);stroke-width:2;stroke-dasharray:6 8;animation:dash 12s linear infinite}.metric-card{position:absolute;background:#fff;border-radius:15px;padding:11px 14px;min-width:120px;box-shadow:0 15px 30px rgba(0,0,0,.16);font-size:10px}.metric-card span{display:block;color:#7b8088}.metric-card strong{font-size:12px}.metric-a{top:175px;left:16px}.metric-b{right:14px;bottom:190px}.glow{position:absolute;border-radius:50%;filter:blur(36px);opacity:.6}.glow-a{width:180px;height:180px;background:rgba(243,107,33,.3);top:0;right:-60px}.glow-b{width:150px;height:150px;background:rgba(255,190,150,.34);bottom:0;left:-40px}.hero-bottom-line{height:1px;background:linear-gradient(90deg,transparent,#ddd8d1,transparent);margin-top:30px}.oracle-bar{background:#fff;border-bottom:1px solid var(--line)}.oracle-bar-inner{display:grid;grid-template-columns:150px 1fr auto;gap:34px;align-items:center;padding:34px 0}.oracle-mark{font-family:Georgia,serif;font-size:23px;letter-spacing:.08em;color:#c74634;font-weight:700}.oracle-copy h2{font-size:22px;letter-spacing:-.02em;margin:2px 0 3px}.oracle-copy p{margin:0;color:var(--muted);font-size:13px;max-width:650px}.overline{font-size:9px;color:#8f9399}.arrow-link{font-size:13px;font-weight:800;white-space:nowrap}.arrow-link span{color:var(--orange);margin-left:7px}.partner-note{font-size:10px;color:#9b9da1;margin-top:-14px;padding-bottom:16px}.section{padding:110px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:48px}.section-head h2,.about-copy h2,.ecosystem-copy h2,.outcomes-intro h2,.contact-copy h2{font-size:clamp(38px,4.7vw,64px);line-height:1.03}.section-head p{max-width:480px;color:var(--muted);margin:0;font-size:15px}.kicker{display:block;color:var(--orange);margin-bottom:13px}.kicker.light{color:#ff9b61}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{position:relative;min-height:370px;padding:28px;border-radius:var(--radius);background:#f6f4f0;border:1px solid transparent;transition:.3s ease;display:flex;flex-direction:column}.service-card:hover{transform:translateY(-6px);border-color:#ded9d2;box-shadow:0 24px 54px rgba(25,25,25,.08)}.service-card.dark{background:#181a1e;color:#fff}.service-card.accent{background:linear-gradient(145deg,#ef671d,#ff8a44);color:#fff}.number{font-size:11px;font-weight:800;color:#92969c}.dark .number,.accent .number{color:rgba(255,255,255,.55)}.icon-box{width:54px;height:54px;border-radius:16px;background:#fff;display:grid;place-items:center;font-size:22px;margin:44px 0 18px;box-shadow:0 12px 26px rgba(0,0,0,.05)}.dark .icon-box{background:#292c31}.accent .icon-box{background:rgba(255,255,255,.17);backdrop-filter:blur(10px)}.service-card h3{font-size:24px;line-height:1.1}.service-card p{color:#6d7177;font-size:13px;line-height:1.7;margin:14px 0 20px}.dark p{color:#afb3ba}.accent p{color:#fff3ec}.tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto}.tags span{font-size:10px;padding:6px 9px;border:1px solid #ded9d2;border-radius:999px}.dark .tags span,.accent .tags span{border-color:rgba(255,255,255,.18)}.service-card>a{margin-top:18px;font-weight:800;font-size:12px}.outcomes{background:#121316;color:#fff}.outcomes-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px}.outcomes-intro{position:sticky;top:140px;align-self:start}.outcomes-intro p{color:#b6bac0;max-width:500px;font-size:16px;line-height:1.75;margin:22px 0 28px}.outcome-row{display:grid;grid-template-columns:48px 1fr;column-gap:22px;padding:30px 0;border-bottom:1px solid rgba(255,255,255,.12)}.outcome-row span{grid-row:1/3;color:#ff8c4d;font-size:11px;font-weight:800}.outcome-row h3{font-size:26px}.outcome-row p{margin:7px 0 0;color:#9fa4ab;font-size:13px}.ecosystem{background:#f7f5f1}.ecosystem-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}.ecosystem-copy p{color:var(--muted);max-width:520px;line-height:1.75}.pill-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:26px}.pill-row span{background:#fff;border:1px solid #dedbd5;padding:9px 13px;border-radius:999px;font-size:11px;font-weight:800}.ecosystem-map{height:520px;position:relative;border-radius:32px;background:radial-gradient(circle at 50% 50%,rgba(243,107,33,.18),transparent 32%),#1a1b1f;overflow:hidden}.ecosystem-map::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.13) 1px,transparent 1px);background-size:28px 28px}.ecosystem-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:150px;height:150px;border-radius:50%;display:grid;place-content:center;text-align:center;background:var(--orange);color:#fff;font-size:14px;box-shadow:0 0 0 20px rgba(243,107,33,.08),0 0 60px rgba(243,107,33,.3)}.ecosystem-core strong{font-size:28px}.eco{position:absolute;background:#2b2d32;color:#fff;border:1px solid rgba(255,255,255,.12);padding:12px 16px;border-radius:999px;font-size:11px;box-shadow:0 12px 25px rgba(0,0,0,.18)}.eco-1{top:70px;left:70px}.eco-2{top:95px;right:48px}.eco-3{left:45px;bottom:120px}.eco-4{right:50px;bottom:90px}.eco-5{left:42%;top:30px}.eco-6{left:37%;bottom:35px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.about-visual{position:relative;min-height:580px}.photo-card-main{position:absolute;inset:0 60px 40px 0;border-radius:34px;background:linear-gradient(155deg,#17191c 0%,#2c2f34 55%,#f36b21 180%);overflow:hidden}.photo-pattern{position:absolute;inset:0;background:radial-gradient(circle at 20% 15%,rgba(243,107,33,.85),transparent 25%),linear-gradient(120deg,transparent 30%,rgba(255,255,255,.06) 30%,rgba(255,255,255,.06) 31%,transparent 31%),linear-gradient(60deg,transparent 60%,rgba(255,255,255,.04) 60%,rgba(255,255,255,.04) 61%,transparent 61%)}.photo-pattern::before,.photo-pattern::after{content:"";position:absolute;border-radius:28px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.11);backdrop-filter:blur(8px)}.photo-pattern::before{width:55%;height:28%;left:10%;top:22%;transform:rotate(-7deg)}.photo-pattern::after{width:48%;height:24%;right:7%;bottom:22%;transform:rotate(9deg)}.photo-caption{position:absolute;left:28px;bottom:28px;color:#fff}.photo-caption span{display:block;text-transform:uppercase;letter-spacing:.15em;font-size:9px;color:#ffad7d}.photo-caption strong{font-size:21px}.experience-card{position:absolute;right:0;bottom:0;width:220px;background:#fff;border-radius:24px;padding:24px;box-shadow:0 24px 50px rgba(0,0,0,.13)}.experience-card strong{display:block;font-size:48px;color:var(--orange);line-height:1}.experience-card span{font-size:12px;color:#696d74}.about-copy p{color:var(--muted);line-height:1.75}.benefit-list{margin-top:30px;border-top:1px solid var(--line)}.benefit-list>div{display:grid;grid-template-columns:42px 1fr;gap:14px;padding:17px 0;border-bottom:1px solid var(--line)}.benefit-list span{color:var(--orange);font-size:10px;font-weight:800}.benefit-list p{margin:0;font-size:13px}.benefit-list strong{display:block;color:var(--ink);font-size:14px;margin-bottom:2px}.process{background:#faf9f7}.process-track{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid #dcd8d2}.process-step{padding:26px 24px 10px 0;position:relative}.process-step::before{content:"";position:absolute;top:-4px;left:0;width:8px;height:8px;border-radius:50%;background:var(--orange)}.process-step span{color:#999da3;font-size:10px;font-weight:800}.process-step h3{font-size:21px;margin-top:24px}.process-step p{color:var(--muted);font-size:12px;line-height:1.65}.insight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.insight-card{border:1px solid var(--line);border-radius:24px;padding:12px 12px 22px;transition:.3s}.insight-card:hover{transform:translateY(-4px);box-shadow:0 20px 40px rgba(0,0,0,.07)}.insight-visual{height:250px;border-radius:16px;display:grid;place-items:center;color:#fff;font-family:Manrope;font-size:42px;font-weight:800;letter-spacing:-.05em;overflow:hidden;position:relative}.insight-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 30%,rgba(255,255,255,.1) 30%,rgba(255,255,255,.1) 32%,transparent 32%)}.iv-1{background:linear-gradient(135deg,#15171a,#f36b21)}.iv-2{background:radial-gradient(circle at 35% 30%,#ff9d65,#f36b21 35%,#16171a 72%)}.iv-3{background:linear-gradient(135deg,#26292e,#111,#f36b21 160%)}.insight-card small{display:block;color:var(--orange);font-weight:800;text-transform:uppercase;letter-spacing:.14em;margin:18px 10px 8px}.insight-card h3{font-size:20px;line-height:1.3;margin:0 10px 22px}.insight-card a{font-size:12px;font-weight:800;margin:0 10px}.contact-section{padding:110px 0;background:linear-gradient(135deg,#121316 0%,#1e2024 62%,#3a2116 100%);color:#fff}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px}.contact-copy p{color:#afb3ba;max-width:520px;line-height:1.75}.contact-details{display:flex;flex-direction:column;gap:6px;margin-top:35px;font-size:13px}.contact-details a:first-child{color:#ff9860}.contact-form{background:#fff;color:var(--ink);padding:30px;border-radius:28px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.contact-form label{display:block;font-size:11px;font-weight:800;color:#555960;margin-bottom:15px}.contact-form input,.contact-form select,.contact-form textarea{width:100%;margin-top:7px;border:1px solid #dedbd6;border-radius:12px;padding:13px 14px;font:inherit;font-size:13px;outline:none;background:#fbfaf8;transition:.2s}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--orange);box-shadow:0 0 0 3px rgba(243,107,33,.1)}.contact-form textarea{resize:vertical}.consent{display:flex!important;gap:9px;align-items:flex-start;font-weight:500!important;line-height:1.4}.consent input{width:auto;margin:2px 0 0}.btn-submit{border:0;width:100%}.form-status{font-size:12px;margin-top:12px;min-height:20px}.form-status.success{color:#18743d}.form-status.error{color:#b02f2f}.hp-field{position:absolute!important;left:-9999px!important;opacity:0}.footer{background:#0c0d0f;color:#fff;padding-top:62px}.footer-top{display:grid;grid-template-columns:1.7fr repeat(3,1fr);gap:50px;padding-bottom:54px}.footer-brand img{width:170px;filter:brightness(0) invert(1)}.footer-brand p{max-width:330px;color:#8f949b;font-size:12px;line-height:1.7}.footer h4{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#777c83;margin:0 0 14px}.footer-top>div:not(.footer-brand){display:flex;flex-direction:column;gap:9px}.footer a{font-size:12px;color:#d4d6d9}.footer a:hover{color:#ff9154}.footer-bottom{border-top:1px solid #22252a;padding:18px 0 26px;display:flex;justify-content:space-between;color:#747980;font-size:10px}.footer-bottom div{display:flex;gap:20px}.reveal{opacity:0;transform:translateY(20px);transition:opacity .65s ease,transform .65s ease}.reveal.visible{opacity:1;transform:none}.reveal-delay-1{transition-delay:.08s}.reveal-delay-2{transition-delay:.16s}@keyframes spin{to{transform:rotate(360deg)}}@keyframes dash{to{stroke-dashoffset:-200}}

/* --- V2 motion + first-viewport Oracle partner treatment --- */
.hero-oracle-partner{margin-top:24px;display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;max-width:640px;padding:13px 15px;border:1px solid rgba(199,70,52,.22);border-radius:18px;background:rgba(255,255,255,.78);backdrop-filter:blur(10px);box-shadow:0 14px 36px rgba(34,24,18,.06);transition:.3s ease}
.hero-oracle-partner:hover{transform:translateY(-2px);border-color:rgba(199,70,52,.42);box-shadow:0 18px 42px rgba(34,24,18,.1)}
.hero-oracle-word{font-family:Georgia,serif;font-weight:700;letter-spacing:.08em;color:#c74634;font-size:20px;padding-right:16px;border-right:1px solid #eadbd7}
.hero-oracle-text{display:flex;flex-direction:column;min-width:0}
.hero-oracle-text small{text-transform:uppercase;letter-spacing:.14em;font-size:9px;color:#8b8f95;font-weight:800}
.hero-oracle-text strong{font-size:12px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hero-oracle-arrow{font-size:11px;font-weight:800;color:var(--orange);white-space:nowrap}

/* Cards assemble into position as the section enters the viewport */
.service-assemble{perspective:1400px}
.service-assemble .service-card{opacity:0;will-change:transform,opacity;transition:transform .9s cubic-bezier(.2,.8,.2,1),opacity .65s ease,box-shadow .3s ease,border-color .3s ease}
.service-assemble .service-card:nth-child(1){transform:translate(72%,46%) rotate(-5deg) scale(.84)}
.service-assemble .service-card:nth-child(2){transform:translate(0,58%) rotate(3deg) scale(.88)}
.service-assemble .service-card:nth-child(3){transform:translate(-72%,45%) rotate(5deg) scale(.84)}
.service-assemble .service-card:nth-child(4){transform:translate(74%,-48%) rotate(4deg) scale(.86)}
.service-assemble .service-card:nth-child(5){transform:translate(0,-58%) rotate(-3deg) scale(.9)}
.service-assemble .service-card:nth-child(6){transform:translate(-74%,-48%) rotate(-4deg) scale(.86)}
.service-assemble.in-view .service-card{opacity:1;transform:translate(0,0) rotate(0) scale(1)}
.service-assemble.in-view .service-card:nth-child(1){transition-delay:.02s}
.service-assemble.in-view .service-card:nth-child(2){transition-delay:.09s}
.service-assemble.in-view .service-card:nth-child(3){transition-delay:.16s}
.service-assemble.in-view .service-card:nth-child(4){transition-delay:.23s}
.service-assemble.in-view .service-card:nth-child(5){transition-delay:.30s}
.service-assemble.in-view .service-card:nth-child(6){transition-delay:.37s}
.service-assemble.in-view .service-card:hover{transform:translateY(-6px)}

/* Animated process connector */
.process-track{position:relative;overflow:visible}
.process-track::after{content:"";position:absolute;left:0;right:0;top:-2px;height:3px;background:linear-gradient(90deg,var(--orange),#ff9b61,var(--orange));transform-origin:left center;transform:scaleX(0);box-shadow:0 0 16px rgba(243,107,33,.35);z-index:1}
.process-track.visible::after{animation:drawProcessLine 1.7s cubic-bezier(.2,.8,.2,1) forwards}
.process-step{z-index:2}
.process-step::before{z-index:3;box-shadow:0 0 0 0 rgba(243,107,33,.25)}
.process-track.visible .process-step::before{animation:processDotPulse .7s ease both}
.process-track.visible .process-step:nth-child(1)::before{animation-delay:.16s}
.process-track.visible .process-step:nth-child(2)::before{animation-delay:.43s}
.process-track.visible .process-step:nth-child(3)::before{animation-delay:.70s}
.process-track.visible .process-step:nth-child(4)::before{animation-delay:.97s}
.process-track.visible .process-step:nth-child(5)::before{animation-delay:1.24s}
.process-track.visible .process-step{animation:processRise .65s ease both}
.process-track.visible .process-step:nth-child(1){animation-delay:.12s}
.process-track.visible .process-step:nth-child(2){animation-delay:.35s}
.process-track.visible .process-step:nth-child(3){animation-delay:.58s}
.process-track.visible .process-step:nth-child(4){animation-delay:.81s}
.process-track.visible .process-step:nth-child(5){animation-delay:1.04s}
@keyframes drawProcessLine{0%{transform:scaleX(0)}100%{transform:scaleX(1)}}
@keyframes processDotPulse{0%{transform:scale(.25);box-shadow:0 0 0 0 rgba(243,107,33,.32)}60%{transform:scale(1.45);box-shadow:0 0 0 12px rgba(243,107,33,0)}100%{transform:scale(1)}}
@keyframes processRise{0%{opacity:.2;transform:translateY(18px)}100%{opacity:1;transform:none}}

@media(max-width:1050px){.hero-grid,.outcomes-grid,.ecosystem-grid,.about-grid,.contact-grid{grid-template-columns:1fr}.hero-grid{gap:20px}.hero-visual{min-height:520px}.service-grid{grid-template-columns:repeat(2,1fr)}.outcomes-intro{position:static}.ecosystem-copy{max-width:700px}.about-visual{max-width:700px}.process-track{grid-template-columns:repeat(3,1fr);row-gap:25px}.footer-top{grid-template-columns:1.5fr 1fr 1fr}.footer-top>div:last-child{grid-column:2}.nav{gap:18px}}
@media(max-width:780px){.hero-oracle-partner{grid-template-columns:auto 1fr;padding:11px 12px}.hero-oracle-arrow{grid-column:2}.hero-oracle-word{font-size:17px}.service-assemble .service-card{opacity:0;transform:translateY(34px) scale(.96)!important}.service-assemble.in-view .service-card{opacity:1;transform:none!important}.process-track::after{display:none}.container{width:min(calc(100% - 30px),var(--max))}.site-header{background:rgba(255,255,255,.94);backdrop-filter:blur(14px)}.nav-wrap{height:74px}.brand img{width:190px}.nav-toggle{display:block}.nav{position:absolute;top:74px;left:15px;right:15px;padding:18px;background:#fff;border:1px solid #e7e2dc;border-radius:18px;box-shadow:0 20px 50px rgba(0,0,0,.12);display:none;flex-direction:column;align-items:stretch;gap:14px}.nav.open{display:flex}.nav .btn{width:100%}.hero{padding-top:105px}.hero-grid{min-height:auto}.hero h1{font-size:48px}.hero-lead{font-size:16px}.hero-proof{grid-template-columns:1fr}.hero-proof div{display:grid;grid-template-columns:120px 1fr}.hero-visual{min-height:430px}.visual-panel{inset:5px 0}.core-node{width:130px;height:130px}.core-label strong{font-size:26px}.node{width:82px;height:64px}.orbit-1{left:20px}.orbit-2{right:18px}.orbit-3{left:16px}.orbit-4{right:14px}.metric-card{display:none}.oracle-bar-inner{grid-template-columns:1fr;gap:12px;padding:28px 0}.partner-note{margin-top:0}.section{padding:78px 0}.section-head{align-items:start;flex-direction:column;gap:18px}.section-head h2,.about-copy h2,.ecosystem-copy h2,.outcomes-intro h2,.contact-copy h2{font-size:42px}.service-grid{grid-template-columns:1fr}.service-card{min-height:340px}.outcomes-grid{gap:45px}.ecosystem-map{height:420px}.eco{font-size:9px;padding:9px 11px}.eco-1{left:20px}.eco-2{right:18px}.eco-3{left:15px}.eco-4{right:15px}.about-grid{gap:48px}.about-visual{min-height:460px}.photo-card-main{right:36px}.experience-card{width:180px}.process-track{grid-template-columns:1fr}.process-step{padding-left:24px;border-left:1px solid #ddd8d2;border-top:0}.process-step::before{top:0;left:-4px}.insight-grid{grid-template-columns:1fr}.contact-grid{gap:45px}.form-row{grid-template-columns:1fr}.footer-top{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-top>div:last-child{grid-column:auto}.footer-bottom{flex-direction:column;gap:10px}}
@media(max-width:480px){.hero h1{font-size:41px}.hero-visual{min-height:380px}.visual-panel{border-radius:24px}.orbit-1{top:72px}.orbit-2{top:70px}.orbit-3{bottom:44px}.orbit-4{bottom:45px}.node{width:72px;height:56px;border-radius:12px}.node b{font-size:13px}.node small{font-size:9px}.core-node{width:112px;height:112px}.ecosystem-map{height:380px}.ecosystem-core{width:120px;height:120px}.ecosystem-core strong{font-size:22px}.footer-top{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.reveal{opacity:1;transform:none}.core-ring,.flow-lines path,.process-track::after,.process-step,.process-step::before{animation:none!important}.service-assemble .service-card{opacity:1!important;transform:none!important}}


/* --- V3 refinements: stronger brand, single Oracle partnership treatment, deliberate motion --- */
.nav-wrap{height:104px}
.brand{width:255px;height:72px;display:flex;align-items:center;overflow:visible;flex:0 0 255px}
.brand img{width:275px;max-width:none;max-height:none;transform:scale(1.38);transform-origin:left center;margin-left:2px}
.hero{padding-top:142px}

/* capability cards start visibly stacked near the center and spread outward */
.service-assemble{position:relative;perspective:1600px}
.service-assemble .service-card{
  opacity:.28;
  filter:blur(1.5px);
  will-change:transform,opacity,filter;
  transition:
    transform 1.55s cubic-bezier(.16,1,.3,1),
    opacity 1.05s ease,
    filter 1.05s ease,
    box-shadow .3s ease,
    border-color .3s ease;
}
.service-assemble .service-card:nth-child(1){transform:translate(106%,57%) rotate(-8deg) scale(.56)}
.service-assemble .service-card:nth-child(2){transform:translate(0,57%) rotate(5deg) scale(.58)}
.service-assemble .service-card:nth-child(3){transform:translate(-106%,57%) rotate(8deg) scale(.56)}
.service-assemble .service-card:nth-child(4){transform:translate(106%,-57%) rotate(7deg) scale(.56)}
.service-assemble .service-card:nth-child(5){transform:translate(0,-57%) rotate(-5deg) scale(.58)}
.service-assemble .service-card:nth-child(6){transform:translate(-106%,-57%) rotate(-7deg) scale(.56)}
.service-assemble.in-view .service-card{opacity:1;filter:blur(0);transform:translate(0,0) rotate(0) scale(1)}
.service-assemble.in-view .service-card:nth-child(1){transition-delay:.02s}
.service-assemble.in-view .service-card:nth-child(2){transition-delay:.12s}
.service-assemble.in-view .service-card:nth-child(3){transition-delay:.22s}
.service-assemble.in-view .service-card:nth-child(4){transition-delay:.32s}
.service-assemble.in-view .service-card:nth-child(5){transition-delay:.42s}
.service-assemble.in-view .service-card:nth-child(6){transition-delay:.52s}
.service-assemble.in-view .service-card:hover{transform:translateY(-6px)}

/* slower connector with a visible traveling orange dot */
.process-track::after{
  transform:scaleX(0);
  background:linear-gradient(90deg,var(--orange),#ff9b61,var(--orange));
  height:3px;
  box-shadow:0 0 18px rgba(243,107,33,.3);
}
.process-track.process-active::after{animation:drawProcessLine 6.2s cubic-bezier(.2,.68,.2,1) forwards}
.process-runner{
  position:absolute;
  top:-8px;
  left:0;
  width:15px;
  height:15px;
  margin-left:-7px;
  border-radius:50%;
  background:var(--orange);
  box-shadow:0 0 0 7px rgba(243,107,33,.14),0 0 22px rgba(243,107,33,.5);
  opacity:0;
  z-index:5;
}
.process-track.process-active .process-runner{animation:travelProcessDot 6.2s cubic-bezier(.2,.68,.2,1) forwards}
.process-track.process-active .process-step::before{animation:processDotPulse 1.1s ease both}
.process-track.process-active .process-step:nth-child(1)::before{animation-delay:.15s}
.process-track.process-active .process-step:nth-child(2)::before{animation-delay:1.1s}
.process-track.process-active .process-step:nth-child(3)::before{animation-delay:2.05s}
.process-track.process-active .process-step:nth-child(4)::before{animation-delay:3s}
.process-track.process-active .process-step:nth-child(5)::before{animation-delay:3.95s}
.process-track.process-active .process-step{animation:processRise 1s ease both}
.process-track.process-active .process-step:nth-child(1){animation-delay:.10s}
.process-track.process-active .process-step:nth-child(2){animation-delay:1.02s}
.process-track.process-active .process-step:nth-child(3){animation-delay:1.97s}
.process-track.process-active .process-step:nth-child(4){animation-delay:2.92s}
.process-track.process-active .process-step:nth-child(5){animation-delay:3.87s}
@keyframes travelProcessDot{
  0%{left:0;opacity:0;transform:scale(.65)}
  4%{opacity:1;transform:scale(1)}
  96%{opacity:1;transform:scale(1)}
  100%{left:100%;opacity:0;transform:scale(.7)}
}

@media(max-width:1050px){
  .brand{width:220px;flex-basis:220px}
  .brand img{width:245px;transform:scale(1.30)}
}
@media(max-width:780px){
  .nav-wrap{height:78px}
  .brand{width:165px;height:58px;flex-basis:165px;overflow:hidden}
  .brand img{width:200px;transform:scale(1.22);transform-origin:left center}
  .hero{padding-top:108px}
  .service-assemble .service-card{opacity:0;filter:none;transform:translateY(42px) scale(.94)!important;transition-duration:.9s}
  .service-assemble.in-view .service-card{opacity:1;transform:none!important}
  .process-runner{display:none}
}

/* --- V5: contain the Incredasoft SVG so its internal white canvas cannot overflow --- */
.nav-wrap{height:94px}
.brand{
  width:305px;
  height:78px;
  flex:0 0 305px;
  display:flex;
  align-items:center;
  position:relative;
  overflow:hidden;
}
.brand img{
  width:270px;
  height:auto;
  max-width:none;
  max-height:none;
  transform:scale(1.10);
  transform-origin:left center;
  margin:0;
}
.hero{padding-top:128px}

@media(max-width:1050px){
  .brand{width:255px;height:72px;flex-basis:255px;overflow:hidden}
  .brand img{width:235px;transform:scale(1.08)}
}
@media(max-width:780px){
  .nav-wrap{height:76px}
  .brand{width:190px;height:58px;flex-basis:190px;overflow:hidden}
  .brand img{width:180px;transform:scale(1.06);transform-origin:left center}
  .hero{padding-top:106px}
}

/* --- V6 definitive header/logo crop fix --- */
.site-header{
  background:#fff;
}
.nav-wrap{
  height:90px;
}
.brand{
  width:280px !important;
  height:68px !important;
  flex:0 0 280px !important;
  position:relative !important;
  display:block !important;
  overflow:hidden !important;
  background:transparent !important;
}
.brand img{
  position:absolute !important;
  left:0 !important;
  top:50% !important;
  width:250px !important;
  height:auto !important;
  max-width:none !important;
  max-height:none !important;
  margin:0 !important;
  transform:translateY(-50%) !important;
  transform-origin:left center !important;
  object-fit:contain !important;
}
.hero{padding-top:120px}

@media(max-width:1050px){
  .brand{width:235px !important;height:62px !important;flex-basis:235px !important}
  .brand img{width:215px !important}
}
@media(max-width:780px){
  .nav-wrap{height:74px}
  .brand{width:175px !important;height:52px !important;flex-basis:175px !important}
  .brand img{width:165px !important}
  .hero{padding-top:102px}
}

/* --- V8: keep Oracle partner in original position, but fit it into first viewport --- */
@media (min-width: 1060px){
  .hero{padding-top:108px;padding-bottom:24px}
  .hero-grid{min-height:535px;align-items:center}
  .eyebrow{margin-bottom:14px}
  .hero h1{font-size:clamp(50px,5.5vw,76px);line-height:.95}
  .hero-lead{margin:20px 0 20px;line-height:1.55;font-size:18px}
  .hero-actions{gap:10px}
  .hero-oracle-partner{margin-top:14px;padding:11px 14px}
  .hero-proof{margin-top:16px;padding-top:15px}
  .hero-visual{min-height:500px}
  .visual-panel{inset:8px 0 0 0}
}


/* --- V9 enterprise navigation / mega menu --- */
.site-header{overflow:visible}
.nav-wrap{overflow:visible}
.nav{position:relative;overflow:visible}
.nav-item{position:relative;display:flex;align-items:center;height:90px}
.nav-link{appearance:none;border:0;background:transparent;font:inherit;font-size:14px;font-weight:700;color:var(--ink);padding:16px 2px;cursor:pointer;display:flex;align-items:center;gap:6px;white-space:nowrap}
.nav-link .chev{font-size:12px;color:#73777e;transition:transform .22s ease}
.nav-item.open>.nav-link .chev,.nav-item:hover>.nav-link .chev{transform:rotate(180deg)}
.nav-link::after{content:"";position:absolute;left:0;right:0;margin:auto;bottom:19px;width:0;height:2px;background:var(--orange);transition:width .22s ease}
.nav-item:hover>.nav-link::after,.nav-item.open>.nav-link::after{width:100%}
.dropdown-menu,.mega-menu{position:absolute;top:calc(100% - 4px);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(10px);transition:opacity .18s ease,transform .18s ease,visibility .18s ease;background:#fff;border:1px solid #e8e2dc;box-shadow:0 25px 60px rgba(17,18,20,.16)}
.nav-item:hover>.dropdown-menu,.nav-item:hover>.mega-menu,.nav-item.open>.dropdown-menu,.nav-item.open>.mega-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
.dropdown-menu{left:-24px;width:330px;border-radius:20px;padding:10px}
.dropdown-menu.right-align{left:auto;right:-10px}
.dropdown-menu.compact{width:300px}
.dropdown-menu>a{display:block;padding:13px 14px;border-radius:12px;transition:background .18s ease,transform .18s ease}
.dropdown-menu>a:hover{background:#fff3eb;transform:translateX(3px)}
.dropdown-menu strong{display:block;font-size:13px;margin-bottom:2px}
.dropdown-menu small{display:block;color:#767b82;font-size:10px;line-height:1.45;font-weight:500}
.services-mega{left:50%;transform:translate(-38%,10px);width:min(980px,calc(100vw - 80px));min-height:500px;border-radius:24px;overflow:hidden;display:grid;grid-template-columns:340px 1fr}
.nav-item:hover>.services-mega,.nav-item.open>.services-mega{transform:translate(-38%,0)}
.mega-sidebar{background:linear-gradient(155deg,#f36b21 0%,#d75313 100%);padding:18px;color:#fff;display:flex;flex-direction:column;gap:6px}
.mega-label{text-transform:uppercase;letter-spacing:.16em;font-size:9px;font-weight:800;opacity:.68;padding:7px 10px 10px}
.mega-tab{border:0;background:transparent;color:#fff;text-align:left;border-radius:13px;padding:12px 12px;font:inherit;font-size:13px;font-weight:700;display:grid;grid-template-columns:28px 1fr auto;gap:8px;align-items:center;cursor:pointer;transition:.18s ease}
.mega-tab span{width:28px;height:28px;border-radius:9px;background:rgba(255,255,255,.12);display:grid;place-items:center}
.mega-tab b{font-size:17px;font-weight:500;opacity:.7}
.mega-tab:hover,.mega-tab.active{background:#fff;color:#a73d12}
.mega-tab.active span{background:#fff0e8;color:var(--orange)}
.mega-expert{margin-top:auto;background:#fff;color:var(--ink);border-radius:14px;padding:14px 15px;display:flex;align-items:center;gap:9px;font-size:12px;font-weight:800}
.mega-expert b{margin-left:auto;color:var(--orange)}
.mega-content{padding:30px 34px 32px;background:#fff}
.mega-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:22px;border-bottom:1px solid #e5e0da;margin-bottom:7px}
.mega-top strong{font-family:"Segoe UI",Arial,Helvetica,sans-serif;font-size:25px;letter-spacing:-.035em}
.mega-top a{font-size:12px;font-weight:800}
.mega-top a span{color:var(--orange);margin-left:5px}
.mega-panel{display:none}
.mega-panel.active{display:block;animation:megaFade .2s ease}
.mega-group{padding:19px 0 14px;border-bottom:1px solid #e7e2dc;display:grid;gap:10px}
.mega-group:last-child{border-bottom:0}
.mega-group>span{font-size:10px;letter-spacing:.10em;color:#cc4f19;font-weight:800}
.mega-group>a{font-size:13px;font-weight:700;color:#29303a;padding-left:10px;position:relative}
.mega-group>a::before{content:"";width:4px;height:4px;border-radius:50%;background:var(--orange);position:absolute;left:0;top:8px;opacity:0;transition:.18s}
.mega-group>a:hover{color:var(--orange)}
.mega-group>a:hover::before{opacity:1}
@keyframes megaFade{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}

@media(max-width:1050px){
  .nav-item{height:auto}
  .nav-link{width:100%;justify-content:space-between;padding:8px 2px}
  .nav-link::after{display:none}
  .dropdown-menu,.mega-menu,.services-mega{position:static!important;display:none!important;width:100%!important;min-height:0!important;transform:none!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;box-shadow:none!important;border:0!important;border-radius:14px!important;margin-top:4px!important}
  .nav-item{display:block;width:100%}
  .nav-item.open>.dropdown-menu,.nav-item.open>.mega-menu{display:block!important}
  .services-mega{grid-template-columns:1fr!important}
  .mega-sidebar{border-radius:14px;padding:10px}
  .mega-content{display:none}
  .mega-tab{padding:9px 10px}
  .mega-expert{margin-top:8px}
  .dropdown-menu{padding:7px;background:#faf8f5}
}


/* ===== Multi-page content ===== */
.nav-link.active{color:var(--orange)}
.nav-link.active::after{width:100%}
.oracle-links a{display:inline-flex;align-items:center;justify-content:center;border:1px solid #ded8d1;border-radius:999px;padding:12px 18px;font-weight:800;background:#fff;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease,color .2s ease}
.oracle-links a:hover{transform:translateY(-3px);border-color:var(--orange);color:var(--orange);box-shadow:0 10px 26px rgba(241,105,36,.12)}
.page-hero{padding:155px 0 84px;background:linear-gradient(110deg,#fff 0%,#fff9f5 62%,#fff0e6 100%);border-bottom:1px solid #eee7e0;position:relative;overflow:hidden}
.page-hero::after{content:"";position:absolute;width:440px;height:440px;border-radius:50%;background:radial-gradient(circle,rgba(241,105,36,.16),rgba(241,105,36,0) 68%);right:-80px;top:-130px}
.page-hero .container{position:relative;z-index:1}
.page-hero .kicker{display:block;margin-bottom:20px}
.page-hero h1{font-family:"Segoe UI",Arial,Helvetica,sans-serif;font-size:clamp(54px,7vw,104px);line-height:.95;letter-spacing:-.065em;max-width:1050px;margin:0 0 28px}
.page-hero h1 span{color:var(--orange)}
.page-hero p{font-size:20px;line-height:1.7;color:#60666e;max-width:800px;margin:0}
.page-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}
.content-section{padding:92px 0;border-bottom:1px solid #eee9e3}
.content-section.alt{background:#f8f6f3}
.content-section.dark-section{background:#111317;color:#fff;border:0}
.content-section.dark-section p{color:#b7bcc3}
.page-section-head{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:end;margin-bottom:50px}
.page-section-head h2{font-family:"Segoe UI",Arial,Helvetica,sans-serif;font-size:clamp(38px,5vw,70px);line-height:1;letter-spacing:-.055em;margin:8px 0 0}
.page-section-head p{font-size:17px;line-height:1.75;color:#686e75;margin:0}
.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.detail-card{border:1px solid #e7e1da;border-radius:24px;padding:30px;background:#fff;min-height:255px;transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}
.detail-card:hover{transform:translateY(-6px);box-shadow:0 22px 45px rgba(17,18,20,.09);border-color:#f1b18f}
.detail-card .num{font-size:11px;color:var(--orange);font-weight:800;letter-spacing:.1em}
.detail-card h3{font-family:"Segoe UI",Arial,Helvetica,sans-serif;font-size:24px;letter-spacing:-.035em;margin:54px 0 12px}
.detail-card p{color:#6a7077;line-height:1.7;margin:0}
.detail-card a{display:inline-flex;margin-top:24px;font-weight:800;color:var(--orange)}
.tech-strip{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:42px}
.tech-strip a{padding:18px 12px;text-align:center;border-radius:16px;border:1px solid #e1dbd5;background:#fff;font-weight:800;transition:.2s ease}
.tech-strip a:hover{background:var(--orange);border-color:var(--orange);color:#fff;transform:translateY(-3px)}
.capability-list{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid #ded9d3}
.capability-row{padding:28px 8px;border-bottom:1px solid #ded9d3;display:grid;grid-template-columns:52px 1fr;gap:18px}
.capability-row:nth-child(odd){border-right:1px solid #ded9d3;padding-right:28px}.capability-row:nth-child(even){padding-left:28px}
.capability-row span{color:var(--orange);font-weight:800}.capability-row h3{margin:0 0 8px;font-size:21px}.capability-row p{margin:0;color:#6d7278;line-height:1.65}
.content-cta{padding:74px 0;background:var(--orange);color:#fff}.content-cta .container{display:flex;align-items:center;justify-content:space-between;gap:30px}.content-cta h2{font-family:"Segoe UI",Arial,Helvetica,sans-serif;font-size:clamp(36px,5vw,66px);letter-spacing:-.055em;line-height:1;margin:0;max-width:760px}.content-cta .btn{background:#111317;color:#fff;border-color:#111317}
.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.article-card{padding:28px;border:1px solid #e4ded7;border-radius:24px;background:#fff}.article-card .tag{color:var(--orange);font-size:10px;letter-spacing:.12em;font-weight:800;text-transform:uppercase}.article-card h3{font-family:"Segoe UI",Arial,Helvetica,sans-serif;font-size:25px;line-height:1.15;letter-spacing:-.035em;margin:28px 0 12px}.article-card p{color:#6c7279;line-height:1.65}.article-card a{font-weight:800;color:var(--orange)}
.contact-page-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}.contact-panel{background:#111317;color:#fff;border-radius:28px;padding:38px}.contact-panel p{color:#b8bdc4;line-height:1.7}.contact-panel .contact-detail{padding:20px 0;border-top:1px solid #303238}.contact-panel .contact-detail small{display:block;color:#9298a0;margin-bottom:6px}.contact-panel .contact-detail strong{font-size:18px}.contact-page-grid .contact-form{box-shadow:none;border:1px solid #e8e1da}
.tech-hero-mark{display:inline-flex;align-items:center;gap:12px;margin-bottom:22px}.tech-hero-mark b{width:46px;height:46px;border-radius:14px;background:#fff0e7;color:var(--orange);display:grid;place-items:center;font-size:17px}.tech-hero-mark span{font-weight:800;letter-spacing:.08em;text-transform:uppercase;font-size:11px;color:#555c64}
@media(max-width:900px){.page-section-head,.contact-page-grid{grid-template-columns:1fr;gap:25px}.detail-grid,.article-grid{grid-template-columns:1fr}.tech-strip{grid-template-columns:repeat(3,1fr)}.capability-list{grid-template-columns:1fr}.capability-row:nth-child(odd){border-right:0;padding-right:8px}.capability-row:nth-child(even){padding-left:8px}.content-cta .container{align-items:flex-start;flex-direction:column}.page-hero{padding-top:125px}}

/* Case studies */
.case-study-card{grid-column:span 2}.muted-card{background:#f4f1ed}.case-study-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:80px;align-items:start}.case-study-meta{position:sticky;top:120px;padding:28px;border:1px solid #e4ded7;border-radius:24px;background:#fff}.case-study-meta dl{margin:20px 0 0}.case-study-meta dl div{padding:16px 0;border-top:1px solid #eee8e1}.case-study-meta dt{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#8a8f95;margin-bottom:6px}.case-study-meta dd{margin:0;font-weight:700;line-height:1.45}.case-study-body{max-width:820px}.case-study-body>.kicker{display:block;margin-top:56px}.case-study-body>.kicker:first-child{margin-top:0}.case-study-body h2{font-family:"Segoe UI",Arial,Helvetica,sans-serif;font-size:clamp(32px,4vw,54px);line-height:1.05;letter-spacing:-.045em;margin:10px 0 20px}.case-study-body>p{font-size:18px;line-height:1.8;color:#60666e}.outcome-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:24px 0 10px}.outcome-grid>div{padding:22px;border:1px solid #e4ded7;border-radius:20px;background:#fff}.outcome-grid strong{font-family:"Segoe UI",Arial,Helvetica,sans-serif;font-size:18px}.outcome-grid p{margin:8px 0 0;color:#6c7279;line-height:1.6}.case-study-outcomes{display:grid;gap:10px;padding-left:22px;color:#4f555c;font-size:17px;line-height:1.7}.case-study-note{margin-top:38px;padding:24px;border-radius:20px;background:#f8f6f3;border:1px solid #e8e1da}.case-study-note p{margin:8px 0 0;color:#686e75;line-height:1.65}@media(max-width:900px){.case-study-card{grid-column:auto}.case-study-layout{grid-template-columns:1fr;gap:35px}.case-study-meta{position:static}.outcome-grid{grid-template-columns:1fr}}

/* V14 content + motion enhancements */
.eco-lines{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none}
.eco-lines path{fill:none;stroke:rgba(243,107,33,.42);stroke-width:1.5;stroke-dasharray:8 12;animation:ecoFlow 16s linear infinite}
.ecosystem-core,.eco{z-index:2}
.ecosystem-core{animation:coreBreathe 7.2s ease-in-out infinite}
.eco{animation:ecoFloat 8.4s ease-in-out infinite;transition:.3s ease}
.eco:nth-of-type(2){animation-delay:-.8s}.eco:nth-of-type(3){animation-delay:-1.6s}.eco:nth-of-type(4){animation-delay:-2.4s}.eco:nth-of-type(5){animation-delay:-3.2s}.eco:nth-of-type(6){animation-delay:-4s}
.eco:hover{transform:translateY(-4px) scale(1.04);border-color:rgba(243,107,33,.7);box-shadow:0 0 0 4px rgba(243,107,33,.08),0 16px 32px rgba(0,0,0,.28)}
.ecosystem-map::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 18% 22%,rgba(255,255,255,.26) 0 1px,transparent 2px),radial-gradient(circle at 72% 35%,rgba(255,255,255,.2) 0 1px,transparent 2px),radial-gradient(circle at 40% 78%,rgba(255,255,255,.18) 0 1px,transparent 2px);background-size:95px 95px,125px 125px,150px 150px;animation:dotDrift 28s linear infinite;opacity:.45;pointer-events:none}
.photo-pattern{overflow:hidden}
.capability-float{position:absolute;width:56%;min-height:145px;border-radius:26px;padding:24px 26px;color:#fff;background:linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.055));border:1px solid rgba(255,255,255,.17);box-shadow:0 24px 50px rgba(0,0,0,.18);backdrop-filter:blur(14px);z-index:2}
.capability-float small{display:block;color:#ffb183;font-size:9px;letter-spacing:.18em;font-weight:800;margin-bottom:12px}.capability-float strong{display:block;font-size:25px;font-family:"Segoe UI",Arial,Helvetica,sans-serif;letter-spacing:-.03em}.capability-float span{display:block;margin-top:9px;color:#d6d8dc;font-size:11px;line-height:1.55;max-width:260px}.capability-float i{position:absolute;width:42px;height:3px;border-radius:99px;background:var(--orange);right:24px;top:28px;box-shadow:0 0 18px rgba(243,107,33,.6)}
.capability-float-one{left:10%;top:20%;transform:rotate(-6deg);animation:floatCardOne 9s ease-in-out infinite}
.capability-float-two{right:7%;bottom:20%;transform:rotate(8deg);animation:floatCardTwo 10s ease-in-out infinite}
.process-chip-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.process-chip{padding:24px;border:1px solid var(--line);border-radius:22px;background:#fff}.process-chip span{font-size:10px;color:var(--orange);font-weight:800}.process-chip strong{display:block;font-size:19px;margin:22px 0 7px;font-family:"Segoe UI",Arial,Helvetica,sans-serif}.process-chip p{margin:0;color:var(--muted);font-size:12px;line-height:1.65}.business-processes{background:#fff}.footer-contact{display:flex;flex-direction:column;gap:5px;margin-top:16px;color:#8f949b;font-size:11px;max-width:340px}.footer-contact strong{color:#d4d6d9;font-size:11px}.footer-contact a{color:#aeb2b8}.career-note{font-size:13px;color:var(--muted);margin-top:12px}.career-note a{color:var(--orange);font-weight:700}.legal-copy{max-width:850px}.legal-copy h2{font-size:26px;margin:32px 0 10px}.legal-copy p{color:var(--muted);line-height:1.8}.legal-copy a{color:var(--orange);font-weight:700}.legal-note{padding:18px;border:1px solid var(--line);border-radius:16px;background:#faf9f7}.sitemap-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.sitemap-grid>div{display:flex;flex-direction:column;gap:10px;padding:24px;border:1px solid var(--line);border-radius:20px}.sitemap-grid h3{font-size:20px;margin-bottom:8px}.sitemap-grid a{color:var(--muted)}.sitemap-grid a:hover{color:var(--orange)}
@keyframes ecoFlow{to{stroke-dashoffset:-200}}
@keyframes coreBreathe{0%,100%{box-shadow:0 0 0 20px rgba(243,107,33,.08),0 0 60px rgba(243,107,33,.26);transform:translate(-50%,-50%) scale(1)}50%{box-shadow:0 0 0 28px rgba(243,107,33,.055),0 0 92px rgba(243,107,33,.42);transform:translate(-50%,-50%) scale(1.025)}}
@keyframes ecoFloat{0%,100%{margin-top:0}50%{margin-top:-7px}}
@keyframes dotDrift{to{background-position:95px 45px,-125px 80px,150px -90px}}
@keyframes floatCardOne{0%,100%{transform:rotate(-6deg) translateY(0)}50%{transform:rotate(-4.5deg) translateY(-10px)}}
@keyframes floatCardTwo{0%,100%{transform:rotate(8deg) translateY(0)}50%{transform:rotate(6.5deg) translateY(9px)}}
@media(max-width:780px){.process-chip-grid,.sitemap-grid{grid-template-columns:1fr}.capability-float{width:68%;padding:18px}.capability-float strong{font-size:20px}.capability-float span{font-size:10px}}
@media(prefers-reduced-motion:reduce){.eco-lines path,.ecosystem-core,.eco,.ecosystem-map::after,.capability-float-one,.capability-float-two{animation:none!important}}

.core-portfolio{background:#fff}
.core-portfolio-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.core-portfolio-card{padding:26px;border:1px solid var(--line);border-radius:22px;background:#fff;transition:.3s ease;min-height:260px;display:flex;flex-direction:column}
.core-portfolio-card:hover{transform:translateY(-5px);box-shadow:0 20px 44px rgba(0,0,0,.07);border-color:#d7d1c8}
.core-portfolio-card>span{font-size:10px;color:var(--orange);font-weight:800}
.core-portfolio-card h3{font-size:22px;margin:34px 0 10px}
.core-portfolio-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.7}
.core-portfolio-card a{margin-top:auto;padding-top:22px;font-size:12px;font-weight:800}
@media(max-width:1050px){.core-portfolio-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:780px){.core-portfolio-grid{grid-template-columns:1fr}}


/* Core portfolio flip cards */
/* Modern Oracle portfolio cards */
.core-flip-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;perspective:1400px;align-items:stretch}
.flip-card{position:relative;height:308px;background:transparent}
.flip-card-inner{position:relative;width:100%;height:100%;transition:transform .85s cubic-bezier(.2,.75,.2,1),filter .35s ease;transform-style:preserve-3d}
.flip-card:hover .flip-card-inner,.flip-card:focus-within .flip-card-inner{transform:rotateY(180deg)}
.flip-card:hover .flip-card-inner{filter:drop-shadow(0 18px 36px rgba(15,23,42,.14))}
.flip-card-face{position:absolute;inset:0;backface-visibility:hidden;border-radius:28px;overflow:hidden}
.service-front{border:1px solid rgba(233,104,33,.12);background:linear-gradient(180deg,#fffdfb 0%,#fff7f1 100%);box-shadow:0 12px 28px rgba(15,23,42,.06)}
.service-front::after{content:'';position:absolute;left:0;right:0;bottom:0;height:88px;background:linear-gradient(180deg,rgba(255,255,255,0),rgba(255,255,255,.92) 30%,#fff8f3 100%)}
.service-back{transform:rotateY(180deg);display:flex;flex-direction:column;padding:24px 24px 22px;background:radial-gradient(circle at 78% 14%,rgba(255,160,102,.28),transparent 22%),linear-gradient(155deg,#121317 0%,#23170f 50%,#f36c21 170%);color:#fff;box-shadow:0 18px 42px rgba(15,23,42,.16)}
.service-back span{font-size:11px;font-weight:800;letter-spacing:.12em;color:#ffd5bf;text-transform:uppercase}
.service-back h3{font-size:24px;line-height:1.1;margin:16px 0 10px;color:#fff}
.service-back p{font-size:13px;line-height:1.68;color:rgba(255,255,255,.82);margin:0}
.service-back a{margin-top:auto;padding-top:18px;color:#fff;font-weight:800;font-size:13px}
.service-art{position:relative;height:100%;padding:22px;display:flex;flex-direction:column;justify-content:flex-end}
.service-art .eyebrow{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#bf6d34;position:absolute;left:22px;top:18px;margin:0}
.service-art h3{font-size:20px;line-height:1.08;margin:0;position:relative;z-index:2;color:#1c140e}
.service-art p{display:none}
.art-window{position:absolute;left:18px;right:18px;top:50px;height:164px;border-radius:22px;background:linear-gradient(135deg,#111418 0%,#26170f 58%,#342219 100%);border:1px solid rgba(255,255,255,.08);overflow:hidden;box-shadow:0 18px 30px rgba(15,23,42,.14),inset 0 1px 0 rgba(255,255,255,.05);transition:transform .45s ease,box-shadow .45s ease}
.flip-card:hover .art-window{transform:translateY(-4px) scale(1.01);box-shadow:0 26px 34px rgba(15,23,42,.18),inset 0 1px 0 rgba(255,255,255,.08)}
.art-window:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 20% 15%,rgba(243,108,33,.34),transparent 24%),radial-gradient(circle at 82% 82%,rgba(255,182,135,.18),transparent 22%),radial-gradient(rgba(255,255,255,.08) 1px,transparent 1px);background-size:auto,auto,30px 30px;opacity:.9}
.art-window:after{content:'';position:absolute;inset:14px;border-radius:18px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.02));backdrop-filter:blur(1px)}
.art-badge{position:absolute;left:18px;top:18px;padding:8px 13px;border-radius:999px;background:rgba(255,255,255,.12);backdrop-filter:blur(10px);color:#fff;font-weight:800;font-size:12px;z-index:2;border:1px solid rgba(255,255,255,.08)}
.saas-front .art-lines,.paas-front .art-nodes,.analytics-front .art-bars,.ebs-front .art-grid{position:absolute;inset:0;z-index:2}
.saas-front .art-lines:before,.saas-front .art-lines:after,.paas-front .art-nodes:before,.paas-front .art-nodes:after,.analytics-front .art-bars:before,.analytics-front .art-bars:after,.ebs-front .art-grid:before,.ebs-front .art-grid:after{content:'';position:absolute}
.saas-front .art-lines:before{left:34px;right:92px;top:68px;height:16px;border-radius:999px;background:linear-gradient(90deg,rgba(255,255,255,.16),rgba(255,255,255,.42));box-shadow:0 26px 0 rgba(255,255,255,.12);animation:slideGlow 7.2s ease-in-out infinite}
.saas-front .art-lines:after{left:34px;right:116px;top:122px;height:2px;background:linear-gradient(90deg,rgba(243,108,33,.12),rgba(243,108,33,.78),rgba(243,108,33,.12));box-shadow:0 -26px 0 rgba(255,255,255,.1)}
.saas-front .art-chip{position:absolute;right:28px;top:62px;width:92px;height:92px;border-radius:28px;background:linear-gradient(145deg,#f36c21,#ffb781);box-shadow:0 18px 34px rgba(243,108,33,.34);z-index:3;animation:floatY 8.8s ease-in-out infinite}
.paas-front .art-nodes:before{left:58px;top:54px;width:18px;height:18px;border-radius:50%;background:#f36c21;box-shadow:104px -6px 0 #ffb07c,174px 84px 0 rgba(243,108,33,.5),44px 112px 0 #fff}
.paas-front .art-nodes:after{left:64px;top:62px;width:178px;height:100px;border-left:2px solid rgba(255,255,255,.22);border-bottom:2px solid rgba(255,255,255,.18);transform:skewX(-24deg)}
.paas-front .art-orbit{position:absolute;right:42px;top:50px;width:76px;height:76px;border-radius:50%;border:2px dashed rgba(255,186,146,.5);z-index:2;animation:spinSlow 18s linear infinite}
.analytics-front .art-bars:before{left:46px;bottom:44px;width:28px;height:48px;border-radius:12px 12px 0 0;background:linear-gradient(180deg,#ffd8c1,#f3ae7d);box-shadow:44px -26px 0 rgba(255,197,158,.92),88px -48px 0 rgba(243,108,33,.95),132px -8px 0 rgba(255,214,191,.88);animation:barsRise 6.8s ease-in-out infinite}
.analytics-front .art-bars:after{left:38px;right:40px;bottom:46px;height:3px;background:rgba(255,255,255,.42);border-radius:999px;box-shadow:0 -1px 0 rgba(0,0,0,.08)}
.analytics-front .art-trend{position:absolute;left:48px;top:84px;width:150px;height:72px;border-left:2px solid transparent;border-bottom:3px solid rgba(255,255,255,.84);transform:skewX(-38deg);z-index:2;filter:drop-shadow(0 0 8px rgba(243,108,33,.18))}
.ebs-front .art-grid:before{left:38px;right:38px;top:46px;bottom:28px;background:repeating-linear-gradient(0deg,rgba(255,255,255,.08) 0 1px,transparent 1px 36px),repeating-linear-gradient(90deg,rgba(255,255,255,.08) 0 1px,transparent 1px 46px);border-radius:12px}
.ebs-front .art-grid:after{right:32px;top:58px;width:102px;height:102px;border-radius:28px;background:linear-gradient(160deg,#f36c21,#ffbb88);box-shadow:0 22px 34px rgba(243,108,33,.34);animation:floatY 9.4s ease-in-out infinite}
.ebs-front .art-dot{display:none}
.footer-grid,.footer-top{display:grid;grid-template-columns:1.7fr repeat(3,1fr);gap:50px;padding-bottom:54px}
.footer-grid>div:not(:first-child),.footer-top>div:not(.footer-brand){display:flex;flex-direction:column;gap:9px}
.footer-brand{display:inline-block;font-family:"Segoe UI",Arial,Helvetica,sans-serif;font-size:18px;font-weight:800;letter-spacing:-.02em;color:#fff;margin-bottom:16px}
.footer-grid p,.footer-top p{max-width:360px;color:#8f949b;font-size:12px;line-height:1.7;margin:0 0 10px}
.footer-grid h4,.footer-top h4{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#777c83;margin:0 0 14px}
.footer-grid a,.footer-top a{font-size:12px;color:#d4d6d9}
.footer-grid a:hover,.footer-top a:hover{color:#ff9154}
@keyframes floatY{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes slideGlow{0%,100%{transform:translateX(0)}50%{transform:translateX(10px)}}
@keyframes barsRise{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes spinSlow{to{transform:rotate(360deg)}}
@media (max-width:1180px){.core-flip-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:780px){.core-flip-grid{grid-template-columns:1fr}.flip-card{height:292px}.footer-grid,.footer-top{grid-template-columns:1fr 1fr}.footer-grid>div:first-child,.footer-top>div:first-child{grid-column:1/-1}}
@media (max-width:560px){.footer-grid,.footer-top{grid-template-columns:1fr}}


/* V18: robust service-card flip interaction */
.core-service-card{cursor:pointer;perspective:1500px}
.core-service-card .flip-card-inner{-webkit-transform-style:preserve-3d;transform-style:preserve-3d;will-change:transform}
.core-service-card .flip-front{-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:rotateY(0deg);z-index:2}
.core-service-card .flip-back{-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:rotateY(180deg);z-index:1}
.core-service-card:hover .flip-card-inner,.core-service-card:focus-within .flip-card-inner{transform:rotateY(180deg)}
.core-service-card:hover .flip-front{pointer-events:none}
.core-service-card:hover .flip-back{z-index:3}
.service-back::before{content:'SERVICE DETAILS';display:block;font-size:9px;letter-spacing:.18em;font-weight:800;color:#ffb68b;margin-bottom:2px}
.service-back p{max-width:100%;font-size:13px;line-height:1.62}


/* V19: independent two-face flip — avoids mirrored front-face rendering */
.core-service-card{perspective:1400px;overflow:visible}
.core-service-card .flip-card-inner{transform:none!important;transform-style:flat!important;position:relative;width:100%;height:100%}
.core-service-card .flip-card-face{transition:transform .72s cubic-bezier(.2,.75,.2,1),opacity .28s ease,box-shadow .35s ease;transform-style:preserve-3d;-webkit-backface-visibility:hidden;backface-visibility:hidden}
.core-service-card .flip-front{transform:rotateY(0deg)!important;opacity:1;z-index:2}
.core-service-card .flip-back{transform:rotateY(-180deg)!important;opacity:0;z-index:1;pointer-events:none}
.core-service-card:hover .flip-front,.core-service-card:focus-within .flip-front{transform:rotateY(180deg)!important;opacity:0;z-index:1}
.core-service-card:hover .flip-back,.core-service-card:focus-within .flip-back{transform:rotateY(0deg)!important;opacity:1;z-index:3;pointer-events:auto}
.core-service-card:hover .flip-card-inner,.core-service-card:focus-within .flip-card-inner{transform:none!important;filter:none!important}
.core-service-card .service-back{display:flex!important;visibility:visible!important}


/* --- V20 hero motion + Oracle solutions detail pages --- */
.live i{animation:livePulse 4.2s ease-in-out infinite}
@keyframes livePulse{0%,100%{transform:scale(1);box-shadow:0 0 0 0 rgba(105,224,143,.18)}50%{transform:scale(1.18);box-shadow:0 0 0 8px rgba(105,224,143,0)}}

.visual-panel{isolation:isolate}
.visual-panel::before{opacity:.82;animation:gridPulse 12s ease-in-out infinite}
@keyframes gridPulse{0%,100%{opacity:.72}50%{opacity:.9}}
.core-node{
  box-shadow:0 0 0 10px rgba(243,107,33,.06),0 0 38px rgba(243,107,33,.18)!important;
  animation:coreGlow 8.8s ease-in-out infinite;
}
.core-ring{border-color:rgba(255,255,255,.16)!important;opacity:.7}
@keyframes coreGlow{0%,100%{box-shadow:0 0 0 10px rgba(243,107,33,.05),0 0 28px rgba(243,107,33,.15)}50%{box-shadow:0 0 0 13px rgba(243,107,33,.07),0 0 42px rgba(243,107,33,.22)}}
.hero-visual .orbit,
.hero-visual .metric-card{opacity:0;will-change:transform,opacity}
.hero-visual.hero-active .orbit,
.hero-visual.hero-active .metric-card{opacity:1}
.hero-visual.hero-active .orbit-1{animation:deployOrbit1 1.85s cubic-bezier(.16,1,.3,1) .16s both, floatNodeA 9.5s ease-in-out 2.2s infinite}
.hero-visual.hero-active .orbit-2{animation:deployOrbit2 1.85s cubic-bezier(.16,1,.3,1) .34s both, floatNodeB 10s ease-in-out 2.35s infinite}
.hero-visual.hero-active .orbit-3{animation:deployOrbit3 1.85s cubic-bezier(.16,1,.3,1) .52s both, floatNodeB 9.8s ease-in-out 2.5s infinite}
.hero-visual.hero-active .orbit-4{animation:deployOrbit4 1.85s cubic-bezier(.16,1,.3,1) .70s both, floatNodeA 10.4s ease-in-out 2.65s infinite}
.hero-visual.hero-active .metric-a{animation:deployMetricA 1.35s cubic-bezier(.16,1,.3,1) .96s both}
.hero-visual.hero-active .metric-b{animation:deployMetricB 1.35s cubic-bezier(.16,1,.3,1) 1.12s both}
.hero-visual.hero-active .flow-lines path{animation:dash 18s linear infinite, fadeLines 1.9s ease .72s both}
@keyframes fadeLines{from{opacity:0}to{opacity:1}}
@keyframes deployOrbit1{from{opacity:0;transform:translate(170px,118px) scale(.28)}to{opacity:1;transform:translate(0,0) scale(1)}}
@keyframes deployOrbit2{from{opacity:0;transform:translate(-170px,118px) scale(.28)}to{opacity:1;transform:translate(0,0) scale(1)}}
@keyframes deployOrbit3{from{opacity:0;transform:translate(170px,-112px) scale(.28)}to{opacity:1;transform:translate(0,0) scale(1)}}
@keyframes deployOrbit4{from{opacity:0;transform:translate(-170px,-112px) scale(.28)}to{opacity:1;transform:translate(0,0) scale(1)}}
@keyframes deployMetricA{from{opacity:0;transform:translate(145px,60px) scale(.75)}to{opacity:1;transform:translate(0,0) scale(1)}}
@keyframes deployMetricB{from{opacity:0;transform:translate(-145px,-60px) scale(.75)}to{opacity:1;transform:translate(0,0) scale(1)}}
@keyframes floatNodeA{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes floatNodeB{0%,100%{transform:translateY(0)}50%{transform:translateY(7px)}}
@media(max-width:780px){
  .hero-visual.hero-active .orbit-1,.hero-visual.hero-active .orbit-2,.hero-visual.hero-active .orbit-3,.hero-visual.hero-active .orbit-4{animation-duration:1.45s}
  @keyframes deployOrbit1{from{opacity:0;transform:translate(120px,84px) scale(.32)}to{opacity:1;transform:translate(0,0) scale(1)}}
  @keyframes deployOrbit2{from{opacity:0;transform:translate(-120px,84px) scale(.32)}to{opacity:1;transform:translate(0,0) scale(1)}}
  @keyframes deployOrbit3{from{opacity:0;transform:translate(120px,-76px) scale(.32)}to{opacity:1;transform:translate(0,0) scale(1)}}
  @keyframes deployOrbit4{from{opacity:0;transform:translate(-120px,-76px) scale(.32)}to{opacity:1;transform:translate(0,0) scale(1)}}
}

.solution-hero{padding-top:132px;padding-bottom:42px;background:radial-gradient(circle at 80% 12%,rgba(243,107,33,.12),transparent 22%),linear-gradient(180deg,#fff 0%,#fbfaf8 100%)}
.solution-hero h1{font-size:clamp(40px,5vw,64px);line-height:1.02}
.solution-hero h1 span{color:#545960;font-weight:500}
.solution-hero p{max-width:1120px;color:var(--muted);font-size:18px;line-height:1.65;margin:22px 0 0}
.solution-showcase{padding:28px 0 100px}
.solution-panel{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;border-radius:32px;overflow:hidden;background:#fff;border:1px solid #ede7df;box-shadow:0 20px 46px rgba(25,25,25,.07)}
.solution-copy{padding:34px 36px 36px;background:#fff}
.solution-copy .kicker{font-size:13px;letter-spacing:.18em;margin-bottom:22px}
.solution-copy h2{font-size:clamp(34px,4.3vw,56px);font-weight:500;line-height:1.05;margin:0 0 14px}
.solution-copy p{margin:0;color:#48505a;font-size:16px;line-height:1.68}
.solution-copy .btn{margin-top:26px}
.solution-visual{position:relative;min-height:480px;background:linear-gradient(140deg,#0e1115 0%,#1d232b 55%,#2c170d 100%);overflow:hidden}
.solution-visual::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 75% 22%,rgba(243,107,33,.14),transparent 18%),radial-gradient(circle at 24% 75%,rgba(255,255,255,.12),transparent 10%),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px);background-size:auto,auto,40px 40px,40px 40px;opacity:.95}
.solution-visual::after{content:'';position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,rgba(243,107,33,.14),transparent 30%)}
.solution-visual .solution-badge{position:absolute;left:32px;top:30px;z-index:2;background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:10px 16px;font-size:12px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;backdrop-filter:blur(8px)}
.solution-visual .solution-card{position:absolute;z-index:2;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14);border-radius:22px;box-shadow:0 18px 30px rgba(0,0,0,.18);backdrop-filter:blur(10px)}
.solution-visual .solution-card.small{padding:18px 18px 16px}
.solution-visual .solution-card.small b{display:block;font-size:28px;line-height:1;color:#fff}
.solution-visual .solution-card.small span{display:block;font-size:12px;color:#d7dce4;margin-top:8px}
.solution-visual .solution-card.main{left:8%;right:8%;bottom:8%;min-height:220px;padding:34px}
.solution-visual .solution-card.main h3{font-size:48px;line-height:.95;color:#fff;font-weight:600;margin:0 0 14px}
.solution-visual .solution-card.main p{max-width:420px;color:#d6dbe2;font-size:16px;line-height:1.6;margin:0}
.solution-visual .solution-card.main .mini-line{margin-top:18px;display:flex;gap:10px;flex-wrap:wrap}
.solution-visual .solution-card.main .mini-line span{padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);font-size:12px;color:#f2f4f7}
.solution-visual .orb{position:absolute;width:140px;height:140px;border-radius:30px;background:linear-gradient(180deg,#ff8e48,#f36b21);box-shadow:0 22px 34px rgba(243,107,33,.25)}
.solution-visual .line{position:absolute;height:2px;background:linear-gradient(90deg,rgba(243,107,33,.6),rgba(255,255,255,.18));transform-origin:left center}
.solution-visual.visual-saas .orb{right:14%;top:20%;animation:floatOrb 9.2s ease-in-out infinite}
.solution-visual.visual-saas .line.a{left:14%;top:34%;width:52%;opacity:.85}
.solution-visual.visual-saas .line.b{left:14%;top:41%;width:38%;opacity:.5}
.solution-visual.visual-saas .line.c{left:14%;top:48%;width:46%;opacity:.35}
.solution-visual.visual-paas .orb{right:14%;top:23%;width:124px;height:124px;border-radius:50%;background:linear-gradient(180deg,#ffb078,#f36b21);animation:floatOrb 9.6s ease-in-out infinite}
.solution-visual.visual-paas .triangle{position:absolute;left:14%;top:24%;width:34%;height:34%;border-left:3px solid rgba(255,210,183,.65);border-bottom:3px solid rgba(255,210,183,.65);transform:skewX(-24deg)}
.solution-visual.visual-paas .circle{position:absolute;right:19%;top:26%;width:150px;height:150px;border-radius:50%;border:3px dashed rgba(255,210,183,.55)}
.solution-visual.visual-paas .dot{position:absolute;border-radius:50%;background:#fff3e9}
.solution-visual.visual-paas .dot.one{left:20%;top:18%;width:22px;height:22px;background:#f36b21}
.solution-visual.visual-paas .dot.two{right:10%;bottom:20%;width:24px;height:24px;background:#ffb078}
.solution-visual.visual-paas .dot.three{left:43%;bottom:22%;width:22px;height:22px;background:#1d1f24}
.solution-visual.visual-analytics .barset{position:absolute;left:14%;right:14%;top:28%;height:42%}
.solution-visual.visual-analytics .bar{position:absolute;bottom:38px;width:46px;border-radius:18px 18px 0 0;background:linear-gradient(180deg,#f9d0bb,#f36b21);animation:barPulse 8.2s ease-in-out infinite}
.solution-visual.visual-analytics .bar:nth-child(1){left:5%;height:32%;animation-delay:.1s}
.solution-visual.visual-analytics .bar:nth-child(2){left:24%;height:52%;animation-delay:.3s}
.solution-visual.visual-analytics .bar:nth-child(3){left:43%;height:74%;animation-delay:.5s}
.solution-visual.visual-analytics .bar:nth-child(4){left:62%;height:46%;animation-delay:.2s}
.solution-visual.visual-analytics .bar:nth-child(5){left:81%;height:66%;animation-delay:.4s}
.solution-visual.visual-analytics .axis{position:absolute;left:12%;right:16%;bottom:36px;height:6px;background:rgba(255,255,255,.45);clip-path:polygon(0 0,98% 0,95% 100%,0 100%)}
.solution-visual.visual-ebs .grid{position:absolute;left:14%;top:20%;width:58%;height:54%;background:linear-gradient(90deg,rgba(255,255,255,.09) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.09) 1px,transparent 1px);background-size:84px 84px}
.solution-visual.visual-ebs .orb{right:13%;top:26%;width:138px;height:138px;animation:floatOrb 8.8s ease-in-out infinite}
.solution-visual.visual-ebs .pulse{position:absolute;inset:auto 18% 20% auto;width:180px;height:180px;border-radius:30px;border:1px solid rgba(255,255,255,.12);box-shadow:0 0 0 16px rgba(243,107,33,.08)}
@keyframes floatOrb{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes barPulse{0%,100%{transform:scaleY(1)}50%{transform:scaleY(1.08)}}

@media(max-width:980px){
  .solution-panel{grid-template-columns:1fr}
  .solution-visual{min-height:360px}
}
@media(max-width:780px){
  .solution-hero{padding-top:108px}
  .solution-hero p{font-size:16px}
  .solution-copy{padding:26px 24px 28px}
  .solution-copy h2{font-size:38px}
  .solution-visual .solution-card.main{left:16px;right:16px;bottom:16px;padding:24px;min-height:180px}
  .solution-visual .solution-card.main h3{font-size:34px}
  .solution-visual .solution-card.main p{font-size:14px}
  .solution-visual .orb{width:98px;height:98px;border-radius:24px}
}

.core-service-card{height:330px}
.service-back a{padding-top:14px}
@media(max-width:780px){.core-service-card{height:312px}}


/* --- V22 richer Oracle ecosystem motion --- */
.ecosystem-map{isolation:isolate}
.ecosystem-map::before{animation:ecoGridTwinkle 9s ease-in-out infinite}
.ecosystem-map::after{animation:dotDrift 32s linear infinite,ecoDustPulse 10s ease-in-out infinite}
.ecosystem-core{overflow:visible;animation:coreBreatheSoft 9s ease-in-out infinite!important}
.ecosystem-core::before,.ecosystem-core::after{content:'';position:absolute;left:50%;top:50%;border-radius:50%;pointer-events:none;z-index:-1}
.ecosystem-core::before{width:188px;height:188px;transform:translate(-50%,-50%);border:1px solid rgba(243,107,33,.16);animation:ecoHalo 8.5s ease-in-out infinite}
.ecosystem-core::after{width:224px;height:224px;transform:translate(-50%,-50%);border:1px dashed rgba(255,255,255,.1);animation:ecoRingRotate 28s linear infinite}

/* Initial state: systems are gathered around the Oracle core */
.ecosystem-map:not(.ecosystem-active) .eco{opacity:0}
.ecosystem-map.ecosystem-active .eco{opacity:1}
.ecosystem-map.ecosystem-active .eco-1{animation:ecoDeploy1 2.2s cubic-bezier(.16,1,.3,1) .12s both,ecoFloat 10s ease-in-out 2.7s infinite}
.ecosystem-map.ecosystem-active .eco-2{animation:ecoDeploy2 2.2s cubic-bezier(.16,1,.3,1) .28s both,ecoFloat 10.8s ease-in-out 2.9s infinite}
.ecosystem-map.ecosystem-active .eco-3{animation:ecoDeploy3 2.2s cubic-bezier(.16,1,.3,1) .44s both,ecoFloat 11.2s ease-in-out 3.1s infinite}
.ecosystem-map.ecosystem-active .eco-4{animation:ecoDeploy4 2.2s cubic-bezier(.16,1,.3,1) .60s both,ecoFloat 10.4s ease-in-out 3.3s infinite}
.ecosystem-map.ecosystem-active .eco-5{animation:ecoDeploy5 2.2s cubic-bezier(.16,1,.3,1) .76s both,ecoFloat 11s ease-in-out 3.5s infinite}
.ecosystem-map.ecosystem-active .eco-6{animation:ecoDeploy6 2.2s cubic-bezier(.16,1,.3,1) .92s both,ecoFloat 10.6s ease-in-out 3.7s infinite}

.eco-lines path{stroke-dasharray:1!important;stroke-dashoffset:1;opacity:.72;animation:none!important}
.ecosystem-map.ecosystem-active .eco-lines path{animation:ecoDraw 2.8s cubic-bezier(.2,.75,.2,1) forwards,ecoFlowV22 18s linear 3.1s infinite!important}
.ecosystem-map.ecosystem-active .eco-lines path:nth-child(2){animation-delay:.12s,3.2s!important}
.ecosystem-map.ecosystem-active .eco-lines path:nth-child(3){animation-delay:.24s,3.3s!important}
.ecosystem-map.ecosystem-active .eco-lines path:nth-child(4){animation-delay:.36s,3.4s!important}
.ecosystem-map.ecosystem-active .eco-lines path:nth-child(5){animation-delay:.48s,3.5s!important}
.ecosystem-map.ecosystem-active .eco-lines path:nth-child(6){animation-delay:.60s,3.6s!important}
.eco-signals{opacity:0;transition:opacity 1.2s ease 2.9s}
.ecosystem-map.ecosystem-active .eco-signals{opacity:1}
.eco-signals circle{fill:#ff9a5e;filter:drop-shadow(0 0 7px rgba(243,107,33,.9))}

.eco{transition:border-color .35s ease,box-shadow .35s ease,background .35s ease!important}
.eco:hover{background:#34373d;transform:translateY(-5px) scale(1.045)!important;border-color:rgba(243,107,33,.72);box-shadow:0 0 0 4px rgba(243,107,33,.08),0 18px 38px rgba(0,0,0,.32),0 0 22px rgba(243,107,33,.12)}

@keyframes ecoDeploy1{0%{opacity:0;transform:translate(188px,150px) scale(.28);filter:blur(6px)}55%{opacity:1}100%{opacity:1;transform:translate(0,0) scale(1);filter:blur(0)}}
@keyframes ecoDeploy2{0%{opacity:0;transform:translate(-178px,132px) scale(.28);filter:blur(6px)}55%{opacity:1}100%{opacity:1;transform:translate(0,0) scale(1);filter:blur(0)}}
@keyframes ecoDeploy3{0%{opacity:0;transform:translate(205px,-126px) scale(.28);filter:blur(6px)}55%{opacity:1}100%{opacity:1;transform:translate(0,0) scale(1);filter:blur(0)}}
@keyframes ecoDeploy4{0%{opacity:0;transform:translate(-175px,-143px) scale(.28);filter:blur(6px)}55%{opacity:1}100%{opacity:1;transform:translate(0,0) scale(1);filter:blur(0)}}
@keyframes ecoDeploy5{0%{opacity:0;transform:translate(0,188px) scale(.28);filter:blur(6px)}55%{opacity:1}100%{opacity:1;transform:translate(0,0) scale(1);filter:blur(0)}}
@keyframes ecoDeploy6{0%{opacity:0;transform:translate(0,-182px) scale(.28);filter:blur(6px)}55%{opacity:1}100%{opacity:1;transform:translate(0,0) scale(1);filter:blur(0)}}
@keyframes ecoDraw{0%{stroke-dashoffset:1;opacity:.1}100%{stroke-dashoffset:0;opacity:.72}}
@keyframes ecoFlowV22{0%{stroke-dashoffset:0}100%{stroke-dashoffset:-2}}
@keyframes coreBreatheSoft{0%,100%{box-shadow:0 0 0 16px rgba(243,107,33,.055),0 0 44px rgba(243,107,33,.22);transform:translate(-50%,-50%) scale(1)}50%{box-shadow:0 0 0 22px rgba(243,107,33,.035),0 0 68px rgba(243,107,33,.30);transform:translate(-50%,-50%) scale(1.015)}}
@keyframes ecoHalo{0%,100%{opacity:.35;transform:translate(-50%,-50%) scale(.94)}50%{opacity:.75;transform:translate(-50%,-50%) scale(1.05)}}
@keyframes ecoRingRotate{to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes ecoGridTwinkle{0%,100%{opacity:.76}50%{opacity:.98}}
@keyframes ecoDustPulse{0%,100%{opacity:.32}50%{opacity:.5}}

@media(max-width:780px){
  .ecosystem-map.ecosystem-active .eco-1,.ecosystem-map.ecosystem-active .eco-2,.ecosystem-map.ecosystem-active .eco-3,.ecosystem-map.ecosystem-active .eco-4,.ecosystem-map.ecosystem-active .eco-5,.ecosystem-map.ecosystem-active .eco-6{animation-duration:1.7s,9s}
  .ecosystem-core::before{width:154px;height:154px}.ecosystem-core::after{width:182px;height:182px}
}
@media(prefers-reduced-motion:reduce){
  .ecosystem-map .eco{opacity:1!important;filter:none!important;transform:none!important}
  .eco-lines path{stroke-dashoffset:0!important;animation:none!important}
  .eco-signals{display:none!important}
  .ecosystem-core::before,.ecosystem-core::after{animation:none!important}
}


/* ===== V24 responsive production pass ===== */

/* Logo sizing */
.brand{
  flex:0 0 auto!important;
  width:auto!important;
  min-width:0!important;
  height:auto!important;
  overflow:visible!important;
}
.brand img{
  width:245px!important;
  height:auto!important;
  max-height:70px!important;
  object-fit:contain;
  object-position:left center;
}

/* Tablet navigation: switch to mobile menu earlier so mega-nav never crushes */
@media (max-width: 1120px){
  .nav-wrap{height:82px}
  .brand img{width:215px!important;max-height:62px!important}
  .nav-toggle{display:block!important}
  .nav{
    display:none!important;
    position:absolute;
    top:82px;
    left:24px;
    right:24px;
    max-height:calc(100vh - 104px);
    overflow:auto;
    padding:18px;
    background:rgba(255,255,255,.98);
    border:1px solid #e7e2dc;
    border-radius:20px;
    box-shadow:0 22px 54px rgba(0,0,0,.14);
    flex-direction:column;
    align-items:stretch;
    gap:8px;
  }
  .nav.open{display:flex!important}
  .nav-item{width:100%}
  .nav-link{
    width:100%;
    display:flex!important;
    align-items:center;
    justify-content:space-between;
    padding:12px 4px;
  }
  .nav .btn{width:100%;margin-top:6px}
  .dropdown-menu,
  .mega-menu{
    position:static!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    transform:none!important;
    box-shadow:none!important;
    border:0!important;
    border-radius:14px!important;
    margin-top:4px!important;
    display:none!important;
    opacity:1!important;
    visibility:visible!important;
  }
  .nav-item.open > .dropdown-menu,
  .nav-item.open > .mega-menu{display:block!important}
  .mega-menu{grid-template-columns:1fr!important}
  .mega-sidebar{padding:12px!important}
  .mega-content{display:none!important}
  .mega-tab{font-size:13px}
  .dropdown-menu a{padding:11px 12px}
}

/* Tablet content */
@media (max-width: 1024px){
  .hero-grid,
  .outcomes-grid,
  .ecosystem-grid,
  .about-grid,
  .contact-grid,
  .solution-panel{
    grid-template-columns:1fr!important;
  }
  .hero-grid{gap:28px}
  .hero-visual{min-height:500px}
  .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .core-flip-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .insight-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .section-head{align-items:flex-start}
  .ecosystem-map{min-height:500px}
}

/* Mobile */
@media (max-width: 720px){
  .container{width:min(calc(100% - 28px),var(--max))}
  .nav-wrap{height:72px}
  .brand img{width:176px!important;max-height:52px!important}
  .nav{top:72px;left:14px;right:14px}
  .hero{padding-top:96px}
  .hero h1{font-size:clamp(42px,13vw,56px)!important}
  .hero-lead{font-size:16px}
  .hero-actions{display:grid;grid-template-columns:1fr}
  .hero-actions .btn{width:100%}
  .hero-proof{grid-template-columns:1fr!important}
  .hero-visual{min-height:390px}
  .visual-panel{border-radius:26px}
  .core-node{width:118px!important;height:118px!important}
  .core-label strong{font-size:25px!important}
  .node{width:78px!important;height:58px!important;border-radius:14px!important}
  .node b{font-size:13px!important}
  .node small{font-size:9px!important}
  .metric-card{display:none!important}
  .service-grid,
  .core-flip-grid,
  .insight-grid{
    grid-template-columns:1fr!important;
  }
  .service-card{min-height:320px}
  .core-service-card{height:320px!important}
  .section{padding:72px 0!important}
  .section-head{flex-direction:column;gap:16px}
  .section-head h2,
  .about-copy h2,
  .ecosystem-copy h2,
  .outcomes-intro h2,
  .contact-copy h2{font-size:38px!important}
  .ecosystem-map{height:430px!important;min-height:0}
  .ecosystem-core{width:118px!important;height:118px!important}
  .ecosystem-core strong{font-size:22px!important}
  .eco{font-size:9px!important;padding:8px 10px!important}
  .about-visual{min-height:430px!important}
  .experience-card{width:170px!important}
  .footer-grid,.footer-top{grid-template-columns:1fr!important;gap:28px!important}
  .footer-grid>div:first-child,.footer-top>div:first-child{grid-column:auto!important}
  .footer-bottom{flex-direction:column;gap:12px}
  .footer-bottom div{flex-wrap:wrap}
  .solution-hero{padding-top:96px!important}
  .solution-hero h1{font-size:42px!important}
  .solution-showcase{padding-bottom:72px}
  .solution-visual{min-height:330px!important}
}

/* Small phones */
@media (max-width: 420px){
  .brand img{width:158px!important}
  .hero h1{font-size:40px!important}
  .hero-visual{min-height:360px}
  .orbit-1{left:12px!important;top:70px!important}
  .orbit-2{right:10px!important;top:66px!important}
  .orbit-3{left:10px!important;bottom:38px!important}
  .orbit-4{right:10px!important;bottom:38px!important}
  .ecosystem-map{height:390px!important}
}

/* Touch devices: support tap flip, not hover only */
.core-service-card.is-flipped .flip-front{
  transform:rotateY(180deg)!important;
  opacity:0!important;
  z-index:1!important;
}
.core-service-card.is-flipped .flip-back{
  transform:rotateY(0deg)!important;
  opacity:1!important;
  z-index:3!important;
  pointer-events:auto!important;
}

@media (hover:none){
  .core-service-card:hover .flip-front{transform:rotateY(0deg)!important;opacity:1!important;z-index:2!important}
  .core-service-card:hover .flip-back{transform:rotateY(-180deg)!important;opacity:0!important;z-index:1!important;pointer-events:none!important}
  .core-service-card.is-flipped .flip-front{transform:rotateY(180deg)!important;opacity:0!important;z-index:1!important}
  .core-service-card.is-flipped .flip-back{transform:rotateY(0deg)!important;opacity:1!important;z-index:3!important;pointer-events:auto!important}
}

/* ===== V27 privacy/legal refinements ===== */
.legal-copy{max-width:900px}
.legal-copy h2{margin-top:34px}
.legal-copy p{line-height:1.75}
.legal-meta{margin-bottom:28px;color:var(--muted,#6b6b6b)}
.contact-form .consent a{text-decoration:underline;text-underline-offset:2px}


/* ===== V28 accessibility pass ===== */
.skip-link{
  position:fixed;
  left:16px;
  top:-80px;
  z-index:99999;
  padding:12px 18px;
  border-radius:10px;
  background:#111214;
  color:#fff;
  font-weight:700;
  text-decoration:none;
  transition:top .18s ease;
}
.skip-link:focus{top:16px}

:where(a,button,input,select,textarea,[tabindex]):focus-visible{
  outline:3px solid #f27023;
  outline-offset:3px;
}
.nav-toggle:focus-visible,
.btn:focus-visible,
.nav-link:focus-visible,
.nav-parent:focus-visible{
  border-radius:12px;
}

input,select,textarea{
  font:inherit;
}
input:focus-visible,select:focus-visible,textarea:focus-visible{
  border-color:#f27023!important;
  box-shadow:0 0 0 3px rgba(242,112,35,.16);
}

.form-status.success,
.form-status.error{
  min-height:1.5em;
}
.core-service-card:focus-visible{
  border-radius:24px;
}
.mega-tab[aria-selected="true"]{
  font-weight:700;
}

@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto!important}
  *,*::before,*::after{
    animation-duration:.001ms!important;
    animation-iteration-count:1!important;
    transition-duration:.001ms!important;
    scroll-behavior:auto!important;
  }
  .reveal{opacity:1!important;transform:none!important}
  .hero-visual,.ecosystem-map,.service-grid,.process-track{opacity:1!important;transform:none!important}
}


/* ===== V29 device/browser/performance QA ===== */
html,body{
  max-width:100%;
  overflow-x:clip;
}
@supports not (overflow:clip){
  html,body{overflow-x:hidden}
}

img,svg,video{
  max-width:100%;
}
img{
  height:auto;
}

.brand img{
  aspect-ratio:520 / 127;
}

/* More reliable 3D flip rendering in Safari/iOS. */
.flip-front,
.flip-back,
.core-service-card{
  -webkit-backface-visibility:hidden;
  backface-visibility:hidden;
  -webkit-transform-style:preserve-3d;
  transform-style:preserve-3d;
}

/* Comfortable mobile tap targets. */
@media (max-width:1120px){
  .nav-link,
  .nav-parent,
  .dropdown-menu a,
  .mega-tab,
  .nav-toggle{
    min-height:44px;
  }
}

/* Keep animated/visual sections inside the viewport on narrow devices. */
.hero,
.page-hero,
.section,
.content-section{
  overflow-x:clip;
}

@media (max-width:720px){
  .hero,
  .page-hero{
    padding-left:max(0px, env(safe-area-inset-left));
    padding-right:max(0px, env(safe-area-inset-right));
  }
  .nav-wrap{
    padding-left:max(0px, env(safe-area-inset-left));
    padding-right:max(0px, env(safe-area-inset-right));
  }
  .hero-visual,
  .ecosystem-map,
  .about-visual,
  .solution-visual{
    width:100%;
    max-width:100%;
  }
  .flip-front,
  .flip-back{
    overflow:auto;
    -webkit-overflow-scrolling:touch;
  }
}

/* Avoid accidental oversized text caused by mobile browser text inflation. */
html{
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}

/* Faster touch response without disabling pinch zoom. */
button,
a,
input,
select,
textarea,
.core-service-card{
  touch-action:manipulation;
}

/* Keep page anchors visible below the sticky header. */
:target{
  scroll-margin-top:110px;
}


/* ===== V30 security/form hardening ===== */
.hp-field{
  position:absolute!important;
  left:-10000px!important;
  top:auto!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
}


/* ===== V31 branded 404 page ===== */
.error-page{
  min-height:calc(100vh - 180px);
  display:grid;
  place-items:center;
  padding:140px 0 90px;
  background:
    radial-gradient(circle at 20% 20%, rgba(242,112,35,.10), transparent 34%),
    radial-gradient(circle at 80% 70%, rgba(242,112,35,.06), transparent 32%),
    #fff;
}
.error-page-inner{
  max-width:820px;
  text-align:center;
}
.error-page h1{
  margin:16px auto 18px;
  max-width:760px;
  font-size:clamp(46px,8vw,82px);
  line-height:.98;
}
.error-page p{
  max-width:640px;
  margin:0 auto 28px;
  color:var(--muted,#666);
  font-size:18px;
  line-height:1.7;
}
.error-page .hero-actions{
  justify-content:center;
}
.error-links{
  margin-top:34px;
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:18px 26px;
}
.error-links a{
  font-weight:700;
  text-underline-offset:4px;
}
@media(max-width:720px){
  .error-page{
    min-height:calc(100vh - 130px);
    padding:110px 0 70px;
  }
  .error-page p{font-size:16px}
}


/* ===== V34 feedback update: Oracle Partner + AI + floating expert ===== */
.nav-wrap{
  justify-content:flex-start;
  gap:24px;
}
.nav{
  margin-left:auto;
}
.header-oracle-partner{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:8px 11px;
  min-width:154px;
  border-radius:14px;
  background:rgba(255,255,255,.94);
  border:1px solid rgba(17,18,20,.08);
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
.header-oracle-partner img{
  width:142px!important;
  height:auto!important;
  max-height:42px!important;
  object-fit:contain;
}
.header-oracle-partner:hover{
  transform:translateY(-2px);
  border-color:rgba(199,70,52,.22);
  box-shadow:0 12px 28px rgba(17,18,20,.09);
}

/* Fixed vertical CTA on the right edge. */
.floating-expert{
  position:fixed;
  z-index:980;
  top:50%;
  right:0;
  transform:translateY(-50%);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  width:52px;
  min-height:188px;
  padding:15px 10px;
  border-radius:18px 0 0 18px;
  background:#111214;
  color:#fff;
  box-shadow:0 18px 40px rgba(0,0,0,.20);
  border:1px solid rgba(255,255,255,.10);
  transition:width .25s ease,background .25s ease,box-shadow .25s ease;
}
.floating-expert span{
  writing-mode:vertical-rl;
  transform:rotate(180deg);
  font-size:12px;
  font-weight:800;
  letter-spacing:.06em;
  white-space:nowrap;
}
.floating-expert b{
  font-size:15px;
  color:#ff8a44;
}
.floating-expert:hover{
  width:58px;
  background:#1b1c1f;
  box-shadow:0 20px 48px rgba(0,0,0,.28);
}

/* AI becomes a highlighted part of the Enterprise Flow. */
.orbit-ai{
  left:50%;
  top:66px;
  transform:translateX(-50%);
  z-index:4;
}
.node-ai{
  background:linear-gradient(145deg,#ff8d48,#e95c12)!important;
  border-color:rgba(255,255,255,.24)!important;
  box-shadow:0 16px 34px rgba(0,0,0,.20),0 0 0 7px rgba(243,107,33,.12),0 0 38px rgba(243,107,33,.28)!important;
}
.node-ai b{
  font-size:20px!important;
  letter-spacing:.08em;
}
.node-ai small{
  color:rgba(255,255,255,.88)!important;
}
.ai-flow-line{
  stroke:#ff8a44!important;
  stroke-width:2.6!important;
}

.hero-visual .orbit-ai{
  opacity:0;
  transform:translateX(-50%) translateY(92px) scale(.72);
}
.hero-visual.hero-active .orbit-ai{
  animation:deployOrbitAI 2.05s cubic-bezier(.16,1,.3,1) .82s both,floatNodeAI 10.6s ease-in-out 3s infinite;
}
@keyframes deployOrbitAI{
  0%{opacity:0;transform:translateX(-50%) translateY(92px) scale(.72)}
  68%{opacity:1;transform:translateX(-50%) translateY(-5px) scale(1.03)}
  100%{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}
}
@keyframes floatNodeAI{
  0%,100%{transform:translateX(-50%) translateY(0)}
  50%{transform:translateX(-50%) translateY(-7px)}
}

@media(max-width:1280px){
  .nav{gap:20px}
  .header-oracle-partner{min-width:136px;padding:7px 9px}
  .header-oracle-partner img{width:126px!important}
}
@media(max-width:1120px){
  .nav-wrap{gap:10px}
  .header-oracle-partner{margin-left:auto;min-width:130px;padding:6px 8px}
  .header-oracle-partner img{width:120px!important;max-height:38px!important}
  .nav-toggle{margin-left:2px}
}
@media(max-width:720px){
  .header-oracle-partner{min-width:105px;padding:5px 7px;border-radius:11px}
  .header-oracle-partner img{width:99px!important;max-height:32px!important}
  .floating-expert{width:44px;min-height:158px;padding:12px 8px;border-radius:15px 0 0 15px}
  .floating-expert span{font-size:10px;letter-spacing:.04em}
  .orbit-ai{top:68px}
  .node-ai{width:86px!important;height:62px!important}
}
@media(max-width:480px){
  .brand img{width:142px!important}
  .header-oracle-partner{min-width:91px;padding:4px 6px}
  .header-oracle-partner img{width:84px!important;max-height:27px!important}
  .orbit-ai{top:66px}
  .node-ai{width:70px!important;height:54px!important}
  .node-ai b{font-size:15px!important}
  .node-ai small{font-size:8px!important}
}
@media(prefers-reduced-motion:reduce){
  .hero-visual .orbit-ai,.hero-visual.hero-active .orbit-ai{
    opacity:1!important;
    transform:translateX(-50%)!important;
    animation:none!important;
  }
}


/* ===== V35 header correction: preserve full desktop navigation ===== */

/* Normal desktop/laptop */
@media (min-width: 961px){
  .nav-wrap{
    gap:18px!important;
  }

  .brand{
    flex:0 0 auto!important;
  }

  .brand img{
    width:210px!important;
    max-height:58px!important;
  }

  .nav{
    display:flex!important;
    position:static!important;
    flex:1 1 auto!important;
    width:auto!important;
    min-width:0!important;
    margin-left:auto!important;
    padding:0!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    border-radius:0!important;
    overflow:visible!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:clamp(14px,1.55vw,28px)!important;
  }

  .nav-item{
    width:auto!important;
    flex:0 0 auto!important;
  }

  .nav-link,
  .nav-parent{
    width:auto!important;
    min-height:0!important;
    display:flex!important;
    padding:10px 0!important;
    white-space:nowrap!important;
    font-size:clamp(13px,1.05vw,16px)!important;
  }

  .nav-toggle{
    display:none!important;
  }

  .header-oracle-partner{
    margin-left:4px!important;
    min-width:124px!important;
    padding:6px 8px!important;
  }

  .header-oracle-partner img{
    width:116px!important;
    max-height:36px!important;
  }

  /* Restore desktop dropdown behavior */
  .dropdown-menu,
  .mega-menu{
    position:absolute!important;
  }
}

/* Switch to compact/mobile navigation only at true tablet widths. */
@media (max-width: 960px){
  .nav-toggle{
    display:block!important;
    order:3;
  }

  .header-oracle-partner{
    order:2;
    margin-left:auto!important;
  }

  .nav{
    order:4;
    display:none!important;
    position:absolute!important;
    top:82px!important;
    left:24px!important;
    right:24px!important;
    flex-direction:column!important;
    align-items:stretch!important;
    max-height:calc(100vh - 104px)!important;
    overflow:auto!important;
    padding:18px!important;
    background:rgba(255,255,255,.98)!important;
    border:1px solid #e7e2dc!important;
    border-radius:20px!important;
    box-shadow:0 22px 54px rgba(0,0,0,.14)!important;
  }

  .nav.open{
    display:flex!important;
  }

  .nav-item{
    width:100%!important;
  }

  .nav-link,
  .nav-parent{
    width:100%!important;
    justify-content:space-between!important;
    padding:12px 4px!important;
  }

  .dropdown-menu,
  .mega-menu{
    position:static!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    transform:none!important;
    box-shadow:none!important;
    border:0!important;
    border-radius:14px!important;
    margin-top:4px!important;
    display:none!important;
  }

  .nav-item.open > .dropdown-menu,
  .nav-item.open > .mega-menu{
    display:block!important;
  }
}

@media (max-width: 620px){
  .brand img{
    width:154px!important;
  }

  .header-oracle-partner{
    min-width:88px!important;
    padding:4px 5px!important;
  }

  .header-oracle-partner img{
    width:80px!important;
    max-height:26px!important;
  }

  .nav{
    top:72px!important;
    left:14px!important;
    right:14px!important;
  }
}


/* ===== V36 Oracle Partner refinement ===== */

/* Top-right Oracle | Partner treatment rendered entirely with CSS/text. */
.header-oracle-partner{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  min-width:auto!important;
  padding:10px 14px!important;
  border-radius:14px!important;
  background:#fff!important;
  border:1px solid rgba(17,18,20,.10)!important;
  box-shadow:0 8px 22px rgba(17,18,20,.06)!important;
  text-decoration:none!important;
}
.header-oracle-partner img{
  display:none!important;
}
.oracle-wordmark{
  color:#c74634;
  font-size:17px;
  font-weight:700;
  letter-spacing:.035em;
  line-height:1;
}
.oracle-divider{
  width:1px;
  height:28px;
  background:rgba(17,18,20,.38);
}
.oracle-partner-word{
  color:#242629;
  font-size:15px;
  font-weight:500;
  line-height:1;
}
.header-oracle-partner:hover{
  transform:translateY(-2px)!important;
  border-color:rgba(199,70,52,.28)!important;
  box-shadow:0 14px 30px rgba(17,18,20,.10)!important;
}

/* Hero partnership feature: restore the earlier partnership callout, now more prominent. */
.hero-oracle-partner-featured{
  display:inline-flex;
  align-items:center;
  gap:14px;
  margin-bottom:22px;
  padding:13px 16px;
  border-radius:18px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.98), rgba(255,247,241,.98));
  border:1px solid rgba(199,70,52,.18);
  box-shadow:
    0 14px 34px rgba(17,18,20,.08),
    0 0 0 1px rgba(243,107,33,.04);
  text-decoration:none;
  position:relative;
  overflow:hidden;
  transition:transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}
.hero-oracle-partner-featured::before{
  content:"";
  position:absolute;
  inset:-120% auto -120% -28%;
  width:35%;
  transform:rotate(18deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.9),transparent);
  animation:partnerSheen 7.2s ease-in-out infinite;
  pointer-events:none;
}
.hero-oracle-partner-featured::after{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:4px;
  background:linear-gradient(#ff9a57,#e85d14);
}
.hero-oracle-partner-featured:hover{
  transform:translateY(-3px);
  border-color:rgba(199,70,52,.30);
  box-shadow:
    0 18px 42px rgba(17,18,20,.11),
    0 0 32px rgba(243,107,33,.08);
}
.hero-partner-oracle{
  color:#c74634;
  font-size:20px;
  font-weight:800;
  letter-spacing:.05em;
}
.hero-partner-divider{
  width:1px;
  height:37px;
  background:rgba(17,18,20,.28);
}
.hero-partner-copy{
  display:grid;
  gap:2px;
  text-align:left;
}
.hero-partner-copy strong{
  color:#17181a;
  font-size:16px;
  line-height:1.1;
}
.hero-partner-copy small{
  color:#777d84;
  font-size:11px;
  font-weight:600;
  letter-spacing:.035em;
}
.hero-partner-arrow{
  color:#f36b21;
  font-size:16px;
  font-weight:800;
  margin-left:4px;
}
@keyframes partnerSheen{
  0%,62%{left:-38%;opacity:0}
  70%{opacity:.8}
  84%{left:112%;opacity:0}
  100%{left:112%;opacity:0}
}

/* Desktop sizing refinements */
@media(min-width:961px){
  .header-oracle-partner{
    padding:9px 12px!important;
    gap:9px!important;
  }
  .oracle-wordmark{font-size:15px}
  .oracle-partner-word{font-size:14px}
  .oracle-divider{height:25px}
}

/* Tablet/mobile keeps both partnership touchpoints readable without crowding. */
@media(max-width:960px){
  .header-oracle-partner{
    padding:7px 9px!important;
    gap:7px!important;
  }
  .oracle-wordmark{font-size:14px}
  .oracle-partner-word{font-size:13px}
  .oracle-divider{height:22px}
}
@media(max-width:620px){
  .header-oracle-partner{
    padding:6px 7px!important;
    gap:6px!important;
  }
  .oracle-wordmark{font-size:12px}
  .oracle-partner-word{font-size:11px}
  .oracle-divider{height:18px}
  .hero-oracle-partner-featured{
    width:100%;
    padding:11px 13px;
    gap:10px;
    margin-bottom:18px;
  }
  .hero-partner-oracle{font-size:16px}
  .hero-partner-divider{height:32px}
  .hero-partner-copy strong{font-size:14px}
  .hero-partner-copy small{font-size:9px}
}
@media(prefers-reduced-motion:reduce){
  .hero-oracle-partner-featured::before{
    animation:none!important;
  }
}


/* ===== V37: restore original Oracle Partner hero position ===== */
.hero-oracle-partner{
  position:relative;
  border-color:rgba(199,70,52,.24)!important;
  box-shadow:
    0 12px 28px rgba(17,18,20,.07),
    0 0 0 1px rgba(243,107,33,.04);
  overflow:hidden;
}
.hero-oracle-partner::before{
  content:"";
  position:absolute;
  left:-42%;
  top:-80%;
  width:30%;
  height:260%;
  transform:rotate(18deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.82),transparent);
  animation:heroPartnerHighlight 8s ease-in-out infinite;
  pointer-events:none;
}
.hero-oracle-partner:hover{
  transform:translateY(-2px);
  border-color:rgba(199,70,52,.36)!important;
  box-shadow:
    0 16px 34px rgba(17,18,20,.10),
    0 0 26px rgba(243,107,33,.08);
}
@keyframes heroPartnerHighlight{
  0%,68%{left:-42%;opacity:0}
  73%{opacity:.75}
  88%{left:115%;opacity:0}
  100%{left:115%;opacity:0}
}
@media(prefers-reduced-motion:reduce){
  .hero-oracle-partner::before{animation:none!important}
}


/* ===== V38 Oracle brand refinement + animated capability visuals ===== */
.header-oracle-partner{
  position:relative!important;
  overflow:hidden!important;
  background:linear-gradient(180deg,#ffffff 0%,#fbf8f5 100%)!important;
  border:1px solid rgba(199,70,52,.16)!important;
  box-shadow:0 10px 24px rgba(17,18,20,.06), 0 0 0 1px rgba(243,107,33,.03)!important;
}
.header-oracle-partner::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:3px;
  background:linear-gradient(180deg,#df6a28,#c74634);
  opacity:.9;
}
.header-oracle-partner::after{
  content:"";
  position:absolute;
  left:-30%; top:-55%;
  width:24%; height:210%;
  transform:rotate(18deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.88),transparent);
  animation:oracleSheen 9s ease-in-out infinite;
  pointer-events:none;
}
.oracle-wordmark,
.hero-oracle-word{
  font-family:"Arial Narrow","Helvetica Neue",Arial,sans-serif!important;
  font-weight:700!important;
  letter-spacing:.18em!important;
  text-transform:uppercase!important;
  color:#c74634!important;
  line-height:1!important;
  display:inline-block;
  transform:scaleX(1.08);
  transform-origin:left center;
}
.oracle-wordmark{
  font-size:18px!important;
}
.oracle-partner-word{
  font-size:15px!important;
  font-weight:600!important;
  letter-spacing:.04em!important;
  text-transform:none!important;
}
.oracle-divider{
  background:linear-gradient(180deg,rgba(17,18,20,.1),rgba(17,18,20,.5),rgba(17,18,20,.1))!important;
}
.header-oracle-partner:hover{
  transform:translateY(-2px)!important;
  border-color:rgba(199,70,52,.26)!important;
  box-shadow:0 18px 38px rgba(17,18,20,.12),0 0 28px rgba(243,107,33,.07)!important;
}

.hero-oracle-partner{
  background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(255,247,240,.98))!important;
  border:1px solid rgba(199,70,52,.32)!important;
  box-shadow:0 18px 42px rgba(34,24,18,.10),0 0 0 1px rgba(243,107,33,.05),0 0 30px rgba(243,107,33,.08)!important;
  padding:15px 18px!important;
  border-radius:20px!important;
}
.hero-oracle-partner::after{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:4px;
  background:linear-gradient(180deg,#ff9a57,#e85d14);
}
.hero-oracle-word{
  font-size:20px!important;
}
.hero-oracle-text small{
  color:#7b7270!important;
  font-size:11px!important;
  font-weight:700!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
.hero-oracle-text strong{
  display:block;
  color:#151618!important;
  font-size:16px!important;
  line-height:1.2!important;
}
.hero-oracle-arrow{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:9px 12px;
  border-radius:999px;
  background:rgba(243,107,33,.10);
  color:#d35d19!important;
  font-size:12px!important;
  font-weight:800!important;
  white-space:nowrap;
}
.hero-oracle-partner:hover{
  transform:translateY(-3px)!important;
  border-color:rgba(199,70,52,.45)!important;
  box-shadow:0 24px 48px rgba(34,24,18,.13),0 0 34px rgba(243,107,33,.12)!important;
}
@keyframes oracleSheen{
  0%,70%{left:-30%;opacity:0}
  75%{opacity:.8}
  90%{left:115%;opacity:0}
  100%{left:115%;opacity:0}
}

.capability-card{
  overflow:hidden;
}
.capability-card .icon-box{
  margin-bottom:16px;
}
.card-visual{
  position:relative;
  height:104px;
  margin:2px 0 18px;
  border-radius:22px;
  overflow:hidden;
  border:1px solid rgba(17,18,20,.07);
  background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(255,255,255,.42));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55);
}
.service-card.dark .card-visual{
  background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.025));
  border-color:rgba(255,255,255,.09);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.service-card.accent .card-visual{
  background:linear-gradient(180deg,rgba(255,255,255,.2),rgba(255,255,255,.09));
  border-color:rgba(255,255,255,.16);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16);
}
.capability-card:hover .card-visual{transform:translateY(-2px)}
.service-card{min-height:412px}

.visual-ai .visual-orb{
  position:absolute; left:50%; top:50%; width:40px; height:40px; border-radius:50%;
  transform:translate(-50%,-50%);
  background:radial-gradient(circle at 35% 30%,#ffb37d,#f36b21 58%,#d35213);
  box-shadow:0 0 0 10px rgba(243,107,33,.08),0 0 28px rgba(243,107,33,.18);
  animation:softPulse 4.2s ease-in-out infinite;
}
.visual-ai .visual-chip,
.visual-ai .visual-spark{
  position:absolute; border-radius:14px; background:rgba(243,107,33,.12);
}
.visual-ai .visual-chip{width:16px;height:16px;border:1px solid rgba(243,107,33,.22)}
.visual-ai .chip-1{left:22%; top:28%; animation:floatY 5s ease-in-out infinite}
.visual-ai .chip-2{right:22%; top:22%; animation:floatY 4.8s ease-in-out 1s infinite}
.visual-ai .chip-3{left:28%; bottom:18%; animation:floatY 5.4s ease-in-out .6s infinite}
.visual-ai .visual-spark{width:6px;height:6px;background:#1f2125}
.visual-ai .spark-1{right:28%; bottom:28%; animation:blink 3.4s ease-in-out infinite}
.visual-ai .spark-2{right:18%; top:46%; animation:blink 4.2s ease-in-out .8s infinite}
.visual-ai .visual-wave{
  position:absolute; inset:auto 18px 16px 18px; height:2px;
  background:linear-gradient(90deg,transparent,rgba(243,107,33,.55),transparent);
  box-shadow:0 0 14px rgba(243,107,33,.18);
  animation:waveLine 3.6s ease-in-out infinite;
}

.visual-integration .node,
.visual-oic .dot,
.visual-oci .cube,
.visual-managed .orbit,
.visual-managed .check,
.visual-managed .shield,
.visual-vbcs .panel,
.visual-vbcs .code,
.visual-vbcs .cursor{position:absolute}
.visual-integration .node{width:16px;height:16px;border-radius:50%;background:#ff8a44;box-shadow:0 0 0 5px rgba(243,107,33,.08)}
.visual-integration .node-1{left:18%; top:58%; animation:floatY 4.9s ease-in-out infinite}
.visual-integration .node-2{left:48%; top:24%; animation:floatY 5.2s ease-in-out .7s infinite}
.visual-integration .node-3{right:18%; top:54%; animation:floatY 5s ease-in-out 1s infinite}
.visual-integration .line{position:absolute;height:2px;background:linear-gradient(90deg,rgba(255,138,68,.2),rgba(255,138,68,.75),rgba(255,138,68,.2));transform-origin:left center}
.visual-integration .line-1{left:24%; top:58%; width:92px; transform:rotate(-22deg)}
.visual-integration .line-2{left:54%; top:38%; width:78px; transform:rotate(28deg)}
.visual-integration .pulse{position:absolute;width:10px;height:10px;border-radius:50%;background:#fff;box-shadow:0 0 0 4px rgba(255,255,255,.18)}
.visual-integration .pulse-1{left:29%; top:53%; animation:travelPulseA 3.2s linear infinite}
.visual-integration .pulse-2{left:58%; top:44%; animation:travelPulseB 3.2s linear 1.2s infinite}

.visual-oic .ring{position:absolute;border-radius:50%;border:2px solid rgba(243,107,33,.24)}
.visual-oic .ring-1{width:56px;height:56px;left:19%;top:24%;animation:rotateSlow 10s linear infinite}
.visual-oic .ring-2{width:38px;height:38px;left:41%;top:44%;border-style:dashed;animation:rotateSlowReverse 8s linear infinite}
.visual-oic .ring-3{width:28px;height:28px;right:18%;top:28%;animation:rotateSlow 7s linear infinite}
.visual-oic .dot{width:10px;height:10px;border-radius:50%;background:#ff8a44}
.visual-oic .dot-1{left:31%;top:24%;animation:orbitJitter 4.3s ease-in-out infinite}
.visual-oic .dot-2{left:54%;top:56%;animation:orbitJitter 4.9s ease-in-out .7s infinite}
.visual-oic .dot-3{right:24%;top:53%;animation:orbitJitter 4.6s ease-in-out .3s infinite}

.visual-vbcs .panel{border-radius:14px;background:rgba(243,107,33,.10);border:1px solid rgba(243,107,33,.12)}
.visual-vbcs .panel-1{left:18%;top:22%;width:72px;height:50px;animation:floatY 4.4s ease-in-out infinite}
.visual-vbcs .panel-2{left:42%;top:38%;width:66px;height:44px;animation:floatY 5s ease-in-out .9s infinite}
.visual-vbcs .panel-3{right:14%;top:20%;width:52px;height:58px;animation:floatY 4.8s ease-in-out .5s infinite}
.visual-vbcs .code{height:2px;background:rgba(31,33,37,.66);border-radius:2px}
.visual-vbcs .code-1{left:26%;top:42%;width:32px}
.visual-vbcs .code-2{left:49%;top:58%;width:24px}
.visual-vbcs .cursor{width:12px;height:12px;border-right:2px solid #f36b21;border-bottom:2px solid #f36b21;transform:rotate(-45deg);right:22%;bottom:22%;animation:cursorPulse 3.7s ease-in-out infinite}

.visual-oci .cloud{
  position:absolute; left:20%; top:34%; width:114px; height:38px; border-radius:999px;
  background:linear-gradient(180deg,rgba(243,107,33,.20),rgba(243,107,33,.10));
  box-shadow:0 10px 22px rgba(243,107,33,.09);
}
.visual-oci .cloud::before,
.visual-oci .cloud::after{
  content:""; position:absolute; border-radius:50%; background:inherit;
}
.visual-oci .cloud::before{width:40px;height:40px;left:14px;top:-16px}
.visual-oci .cloud::after{width:50px;height:50px;left:50px;top:-22px}
.visual-oci .cube{width:16px;height:16px;border-radius:5px;background:#ff8a44;box-shadow:0 10px 22px rgba(243,107,33,.18)}
.visual-oci .cube-1{right:18%;top:28%;animation:floatY 4.6s ease-in-out infinite}
.visual-oci .cube-2{right:28%;bottom:22%;animation:floatY 5.1s ease-in-out .7s infinite}
.visual-oci .cube-3{left:40%;bottom:22%;animation:floatY 4.8s ease-in-out .3s infinite}
.visual-oci .beam{position:absolute;width:2px;background:linear-gradient(180deg,rgba(243,107,33,.1),rgba(243,107,33,.55),rgba(243,107,33,.1))}
.visual-oci .beam-1{left:58%;top:26%;height:40px;animation:beamPulse 3.4s ease-in-out infinite}
.visual-oci .beam-2{left:66%;top:36%;height:30px;animation:beamPulse 3.4s ease-in-out .8s infinite}

.visual-managed .shield{left:50%;top:50%;width:54px;height:64px;transform:translate(-50%,-50%);clip-path:polygon(50% 0,100% 18%,100% 62%,50% 100%,0 62%,0 18%);background:linear-gradient(180deg,#fff1e8,#ffd0b2 55%,#ff9d5f);box-shadow:0 10px 20px rgba(0,0,0,.12)}
.visual-managed .check{left:50%;top:50%;width:18px;height:10px;border-left:3px solid #f36b21;border-bottom:3px solid #f36b21;transform:translate(-50%,-42%) rotate(-45deg)}
.visual-managed .orbit{left:50%;top:50%;border:1px dashed rgba(255,255,255,.36);border-radius:50%;transform:translate(-50%,-50%)}
.visual-managed .orbit-a{width:88px;height:88px;animation:rotateSlow 10s linear infinite}
.visual-managed .orbit-b{width:112px;height:112px;animation:rotateSlowReverse 13s linear infinite}
.visual-managed .orbit-c{width:132px;height:132px;animation:rotateSlow 16s linear infinite}

@keyframes softPulse{0%,100%{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.08)}}
@keyframes floatY{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes blink{0%,100%{opacity:.25;transform:scale(.7)}40%{opacity:1;transform:scale(1)}}
@keyframes waveLine{0%,100%{transform:scaleX(.72);opacity:.55}50%{transform:scaleX(1);opacity:1}}
@keyframes travelPulseA{0%{transform:translate(0,0);opacity:0}10%{opacity:1}45%{transform:translate(74px,-26px);opacity:1}55%,100%{transform:translate(74px,-26px);opacity:0}}
@keyframes travelPulseB{0%{transform:translate(0,0);opacity:0}10%{opacity:1}45%{transform:translate(58px,24px);opacity:1}55%,100%{transform:translate(58px,24px);opacity:0}}
@keyframes rotateSlow{from{transform:rotate(0)}to{transform:rotate(360deg)}}
@keyframes rotateSlowReverse{from{transform:rotate(360deg)}to{transform:rotate(0)}}
@keyframes orbitJitter{0%,100%{transform:scale(1)}50%{transform:translateY(-4px) scale(1.12)}}
@keyframes cursorPulse{0%,100%{transform:rotate(-45deg) scale(1)}50%{transform:rotate(-45deg) scale(1.14)}}
@keyframes beamPulse{0%,100%{opacity:.45;transform:scaleY(.86)}50%{opacity:1;transform:scaleY(1.1)}}

@media(max-width:960px){
  .card-visual{height:94px}
  .service-card{min-height:396px}
}
@media(max-width:620px){
  .oracle-wordmark{font-size:13px!important;letter-spacing:.14em!important}
  .oracle-partner-word{font-size:11px!important}
  .hero-oracle-word{font-size:17px!important}
  .hero-oracle-partner{padding:13px 14px!important}
  .hero-oracle-arrow{padding:8px 10px;font-size:11px!important}
  .card-visual{height:88px}
  .service-card{min-height:376px}
}
@media(prefers-reduced-motion:reduce){
  .header-oracle-partner::after,
  .card-visual *,
  .visual-ai .visual-orb{animation:none!important}
}

/* ===== V39 corrections: exact Oracle wordmark + compact capability cards ===== */
.oracle-wordmark{display:none!important}
.oracle-wordmark-image{display:block!important;width:104px!important;height:auto!important;max-height:29px!important;object-fit:contain;object-position:left center;flex:0 0 auto}
.hero-oracle-word{padding-right:16px!important;border-right:1px solid #eadbd7!important;display:flex!important;align-items:center!important;min-width:124px}
.hero-oracle-word img{display:block;width:112px!important;height:auto!important;max-height:34px!important;object-fit:contain;object-position:left center}
.hero-oracle-partner{background:radial-gradient(circle at 12% 50%,rgba(243,107,33,.10),transparent 26%),linear-gradient(135deg,#fff,#fff7f1)!important;border-color:rgba(199,70,52,.34)!important}
.hero-oracle-partner::after{width:5px!important}
.hero-oracle-arrow{background:linear-gradient(180deg,#fff0e6,#ffe2cf)!important;border:1px solid rgba(243,107,33,.13)}
.service-card{min-height:370px!important}
.capability-card{position:relative;overflow:hidden}
.capability-card .card-visual{position:absolute!important;top:38px!important;right:24px!important;left:auto!important;width:148px!important;height:86px!important;margin:0!important;z-index:0;border-radius:20px!important;opacity:.92;pointer-events:none;transition:transform .35s ease,opacity .35s ease}
.capability-card .number,.capability-card .icon-box,.capability-card h3,.capability-card p,.capability-card .tags,.capability-card>a{position:relative;z-index:2}
.capability-card .icon-box{margin:44px 0 18px!important;width:54px!important;height:54px!important}
.capability-card:hover .card-visual{transform:translateY(-3px) scale(1.025);opacity:1}
.service-card.dark .card-visual{background:rgba(255,255,255,.035)!important;border-color:rgba(255,255,255,.075)!important}
.service-card.accent .card-visual{background:rgba(255,255,255,.10)!important;border-color:rgba(255,255,255,.15)!important}
@media(max-width:1050px){.service-card{min-height:370px!important}.capability-card .card-visual{width:132px!important;height:78px!important;right:20px!important;top:40px!important}}
@media(max-width:780px){.service-card{min-height:340px!important}.capability-card .card-visual{width:138px!important;height:78px!important;top:34px!important;right:18px!important}.capability-card .icon-box{margin:40px 0 18px!important}.oracle-wordmark-image{width:82px!important;max-height:24px!important}.hero-oracle-word{min-width:100px;padding-right:12px!important}.hero-oracle-word img{width:90px!important;max-height:28px!important}}
@media(max-width:480px){.capability-card .card-visual{width:116px!important;height:68px!important;right:14px!important}.oracle-wordmark-image{width:72px!important}.hero-oracle-word img{width:82px!important}}
@media(prefers-reduced-motion:reduce){.capability-card .card-visual{transform:none!important}}


/* ===== V40 targeted fix: restore exact Oracle wordmark in top-right partner badge ===== */
.header-oracle-partner .oracle-wordmark-image{
  display:block!important;
  width:104px!important;
  height:auto!important;
  max-height:29px!important;
  object-fit:contain!important;
  object-position:left center!important;
  opacity:1!important;
  visibility:visible!important;
  flex:0 0 auto!important;
}
@media(max-width:780px){
  .header-oracle-partner .oracle-wordmark-image{
    width:82px!important;
    max-height:24px!important;
  }
}
@media(max-width:480px){
  .header-oracle-partner .oracle-wordmark-image{
    width:72px!important;
  }
}


/* ===== V41: CSS/text Oracle treatment; no copied Oracle artwork ===== */

/* Neutralize the previous image-specific rules. */
.oracle-wordmark-image{
  display:none!important;
}

/*
  This is styled text, not the Oracle logo asset.
  It intentionally approximates the feel without reproducing the exact mark.
*/
.oracle-wordmark-text{
  display:inline-block;
  color:#c74634;
  font-family:"Arial Narrow","Helvetica Neue",Arial,sans-serif;
  font-weight:500;
  font-stretch:condensed;
  font-size:18px;
  line-height:1;
  letter-spacing:.12em;
  text-transform:uppercase;
  transform:scaleX(1.08);
  transform-origin:left center;
  white-space:nowrap;
}

/* Slight geometric refinement to feel more contemporary. */
.header-oracle-partner .oracle-wordmark-text{
  font-size:17px;
  letter-spacing:.115em;
  font-weight:500;
}

.hero-oracle-word{
  min-width:122px!important;
}
.hero-oracle-word .hero-oracle-wordmark{
  font-size:20px;
  letter-spacing:.12em;
  font-weight:500;
}

/* Keep Partner visually secondary to Oracle. */
.oracle-partner-word{
  color:#26282b!important;
  font-size:15px!important;
  font-weight:600!important;
  letter-spacing:.035em!important;
}

/* Preserve the premium badge styling. */
.header-oracle-partner{
  background:linear-gradient(180deg,#fff,#fbf8f5)!important;
  border-color:rgba(199,70,52,.18)!important;
}
.header-oracle-partner:hover{
  border-color:rgba(199,70,52,.30)!important;
}

/* Hero partner block remains strongly visible. */
.hero-oracle-partner{
  background:
    radial-gradient(circle at 12% 50%,rgba(243,107,33,.10),transparent 26%),
    linear-gradient(135deg,#fff,#fff7f1)!important;
  border-color:rgba(199,70,52,.34)!important;
}

@media(max-width:780px){
  .header-oracle-partner .oracle-wordmark-text{
    font-size:14px;
  }
  .hero-oracle-word{
    min-width:100px!important;
  }
  .hero-oracle-word .hero-oracle-wordmark{
    font-size:17px;
  }
}

@media(max-width:480px){
  .header-oracle-partner .oracle-wordmark-text{
    font-size:12px;
    letter-spacing:.10em;
  }
  .hero-oracle-word .hero-oracle-wordmark{
    font-size:15px;
  }
}


/* ===== V44 contact refinements ===== */
#contact,
#contact-form-section{
  scroll-margin-top:84px;
}
.contact-form-section:target{
  scroll-margin-top:84px;
}
@media(max-width:780px){
  #contact,
  #contact-form-section{scroll-margin-top:72px}
}


/* V49 contact validation */
.required-mark{color:var(--orange,#f36b21);font-weight:800;margin-left:2px}

/* ===== Mobile capability cards reliability fix ===== */
@media (max-width: 780px) {
  .service-assemble .service-card,
  .service-assemble.in-view .service-card {
    opacity: 1 !important;
    visibility: visible !important;
    filter: none !important;
    transform: none !important;
  }
}
