/* ============================================================
   Eternal Enterprise Technologies — premium styles
   --------------------------------------------------------------
   Sections:
     1. Tokens & reset
     2. Typography & utilities
     3. Buttons
     4. Cursor, scroll progress, loader
     5. Navigation
     6. Hero (dashboard + orbs + stats)
     7. Trusted-by marquee
     8. Sections base
     9. Services
    10. Industries
    11. Why us
    12. Process timeline
    13. Features
    14. Case studies
    15. Tech marquee
    16. Testimonials
    17. Pricing
    18. FAQ
    19. Contact
    20. Footer
    21. Floating buttons (totop, whatsapp, cookie)
    22. Responsive
   ============================================================ */

/* 1. Tokens & reset */
:root{
  --bg:#0B0B0F;
  --bg-2:#0F0F14;
  --bg-3:#14141C;
  --surface:rgba(255,255,255,0.04);
  --surface-2:rgba(255,255,255,0.06);
  --line:rgba(255,255,255,0.08);
  --line-2:rgba(255,255,255,0.14);
  --ink:#F5F5F7;
  --ink-2:#C9C9D1;
  --ink-3:#8A8A95;
  --ink-4:#5F5F6B;
  --orange:#F97316;
  --orange-2:#FB923C;
  --orange-3:#EA580C;
  --orange-glow:rgba(249,115,22,0.35);
  --grad-orange:linear-gradient(135deg,#FDBA74 0%,#F97316 45%,#EA580C 100%);
  --grad-ink:linear-gradient(180deg,#FFFFFF 0%, #B8B8C2 100%);
  --r-sm:10px; --r-md:16px; --r-lg:22px; --r-xl:32px;
  --shadow-soft:0 1px 0 rgba(255,255,255,0.04) inset, 0 30px 60px -30px rgba(0,0,0,0.6);
  --shadow-glow:0 30px 80px -20px rgba(249,115,22,0.35);
  --ease:cubic-bezier(.2,.7,.2,1);
  --container:1240px;
}
*,*::before,*::after{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:'Inter','Plus Jakarta Sans',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
html{scroll-behavior:auto}
body{overflow-x:hidden;line-height:1.55}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer;border:0;background:transparent;color:inherit}
input,select,textarea{font-family:inherit;color:inherit}
ul{margin:0;padding:0;list-style:none}
::selection{background:var(--orange);color:#fff}

/* Global background atmosphere */
body::before{
  content:"";position:fixed;inset:0;z-index:-3;
  background:
    radial-gradient(1200px 600px at 80% -10%, rgba(249,115,22,0.18), transparent 60%),
    radial-gradient(1000px 600px at -10% 10%, rgba(120,80,255,0.10), transparent 60%),
    linear-gradient(180deg,#0A0A10 0%, #0B0B12 100%);
  pointer-events:none;
}
body::after{
  content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;
  background-image:
    linear-gradient(rgba(255,255,255,0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.04) 1px, transparent 1px);
  background-size:64px 64px;
  mask-image:radial-gradient(ellipse 80% 60% at 50% 0%, #000 30%, transparent 80%);
  opacity:.35;
}

.container{width:100%;max-width:var(--container);margin:0 auto;padding:0 28px}

/* 2. Typography */
.display{
  font-family:'Plus Jakarta Sans','Inter',sans-serif;
  font-weight:700;letter-spacing:-0.04em;line-height:1.02;
  font-size:clamp(44px, 7.2vw, 96px);
  margin:0 0 22px;
  color:var(--ink);
}
.display em{font-style:normal;background:var(--grad-orange);-webkit-background-clip:text;background-clip:text;color:transparent}
.h2{
  font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;letter-spacing:-0.03em;line-height:1.05;
  font-size:47px;margin:0 0 18px;color:var(--ink);
}
.h2 em{font-style:normal;background:var(--grad-orange);-webkit-background-clip:text;background-clip:text;color:transparent}
.h3{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;letter-spacing:-0.02em;font-size:22px;line-height:1.2;margin:0 0 8px}
.lead{font-size:clamp(16px, 1.25vw, 19px);color:var(--ink-2);max-width:640px;margin:0 0 36px}
.eyebrow{
  display:inline-flex;align-items:center;gap:10px;
  font-size:12px;letter-spacing:0.18em;text-transform:uppercase;
  color:var(--ink-3);padding:8px 14px;border:1px solid var(--line);border-radius:999px;background:var(--surface);
  margin-bottom:22px;
}
.eyebrow .dot{width:6px;height:6px;border-radius:999px;background:var(--orange);box-shadow:0 0 12px var(--orange-glow)}

.partner-badge{
  display:inline-flex;align-items:center;gap:10px;
  padding:7px 16px 7px 8px;border-radius:999px;
  background:rgba(255,255,255,.06);border:1px solid rgba(249,115,22,.35);
  margin:0 0 22px;box-shadow:0 14px 40px -24px rgba(249,115,22,.55);
}
.partner-badge img,.partner-badge__mark{width:auto;height:24px;border-radius:6px;background:#fff;object-fit:contain;padding:3px 5px;display:inline-flex;align-items:center}
.partner-badge__mark svg{height:100%;width:auto;display:block}
.partner-badge span{font-size:13px;font-weight:500;color:var(--ink-2);letter-spacing:.01em}
.partner-badge span b{color:var(--ink);font-weight:700}

/* Reveal helpers (set initial state, JS animates) */
.reveal-up{opacity:0;transform:translateY(28px);transition:opacity .8s var(--ease), transform .8s var(--ease)}
.reveal-lines > span{display:block;overflow:hidden}
.reveal-lines > span > *{display:inline-block;transform:translateY(120%);opacity:0;transition:opacity .9s var(--ease), transform .9s var(--ease)}
.reveal-lines > span{position:relative}
.reveal-up.is-in{opacity:1;transform:none}
.reveal-lines.is-in > span > *{opacity:1;transform:none}
.reveal-lines.is-in > span:nth-child(2) > *{transition-delay:.12s}
.reveal-lines.is-in > span:nth-child(3) > *{transition-delay:.24s}

/* 3. Buttons */
.btn{
  position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;
  padding:14px 22px;border-radius:999px;
  font-weight:600;font-size:14px;letter-spacing:-0.005em;
  transition:transform .35s var(--ease), box-shadow .35s var(--ease), background .35s var(--ease), color .35s var(--ease), border-color .35s var(--ease);
  will-change:transform;
}
.btn--lg{padding:17px 26px;font-size:15px}
.btn--block{width:100%}
.btn--primary{
  color:#0B0B0F;
  background:linear-gradient(180deg,#FFD2A1 0%, #FB923C 50%, #EA580C 100%);
  box-shadow:0 1px 0 rgba(255,255,255,0.6) inset, 0 10px 30px -8px rgba(249,115,22,0.55);
}
.btn--primary:hover{box-shadow:0 1px 0 rgba(255,255,255,0.7) inset, 0 18px 40px -8px rgba(249,115,22,0.75)}
.btn--primary svg{transition:transform .35s var(--ease)}
.btn--primary:hover svg{transform:translateX(4px)}
.btn--ghost{
  color:var(--ink);background:var(--surface);border:1px solid var(--line-2);
  backdrop-filter:blur(10px);
}
.btn--ghost:hover{background:var(--surface-2);border-color:rgba(255,255,255,0.25)}

/* 4. Cursor, scroll progress, loader */
.cursor,.cursor-dot{position:fixed;top:0;left:0;pointer-events:none;z-index:9999;mix-blend-mode:difference}
.cursor{width:36px;height:36px;border:1px solid rgba(255,255,255,0.65);border-radius:50%;transform:translate(-50%,-50%);transition:width .25s var(--ease),height .25s var(--ease),border-color .25s var(--ease),background .25s var(--ease)}
.cursor-dot{width:6px;height:6px;background:#fff;border-radius:50%;transform:translate(-50%,-50%)}
.cursor.is-hover{width:64px;height:64px;background:rgba(255,255,255,0.08);border-color:rgba(255,255,255,0.9)}
@media (hover:none){.cursor,.cursor-dot{display:none}}

.scroll-progress{position:fixed;top:0;left:0;right:0;height:2px;background:var(--grad-orange);transform-origin:left;transform:scaleX(0);z-index:9998}

.loader{position:fixed;inset:0;background:#0A0A10;display:grid;place-items:center;z-index:10000;transition:opacity .6s var(--ease), visibility .6s var(--ease)}
.loader.is-done{opacity:0;visibility:hidden}
.loader__inner{display:flex;flex-direction:column;align-items:center;gap:18px}
.loader__mark{width:54px;height:54px;border-radius:14px;animation:logoIn 1.2s var(--ease) both}
.loader__bar{width:180px;height:2px;background:rgba(255,255,255,0.08);border-radius:2px;overflow:hidden}
.loader__bar span{display:block;width:0;height:100%;background:var(--grad-orange);animation:bar 1.2s var(--ease) forwards}
.loader__text{font-size:11px;letter-spacing:0.3em;text-transform:uppercase;color:var(--ink-3)}
.loader__quote{margin:6px 0 4px;max-width:520px;padding:0 24px;text-align:center;opacity:0;transform:translateY(10px);animation:quoteIn .9s var(--ease) .35s forwards}
.loader__quote p{font-family:'Plus Jakarta Sans',sans-serif;font-weight:600;font-size:clamp(15px,1.6vw,20px);line-height:1.45;letter-spacing:-0.01em;color:var(--ink);margin:0 0 10px;background:linear-gradient(180deg,#FFFFFF 0%,#C9C9D1 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.loader__quote cite{font-style:normal;font-size:11px;letter-spacing:0.18em;text-transform:uppercase;color:var(--orange-2)}
@keyframes quoteIn{to{opacity:1;transform:translateY(0)}}
@keyframes quoteOut{to{opacity:0;transform:translateY(-6px)}}
.loader__quote.is-swapping{animation:quoteOut .35s var(--ease) forwards}
@keyframes bar{to{width:100%}}
@keyframes logoIn{from{transform:scale(.8) rotate(-8deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}

/* 5. Navigation */
.nav{
  position:fixed;top: 15px;left:50%;transform:translateX(-50%);
  width:calc(100% - 36px);max-width:1280px;height:64px;
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:0 14px 0 18px;border-radius:999px;
  background:rgba(15,15,20,0.55);border:1px solid var(--line);
  backdrop-filter:blur(18px) saturate(140%);
  -webkit-backdrop-filter:blur(18px) saturate(140%);
  z-index:100;transition:transform .5s var(--ease), background .35s var(--ease), border-color .35s var(--ease), box-shadow .35s var(--ease);
}
.nav.is-scrolled{background:rgba(11,11,15,0.75);box-shadow:0 14px 40px -20px rgba(0,0,0,0.7)}
.nav.is-hidden{transform:translateX(-50%) translateY(-130%)}
.nav__brand{display:inline-flex;align-items:center;gap:10px}
.nav__logo{width:30px;height:30px;border-radius:8px}
.nav__wordmark{display:flex;flex-direction:column;line-height:1}
.nav__wordmark b{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:14px;letter-spacing:-0.01em}
.nav__wordmark i{font-style:normal;font-size:9px;letter-spacing:0.18em;text-transform:uppercase;color:var(--ink-3);margin-top:3px}
.nav__links{display:flex;align-items:center;gap:4px}
.nav__links a{position:relative;padding:10px 14px;border-radius:999px;font-size:14px;color:var(--ink-2);transition:color .25s var(--ease)}
.nav__links a::after{content:"";position:absolute;left:14px;right:14px;bottom:6px;height:1px;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.nav__links a:hover{color:var(--ink)}
.nav__links a:hover::after{transform:scaleX(1)}
.nav__links a.is-active{color:var(--ink)}
.nav__links a.is-active::after{transform:scaleX(1)}
.nav__cta{display:flex;align-items:center;gap:8px}
.nav__cta .btn{padding:10px 16px;font-size:13px}
.nav__burger{display:none;width:42px;height:42px;border-radius:999px;background:var(--surface);border:1px solid var(--line);flex-direction:column;align-items:center;justify-content:center;gap:5px}
.nav__burger span{width:18px;height:1.5px;background:var(--ink);transition:transform .35s var(--ease), opacity .35s var(--ease)}
.nav__burger.is-open span:nth-child(1){transform:translateY(3px) rotate(45deg)}
.nav__burger.is-open span:nth-child(2){transform:translateY(-3px) rotate(-45deg)}

.mobile{position:fixed;inset:0;background:rgba(8,8,12,0.96);backdrop-filter:blur(20px);z-index:99;display:grid;place-items:center;opacity:0;visibility:hidden;transition:opacity .4s var(--ease), visibility .4s}
.mobile.is-open{opacity:1;visibility:visible}
.mobile__inner{display:flex;flex-direction:column;gap:16px;text-align:center;font-family:'Plus Jakarta Sans',sans-serif;font-size:28px;letter-spacing:-0.02em}
.mobile a{color:var(--ink)}

/* 6. Hero */
.hero{position:relative;padding:160px 0 80px;overflow:hidden}
.hero__bg{position:absolute;inset:0;pointer-events:none;z-index:0;overflow:hidden}
.orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.55;mix-blend-mode:screen}
.orb--1{width:520px;height:520px;background:radial-gradient(circle,#F97316,transparent 60%);top:-160px;left:-120px;animation:floatA 18s ease-in-out infinite}
.orb--2{width:600px;height:600px;background:radial-gradient(circle,#FB923C,transparent 60%);top:80px;right:-180px;opacity:.45;animation:floatB 22s ease-in-out infinite}
.orb--3{width:380px;height:380px;background:radial-gradient(circle,#7C3AED,transparent 60%);bottom:-120px;left:30%;opacity:.30;animation:floatA 26s ease-in-out infinite reverse}
@keyframes floatA{0%,100%{transform:translate(0,0)}50%{transform:translate(40px,30px)}}
@keyframes floatB{0%,100%{transform:translate(0,0)}50%{transform:translate(-30px,40px)}}
.grid-bg{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,0.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.04) 1px,transparent 1px);background-size:48px 48px;mask-image:radial-gradient(ellipse 70% 60% at 50% 40%,#000 30%,transparent 80%);opacity:.5}
.noise{position:absolute;inset:0;opacity:.05;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9'/><feColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .8 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}

.hero__grid{position:relative;z-index:1;display:grid;grid-template-columns:1.05fr 1fr;gap:60px;align-items:center}
.hero__copy{max-width:640px}
.hero__cta{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:32px}
.hero__meta{display:flex;align-items:center;gap:14px}
.avatars{display:flex}
.avatars span{width:32px;height:32px;border-radius:999px;border:2px solid #0B0B0F;margin-left:-10px;background:linear-gradient(135deg,#FB923C,#EA580C)}
.avatars span:nth-child(2){background:linear-gradient(135deg,#7C3AED,#4F46E5)}
.avatars span:nth-child(3){background:linear-gradient(135deg,#10B981,#0EA5E9)}
.avatars span:nth-child(4){background:linear-gradient(135deg,#F472B6,#E11D48)}
.avatars span:first-child{margin-left:0}
.hero__meta-text{font-size:13px;color:var(--ink-3)}
.hero__meta-text b{color:var(--ink-2);font-weight:600}
.stars{color:#FACC15;letter-spacing:1px;margin-right:6px}

/* Hero dashboard */
.hero__visual{position:relative;perspective:1600px}
.dash{
  position:relative;width:100%;border-radius:22px;overflow:hidden;
  background:linear-gradient(180deg,rgba(255,255,255,0.06),rgba(255,255,255,0.02));
  border:1px solid var(--line-2);
  box-shadow:0 50px 100px -30px rgba(0,0,0,0.7), 0 0 0 1px rgba(255,255,255,0.04) inset;
  transform:rotateX(8deg) rotateY(-10deg) rotateZ(1deg);
  transform-style:preserve-3d;
  will-change:transform;
}
.dash__chrome{display:flex;align-items:center;gap:8px;padding:12px 14px;background:rgba(255,255,255,0.03);border-bottom:1px solid var(--line)}
.dash__chrome > span{width:10px;height:10px;border-radius:50%;background:#3a3a44}
.dash__chrome > span:first-child{background:#EF4444}
.dash__chrome > span:nth-child(2){background:#F59E0B}
.dash__chrome > span:nth-child(3){background:#10B981}
.dash__url{margin-left:8px;font-size:11px;color:var(--ink-3);background:rgba(255,255,255,0.04);padding:4px 10px;border-radius:999px;font-family:'JetBrains Mono',monospace}
.dash__body{display:grid;grid-template-columns:140px 1fr;min-height:340px}
.dash__side{padding:14px 10px;border-right:1px solid var(--line);background:rgba(255,255,255,0.02)}
.dash__brand{display:flex;align-items:center;gap:8px;padding:8px 10px;margin-bottom:8px}
.dash__brand i{width:18px;height:18px;border-radius:6px;background:var(--grad-orange)}
.dash__brand b{font-size:12px;letter-spacing:-0.01em}
.dash__side ul li{display:flex;align-items:center;gap:10px;padding:8px 10px;font-size:12px;color:var(--ink-3);border-radius:8px;margin-bottom:2px}
.dash__side ul li.active{background:linear-gradient(180deg,rgba(249,115,22,0.12),rgba(249,115,22,0.04));color:var(--ink);border:1px solid rgba(249,115,22,0.25)}
.dash__side ul li i{width:12px;height:12px;border-radius:3px;background:rgba(255,255,255,0.18);display:inline-block}
.dash__side ul li.active i{background:var(--orange)}
.dash__main{padding:16px}
.dash__row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px}
.kpi{padding:12px;border-radius:12px;background:rgba(255,255,255,0.03);border:1px solid var(--line);display:flex;flex-direction:column;gap:4px}
.kpi span{font-size:10px;color:var(--ink-3);letter-spacing:0.08em;text-transform:uppercase}
.kpi b{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:18px;letter-spacing:-0.02em}
.kpi i{font-style:normal;font-size:10px}
.kpi .up{color:#10B981}
.kpi .down{color:#EF4444}
.dash__chart{height:140px;border-radius:12px;background:rgba(255,255,255,0.03);border:1px solid var(--line);padding:8px;margin-bottom:14px;overflow:hidden}
.dash__chart svg{width:100%;height:100%}
.chart-line{stroke-dasharray:1200;stroke-dashoffset:1200;animation:drawLine 2.4s var(--ease) .6s forwards}
@keyframes drawLine{to{stroke-dashoffset:0}}
.dash__bars{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;align-items:end}
.dash__bars > div{display:flex;flex-direction:column;align-items:center;gap:6px}
.dash__bars i{display:block;width:100%;height:70px;background:linear-gradient(180deg,rgba(255,255,255,0.04),rgba(255,255,255,0.02));border-radius:6px;position:relative;overflow:hidden}
.dash__bars i::after{content:"";position:absolute;left:0;right:0;bottom:0;height:var(--h);background:var(--grad-orange);border-radius:6px;transform-origin:bottom;animation:barIn 1.2s var(--ease) .8s both}
@keyframes barIn{from{transform:scaleY(0)}to{transform:scaleY(1)}}
.dash__bars span{font-size:9px;color:var(--ink-4)}

.float-card{
  position:absolute;display:flex;align-items:center;gap:10px;
  padding:10px 14px;border-radius:14px;
  background:rgba(20,20,28,0.85);border:1px solid var(--line-2);
  backdrop-filter:blur(14px);box-shadow:var(--shadow-soft);
  font-size:12px;animation:floatCard 6s ease-in-out infinite;
  z-index:2;
}
.float-card b{display:block;font-size:12px;color:var(--ink);font-weight:600}
.float-card span{display:block;font-size:11px;color:var(--ink-3);margin-top:2px}
.fc__ico{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:var(--grad-orange);font-size:16px}
.float-card--1{top:-45px;left:-30px;animation-delay:0s}
.float-card--2{bottom:20px;left:-50px;animation-delay:2s}
.float-card--3{top:40%;right:-40px;animation-delay:1s}
@keyframes floatCard{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}

/* Hero stats */
.hero__stats{position:relative;z-index:1;margin-top:90px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,255,255,0.02)}
.hero__stats-grid{display:grid;grid-template-columns:repeat(4,1fr);padding:32px 28px}
.hero__stats-grid > div{display:flex;flex-direction:column;gap:6px;padding:0 24px;border-left:1px solid var(--line)}
.hero__stats-grid > div:first-child{border-left:0;padding-left:0}
.hero__stats-grid b{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:clamp(36px,3.6vw,52px);letter-spacing:-0.03em;background:var(--grad-ink);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero__stats-grid span{font-size:13px;color:var(--ink-3);letter-spacing:0.04em}

/* 7. Trusted by */
.trusted{padding:60px 0 20px}
.trusted__label{text-align:center;color:var(--ink-3);font-size:12px;letter-spacing:0.22em;text-transform:uppercase;margin:0 0 30px}
.marquee{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.marquee__track{display:flex;gap:60px;width:max-content;animation:marquee 110s linear infinite}
.marquee__track:hover{animation-play-state:paused}
@keyframes marquee{to{transform:translateX(-50%)}}
.marquee__item{display:flex;align-items:center;gap:10px;color:var(--ink-3);font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:22px;letter-spacing:-0.01em;opacity:.7;transition:opacity .3s var(--ease), color .3s var(--ease)}
.marquee__item:hover{opacity:1;color:var(--ink)}
.marquee__item .dot{width:8px;height:8px;border-radius:2px;background:var(--orange);opacity:.6}

/* 8. Sections base */
.section{position:relative;padding:140px 0;overflow:hidden}
.section--alt{background:linear-gradient(180deg,transparent, rgba(255,255,255,0.02), transparent)}
.section__head{max-width:780px;margin:0 auto 70px;text-align:center}
.section__head--left{text-align:left;margin-left:0;margin-right:0}
.section__head--split{display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:center;text-align:left;max-width:none}
.section__head--split .h2{margin:0}
.section__lead{font-size:17px;color:var(--ink-2);max-width:640px;margin:0 auto}
.section__head--split .section__lead{margin:0}

/* 9. Services */
.services{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.service{
  position:relative;padding:28px;border-radius:var(--r-lg);
  background:linear-gradient(180deg,rgba(255,255,255,0.04),rgba(255,255,255,0.015));
  border:1px solid var(--line);overflow:hidden;
  transition:transform .5s var(--ease), border-color .5s var(--ease), background .5s var(--ease);
}
.service::before{
  content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;
  background:linear-gradient(135deg, rgba(249,115,22,0.5), transparent 40%, transparent 60%, rgba(249,115,22,0.5));
  -webkit-mask:linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;
  opacity:0;transition:opacity .5s var(--ease);pointer-events:none;
}
.service::after{
  content:"";position:absolute;width:240px;height:240px;left:var(--mx,50%);top:var(--my,50%);
  transform:translate(-50%,-50%);border-radius:50%;
  background:radial-gradient(circle, rgba(249,115,22,0.18), transparent 60%);
  opacity:0;transition:opacity .4s var(--ease);pointer-events:none;
}
.service:hover{transform:translateY(-6px);border-color:rgba(255,255,255,0.18)}
.service:hover::before{opacity:1}
.service:hover::after{opacity:1}
.service__ico{
  width:46px;height:46px;border-radius:12px;display:grid;place-items:center;
  background:linear-gradient(180deg,rgba(249,115,22,0.18),rgba(249,115,22,0.06));
  border:1px solid rgba(249,115,22,0.3);color:#FDBA74;margin-bottom:20px;
  transition:transform .5s var(--ease);
}
.service:hover .service__ico{transform:scale(1.08) rotate(-4deg)}
.service h3{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:18px;margin:0 0 8px;letter-spacing:-0.01em}
.service p{margin:0 0 18px;color:var(--ink-3);font-size:14.5px;line-height:1.6}
.service__link{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--ink-2);font-weight:500}
.service__link svg{transition:transform .3s var(--ease)}
.service:hover .service__link svg{transform:translateX(4px)}
.service__link{color:#FDBA74}

/* 10. Industries */
.industries{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.industry{
  position:relative;aspect-ratio:1/1.05;border-radius:18px;padding:18px;
  display:flex;flex-direction:column;justify-content:space-between;
  background:linear-gradient(180deg,rgba(255,255,255,0.04),rgba(255,255,255,0.015));
  border:1px solid var(--line);overflow:hidden;
  transition:transform .5s var(--ease), border-color .5s var(--ease);
}
.industry::before{
  content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 110%, rgba(249,115,22,0.3), transparent 60%);opacity:0;transition:opacity .5s var(--ease);
}
.industry:hover{transform:translateY(-4px);border-color:rgba(249,115,22,0.4)}
.industry:hover::before{opacity:1}
.industry__ico{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:rgba(255,255,255,0.06);color:#FDBA74;z-index:1}
.industry__name{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:16px;letter-spacing:-0.01em;z-index:1}
.industry__name small{display:block;font-weight:400;font-size:11px;color:var(--ink-3);margin-top:4px;letter-spacing:0}

/* 11. Why us */
.why{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.why__card{
  position:relative;padding:24px;border-radius:18px;
  background:linear-gradient(180deg,rgba(255,255,255,0.04),rgba(255,255,255,0.015));
  border:1px solid var(--line);transition:transform .4s var(--ease), border-color .4s var(--ease);
}
.why__card:hover{transform:translateY(-4px);border-color:rgba(255,255,255,0.18)}
.why__num{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--orange-2);margin-bottom:14px;letter-spacing:0.15em}
.why__card h4{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:16px;margin:0 0 6px;letter-spacing:-0.01em}
.why__card p{margin:0;color:var(--ink-3);font-size:13.5px;line-height:1.6}

/* 12. Process timeline */
.timeline{position:relative;display:grid;grid-template-columns:repeat(7,1fr);gap:10px}
.timeline::before{content:"";position:absolute;top:24px;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--line-2),transparent)}
.step{position:relative;padding-top:60px;text-align:center}
.step__dot{
  position:absolute;top:14px;left:50%;transform:translateX(-50%);
  width:22px;height:22px;border-radius:50%;background:#0B0B0F;border:1px solid var(--line-2);
  display:grid;place-items:center;
}
.step__dot::after{content:"";width:8px;height:8px;border-radius:50%;background:var(--orange);box-shadow:0 0 12px var(--orange-glow)}
.step__n{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--orange-2);margin-bottom:6px;letter-spacing:0.15em}
.step h4{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:15px;margin:0 0 6px;letter-spacing:-0.01em}
.step p{margin:0;color:var(--ink-3);font-size:12.5px;line-height:1.55}

/* 13. Features */
.features{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.feature{
  position:relative;padding:18px 18px 22px;border-radius:16px;
  background:linear-gradient(180deg,rgba(255,255,255,0.04),rgba(255,255,255,0.015));
  border:1px solid var(--line);display:flex;flex-direction:column;gap:10px;
  transition:transform .4s var(--ease), background .4s var(--ease);
}
.feature:hover{transform:translateY(-3px);background:linear-gradient(180deg,rgba(249,115,22,0.08),rgba(255,255,255,0.015))}
.feature__ico{width:34px;height:34px;border-radius:10px;background:rgba(255,255,255,0.06);display:grid;place-items:center;color:#FDBA74}
.feature h4{font-family:'Plus Jakarta Sans',sans-serif;font-weight:600;font-size:14.5px;margin:0;letter-spacing:-0.01em}
.feature p{margin:0;font-size:12.5px;color:var(--ink-3);line-height:1.55}

/* 14. Case studies */
.cases{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.case{
  position:relative;padding:24px;border-radius:20px;overflow:hidden;
  background:linear-gradient(180deg,rgba(255,255,255,0.05),rgba(255,255,255,0.02));
  border:1px solid var(--line);min-height:280px;
  display:flex;flex-direction:column;justify-content:space-between;
  transition:transform .5s var(--ease), border-color .5s var(--ease);
}
.case:hover{transform:translateY(-6px);border-color:rgba(255,255,255,0.2)}
.case--lg{grid-column:span 4}
.case--md{grid-column:span 3}
.case--sm{grid-column:span 2}
.case__tag{display:inline-flex;align-items:center;gap:8px;font-size:11px;color:var(--ink-3);letter-spacing:0.12em;text-transform:uppercase}
.case__tag i{width:6px;height:6px;border-radius:50%;background:var(--orange)}
.case h3{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:22px;letter-spacing:-0.02em;margin:14px 0 10px;line-height:1.15}
.case p{margin:0 0 18px;color:var(--ink-3);font-size:13.5px;line-height:1.55}
.case__metrics{display:flex;gap:18px;border-top:1px solid var(--line);padding-top:14px}
.case__metrics > div b{display:block;font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:22px;background:var(--grad-orange);-webkit-background-clip:text;background-clip:text;color:transparent;letter-spacing:-0.02em}
.case__metrics > div span{font-size:11px;color:var(--ink-3);letter-spacing:0.06em}
.case__visual{position:absolute;right:-40px;bottom:-40px;width:240px;height:240px;opacity:.5;pointer-events:none}

/* 15. Tech marquee */
.tech-marquee{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);padding:14px 0;margin-top:40px}
.tech-marquee--reverse .marquee__track{animation:marqueeR 100s linear infinite;margin-top:14px}
.tech-marquee .marquee__track{gap:14px;animation:marquee 105s linear infinite}
@keyframes marqueeR{from{transform:translateX(-50%)}to{transform:translateX(0)}}
.tech-chip{
  display:inline-flex;align-items:center;gap:10px;padding:14px 22px;border-radius:999px;
  background:linear-gradient(180deg,rgba(255,255,255,0.05),rgba(255,255,255,0.02));
  border:1px solid var(--line);font-family:'Plus Jakarta Sans',sans-serif;font-weight:600;font-size:15px;letter-spacing:-0.01em;
  color:var(--ink-2);transition:color .3s var(--ease), border-color .3s var(--ease)
}
.tech-chip:hover{color:var(--ink);border-color:rgba(249,115,22,0.5)}
.tech-chip i{width:10px;height:10px;border-radius:3px;background:var(--grad-orange)}

/* 16. Testimonials */
.testimonials{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.tcard{
  position:relative;padding:28px;border-radius:20px;
  background:linear-gradient(180deg,rgba(255,255,255,0.05),rgba(255,255,255,0.02));
  border:1px solid var(--line);display:flex;flex-direction:column;gap:18px;
  transition:transform .4s var(--ease), border-color .4s var(--ease)
}
.tcard:hover{transform:translateY(-4px);border-color:rgba(255,255,255,0.18)}
.tcard__rate{color:#FACC15;letter-spacing:2px}
.tcard__quote{font-size:16px;line-height:1.55;color:var(--ink);margin:0;letter-spacing:-0.01em}
.tcard__author{display:flex;align-items:center;gap:12px;border-top:1px solid var(--line);padding-top:18px;margin-top:auto}
.tcard__avatar{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,#FB923C,#EA580C);display:grid;place-items:center;color:#0B0B0F;font-family:'Plus Jakarta Sans',sans-serif;font-weight:700}
.tcard__author b{display:block;font-family:'Plus Jakarta Sans',sans-serif;font-weight:600;font-size:14px;letter-spacing:-0.01em}
.tcard__author span{display:block;font-size:12px;color:var(--ink-3)}
.tcard--placeholder{border-style:dashed;border-color:rgba(255,255,255,0.16)}
.tcard__photo-slot{width:100%;height:120px;border-radius:14px;border:1.5px dashed rgba(255,255,255,0.22);background:rgba(255,255,255,0.03);display:grid;place-items:center}
.tcard__photo-slot span{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}
.tcard__quote--placeholder{color:var(--ink-3);font-style:italic}
.tcard--placeholder .tcard__author b,.tcard--placeholder .tcard__author span{color:var(--ink-3);font-style:italic}

/* 17. Pricing */
.pricing{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:stretch}
.plan{
  position:relative;padding:32px;border-radius:22px;
  background:linear-gradient(180deg,rgba(255,255,255,0.04),rgba(255,255,255,0.015));
  border:1px solid var(--line);display:flex;flex-direction:column;
  transition:transform .4s var(--ease), border-color .4s var(--ease)
}
.plan:hover{transform:translateY(-4px);border-color:rgba(255,255,255,0.2)}
.plan--featured{background:linear-gradient(180deg,rgba(249,115,22,0.10),rgba(249,115,22,0.02));border-color:rgba(249,115,22,0.4);box-shadow:0 30px 80px -30px rgba(249,115,22,0.5)}
.plan__tag{position:absolute;top:-12px;left:32px;padding:5px 12px;border-radius:999px;background:var(--grad-orange);color:#0B0B0F;font-size:11px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase}
.plan h3{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:20px;margin:0 0 6px;letter-spacing:-0.01em}
.plan__sub{font-size:13px;color:var(--ink-3);margin:0 0 22px}
.plan__price{display:flex;align-items:baseline;gap:6px;margin-bottom:6px}
.plan__price b{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:46px;letter-spacing:-0.03em}
.plan__price span{color:var(--ink-3);font-size:14px}
.plan__note{font-size:12px;color:var(--ink-4);margin:0 0 24px}
.plan ul{display:flex;flex-direction:column;gap:10px;margin:0 0 28px}
.plan ul li{display:flex;gap:10px;font-size:14px;color:var(--ink-2)}
.plan ul li::before{content:"";flex:0 0 18px;height:18px;border-radius:50%;background:radial-gradient(circle,#FB923C 30%,transparent 60%);background-color:rgba(249,115,22,0.12);margin-top:3px}
.plan .btn{margin-top:auto}

/* 18. FAQ */
.faq__wrap{display:grid;grid-template-columns:0.9fr 1.4fr;gap:80px}
.faq{display:flex;flex-direction:column;gap:8px}
.faq__item{
  border:1px solid var(--line);border-radius:16px;overflow:hidden;
  background:linear-gradient(180deg,rgba(255,255,255,0.03),rgba(255,255,255,0.01));
  transition:border-color .3s var(--ease), background .3s var(--ease)
}
.faq__item.is-open{border-color:rgba(249,115,22,0.35);background:linear-gradient(180deg,rgba(249,115,22,0.05),rgba(255,255,255,0.01))}
.faq__q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 24px;text-align:left;font-family:'Plus Jakarta Sans',sans-serif;font-weight:600;font-size:16px;letter-spacing:-0.01em}
.faq__q i{flex:0 0 28px;height:28px;border-radius:50%;background:rgba(255,255,255,0.06);display:grid;place-items:center;transition:transform .35s var(--ease), background .35s var(--ease)}
.faq__item.is-open .faq__q i{background:var(--grad-orange);transform:rotate(45deg)}
.faq__q i::before,.faq__q i::after{content:"";position:absolute;background:var(--ink);border-radius:2px}
.faq__q i::before{width:10px;height:1.5px}
.faq__q i::after{width:1.5px;height:10px}
.faq__q i{position:relative}
.faq__a{max-height:0;overflow:hidden;transition:max-height .5s var(--ease)}
.faq__a-inner{padding:0 24px 22px;color:var(--ink-3);font-size:14.5px;line-height:1.65}

/* 19. Contact */
.contact{padding:120px 0 140px;position:relative}
.contact__bg{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.orb--c1{width:500px;height:500px;background:radial-gradient(circle,#F97316,transparent 60%);top:-100px;left:-100px;opacity:.3;animation:floatA 24s ease-in-out infinite}
.orb--c2{width:600px;height:600px;background:radial-gradient(circle,#7C3AED,transparent 60%);bottom:-200px;right:-200px;opacity:.25;animation:floatB 28s ease-in-out infinite}
.contact__grid{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1.1fr;gap:80px;align-items:center}
.contact__list{display:flex;flex-direction:column;gap:18px;margin-top:36px}
.contact__list li{display:flex;align-items:center;gap:14px}
.contact__list i{flex:0 0 38px;height:38px;border-radius:12px;display:grid;place-items:center;background:rgba(249,115,22,0.12);color:var(--orange-2);font-style:normal}
.contact__list b{display:block;font-family:'Plus Jakarta Sans',sans-serif;font-weight:600;font-size:14px;letter-spacing:-0.01em}
.contact__list span{display:block;font-size:13px;color:var(--ink-3)}

.glass{background:linear-gradient(180deg,rgba(255,255,255,0.06),rgba(255,255,255,0.02));border:1px solid var(--line-2);backdrop-filter:blur(20px) saturate(140%);border-radius:24px;box-shadow:var(--shadow-soft)}
.contact__form{padding:32px;display:flex;flex-direction:column;gap:8px}
.field{position:relative;padding-top:18px;margin-bottom:10px}
.field input,.field select,.field textarea{
  width:100%;padding:14px 0 10px;background:transparent;border:0;border-bottom:1px solid var(--line);
  font-size:15px;color:var(--ink);outline:none;
  transition:border-color .3s var(--ease);
}
.field textarea{resize:vertical;min-height:90px}
.field select{appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'><path d='M1 1.5l5 5 5-5' stroke='%238A8A95' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/></svg>");background-repeat:no-repeat;background-position:right 4px center}
.field select option{background:#14141C;color:var(--ink)}
.field label{position:absolute;top:32px;left:0;font-size:14px;color:var(--ink-3);pointer-events:none;transition:top .3s var(--ease), font-size .3s var(--ease), color .3s var(--ease)}
.field input:focus + label,.field input:not(:placeholder-shown) + label,
.field select:valid + label,.field select:focus + label,
.field textarea:focus + label,.field textarea:not(:empty) + label,
.field input:not(:invalid):not(:placeholder-shown) + label{top:0;font-size:11px;color:var(--orange-2);letter-spacing:0.1em;text-transform:uppercase}
.field input:not(:placeholder-shown):not(:focus) + label{top:0;font-size:11px}
.field .line{position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--grad-orange);transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease)}
.field input:focus ~ .line,.field select:focus ~ .line,.field textarea:focus ~ .line{transform:scaleX(1)}
.contact__legal{margin:14px 0 0;font-size:11px;color:var(--ink-4);text-align:center}

/* 20. Footer */
.footer{position:relative;padding:120px 0 30px;border-top:1px solid var(--line);background:linear-gradient(180deg,transparent,#08080C 60%)}
.footer__bg{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.orb--f{width:800px;height:600px;background:radial-gradient(ellipse,#F97316,transparent 60%);top:-300px;left:50%;transform:translateX(-50%);opacity:.18;filter:blur(100px)}
.footer__cta{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-bottom:80px;border-bottom:1px solid var(--line);margin-bottom:60px;position:relative;z-index:1}
.footer__cta .h2{font-size:clamp(34px,4vw,56px);margin:0}
.footer__grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:50px;position:relative;z-index:1}
.footer__brand p{color:var(--ink-3);font-size:14px;line-height:1.6;margin:20px 0 22px;max-width:340px}
.footer__news{display:flex;gap:8px;max-width:360px}
.footer__news input{flex:1;padding:12px 16px;background:rgba(255,255,255,0.04);border:1px solid var(--line);border-radius:999px;font-size:13px;outline:none}
.footer__news input:focus{border-color:rgba(249,115,22,0.5)}
.footer__news .btn{padding:10px 18px;font-size:13px}
.footer h4{font-family:'Plus Jakarta Sans',sans-serif;font-weight:600;font-size:13px;letter-spacing:0.06em;text-transform:uppercase;color:var(--ink);margin:0 0 18px}
.footer ul li{margin-bottom:10px}
.footer ul a{color:var(--ink-3);font-size:14px;transition:color .25s var(--ease)}
.footer ul a:hover{color:var(--ink)}
.footer__bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:40px;margin-top:60px;border-top:1px solid var(--line);font-size:12px;color:var(--ink-4);position:relative;z-index:1}
.socials{display:flex;gap:10px}
.socials a{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,0.04);border:1px solid var(--line);display:grid;place-items:center;color:var(--ink-3);transition:all .3s var(--ease)}
.socials a:hover{background:var(--grad-orange);border-color:transparent;color:#0B0B0F;transform:translateY(-2px)}

/* 21. Floating */
.totop{position:fixed;right:24px;bottom:24px;width:44px;height:44px;border-radius:50%;background:rgba(20,20,28,0.85);border:1px solid var(--line-2);backdrop-filter:blur(10px);display:grid;place-items:center;z-index:80;opacity:0;visibility:hidden;transform:translateY(10px);transition:all .35s var(--ease);color:var(--ink-2)}
.totop.is-visible{opacity:1;visibility:visible;transform:translateY(0)}
.totop:hover{color:var(--ink);border-color:rgba(255,255,255,0.25)}
.wa{position:fixed;right:24px;bottom:80px;width:52px;height:52px;border-radius:50%;background:#25D366;display:grid;place-items:center;z-index:80;box-shadow:0 16px 40px -10px rgba(37,211,102,0.5);transition:transform .3s var(--ease)}
.wa:hover{transform:scale(1.08)}
.cookie{position:fixed;left:24px;bottom:24px;display:flex;align-items:center;gap:16px;padding:14px 18px;border-radius:16px;background:rgba(20,20,28,0.9);border:1px solid var(--line-2);backdrop-filter:blur(14px);font-size:13px;color:var(--ink-2);z-index:80;max-width:420px;transition:opacity .3s, transform .3s var(--ease)}
.cookie.is-hidden{opacity:0;transform:translateY(20px);pointer-events:none}
.cookie .btn{padding:8px 14px;font-size:12px}

/* 22. Responsive */
@media (max-width: 1100px){
  .services,.features{grid-template-columns:repeat(2,1fr)}
  .industries{grid-template-columns:repeat(3,1fr)}
  .why{grid-template-columns:repeat(2,1fr)}
  .timeline{grid-template-columns:repeat(4,1fr) !important;gap:20px}
  .timeline::before{display:none}
  .cases{grid-template-columns:repeat(2,1fr)}
  .case--lg,.case--md,.case--sm{grid-column:span 1}
  .testimonials,.pricing{grid-template-columns:1fr}
  .pricing .plan{max-width:560px;margin:0 auto;width:100%}
  .faq__wrap{grid-template-columns:1fr;gap:40px}
  .contact__grid{grid-template-columns:1fr;gap:50px}
  .footer__grid{grid-template-columns:1fr 1fr;gap:40px}
  .footer__cta{flex-direction:column;align-items:flex-start}
  .section__head--split{grid-template-columns:1fr;gap:20px}
  .hero__grid{grid-template-columns:1fr;gap:80px}
  .hero__stats-grid{grid-template-columns:repeat(2,1fr);gap:24px}
  .hero__stats-grid > div{border-left:0;padding:0}
}
@media (max-width: 700px){
  .section{padding:90px 0}
  .nav__links,.nav__cta .btn--ghost{display:none}
  .nav__burger{display:flex}
  .nav{padding:0 8px 0 14px;height:58px}
  .nav__cta .btn--primary{padding:9px 14px;font-size:12px}
  .hero{padding:130px 0 60px}
  .display{font-size:44px}
  .h2{font-size:34px}
  .services,.industries,.features,.cases{grid-template-columns:1fr}
  .why{grid-template-columns:1fr}
  .timeline{grid-template-columns:repeat(2,1fr) !important}
  .float-card{display:none}
  .dash{transform:none}
  .contact__form{padding:24px}
  .footer__cta{padding-bottom:50px;margin-bottom:40px}
  .footer__grid{grid-template-columns:1fr}
  .footer__bottom{flex-direction:column;align-items:flex-start}
  .cookie{left:14px;right:14px;bottom:14px;max-width:none}
  .totop{right:14px;bottom:14px}
  .wa{right:14px;bottom:70px}
  .hero__stats-grid{grid-template-columns:1fr 1fr;padding:24px 0}
}

@media (prefers-reduced-motion: reduce){
  *{animation:none !important;transition:none !important}
  .reveal-up,.reveal-lines > span > *{opacity:1 !important;transform:none !important}
}

/* ==========================================================
   23. Advanced animation layer
   ========================================================== */
html.lenis{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto}
.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}
.lenis.lenis-stopped{overflow:hidden}

/* Magnetic + tilt cards */
[data-magnetic]{will-change:transform;transition:transform .35s var(--ease)}
[data-tilt]{transform-style:preserve-3d;transition:transform .25s var(--ease), box-shadow .35s var(--ease);will-change:transform}
[data-tilt] > *{transform:translateZ(0)}
[data-tilt] .service__ico,[data-tilt] h3,[data-tilt] p,[data-tilt] .service__link{transform:translateZ(30px)}

/* Cursor states for interactive surfaces */
.cursor.is-text{width:8px;height:8px;background:#fff;border-color:transparent}
.cursor.is-drag{width:80px;height:80px;background:rgba(249,115,22,0.18);border-color:#FB923C}

/* Service spotlight glow upgrade */
.service{--mx:50%;--my:50%}
.service::after{transition:opacity .6s var(--ease), transform .25s var(--ease)}

/* Gradient ring sweep on featured plan */
.plan--featured{position:relative;isolation:isolate}
.plan--featured::after{
  content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;pointer-events:none;
  background:conic-gradient(from var(--a,0deg), transparent 0 50%, rgba(255,200,150,0.9) 60%, transparent 75%);
  -webkit-mask:linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;
  animation:ringSpin 6s linear infinite;
}
@keyframes ringSpin{to{--a:360deg}}
@property --a{syntax:'<angle>';inherits:false;initial-value:0deg}

/* Marquee gradient hover acceleration */
.marquee__track{transition:filter .4s var(--ease)}
.marquee:hover .marquee__track{filter:brightness(1.2)}

/* Industry icon glow on hover */
.industry__ico{transition:transform .5s var(--ease), background .5s var(--ease), color .5s var(--ease), box-shadow .5s var(--ease)}
.industry:hover .industry__ico{transform:scale(1.15) rotate(-6deg);background:var(--grad-orange);color:#0B0B0F;box-shadow:0 10px 30px -8px var(--orange-glow)}

/* Feature shimmer */
.feature{position:relative;overflow:hidden}
.feature::after{
  content:"";position:absolute;inset:0;border-radius:inherit;
  background:linear-gradient(120deg,transparent 30%, rgba(255,255,255,0.06) 50%, transparent 70%);
  transform:translateX(-110%);transition:transform .9s var(--ease);pointer-events:none;
}
.feature:hover::after{transform:translateX(110%)}

/* Case visual sweep */
.case{position:relative;isolation:isolate;overflow:hidden}
.case::before{
  content:"";position:absolute;inset:auto -40% -60% auto;width:380px;height:380px;border-radius:50%;
  background:radial-gradient(circle, rgba(249,115,22,0.22), transparent 60%);
  opacity:0;transition:opacity .6s var(--ease), transform .6s var(--ease);transform:translate(40px,40px);z-index:-1;
}
.case:hover::before{opacity:1;transform:translate(0,0)}

/* Testimonial quote mark */
.tcard{position:relative;overflow:hidden}
.tcard::before{
  content:"\201C";position:absolute;top:-20px;right:16px;font-family:'Plus Jakarta Sans',serif;
  font-size:160px;line-height:1;color:rgba(249,115,22,0.10);pointer-events:none;
}

/* KPI count-up shimmer */
.kpi b{background:var(--grad-ink);-webkit-background-clip:text;background-clip:text;color:transparent}

/* Hero entrance polish — start states (JS overrides) */
.hero__copy .eyebrow,.hero__copy .lead,.hero__cta,.hero__meta{will-change:transform,opacity}
.hero__visual{will-change:transform}
.dash{transition:transform .6s var(--ease), box-shadow .6s var(--ease)}
.dash:hover{box-shadow:0 40px 100px -30px rgba(249,115,22,0.45)}

/* Float-card hover lift */
.float-card{transition:transform .35s var(--ease), box-shadow .35s var(--ease)}
.float-card:hover{transform:translateY(-4px) scale(1.04);box-shadow:0 20px 40px -15px rgba(0,0,0,0.6)}

/* Loader morphing logo glow */
.loader__mark{filter:drop-shadow(0 12px 30px rgba(249,115,22,0.45));animation:logoIn 1.2s var(--ease) both, logoPulse 3s ease-in-out 1.2s infinite}
@keyframes logoPulse{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-4px) scale(1.04)}}

/* Loader quote — typewriter caret bar removed in favor of fade */
.loader__quote{transition:opacity .4s var(--ease), transform .4s var(--ease)}

/* Scroll-pin section progress accent */
.section__head .eyebrow{opacity:0;transform:translateY(20px);transition:opacity .8s var(--ease), transform .8s var(--ease)}
.section__head.is-in .eyebrow,.section__head--split.is-in .eyebrow{opacity:1;transform:none}

/* Magnetic links underline reveal */
.nav__links a{position:relative}
.nav__links a::after{content:"";position:absolute;left:14px;right:14px;bottom:8px;height:1px;background:var(--grad-orange);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.nav__links a:hover::after{transform:scaleX(1)}

/* ==========================================================
   24. Cinematic layer — mesh canvas, trail, split, confetti
   ========================================================== */
.mesh-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;mix-blend-mode:screen;opacity:.9;z-index:0;animation:meshSlow 14s ease-in-out infinite}
@keyframes meshSlow{0%,100%{filter:hue-rotate(0deg)}50%{filter:hue-rotate(8deg)}}
.trail-dot{position:fixed;width:6px;height:6px;border-radius:50%;background:radial-gradient(circle,#FB923C 0%,transparent 70%);pointer-events:none;z-index:9997;mix-blend-mode:screen;transform:translate(-50%,-50%);will-change:transform,opacity}
.split-char{display:inline-block;will-change:transform,opacity}
.visit-badge{position:fixed;left:50%;top:24px;transform:translateX(-50%) translateY(-80px);display:flex;align-items:center;gap:10px;padding:10px 18px;border-radius:999px;background:rgba(20,20,28,0.85);border:1px solid rgba(249,115,22,0.45);backdrop-filter:blur(14px);font-size:12.5px;color:var(--ink);font-family:'Plus Jakarta Sans',sans-serif;font-weight:600;letter-spacing:-0.01em;z-index:200;box-shadow:0 18px 60px -20px rgba(249,115,22,0.45);transition:transform .7s var(--ease),opacity .7s var(--ease);opacity:0}
.visit-badge.is-in{transform:translateX(-50%) translateY(0);opacity:1}
.visit-badge.is-out{transform:translateX(-50%) translateY(-80px);opacity:0}
.visit-badge i{width:8px;height:8px;border-radius:50%;background:var(--grad-orange);box-shadow:0 0 12px var(--orange);animation:pulseDot 1.6s ease-in-out infinite}
@keyframes pulseDot{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.6);opacity:.5}}
.confetti-piece{position:fixed;width:8px;height:14px;top:0;left:0;pointer-events:none;z-index:9996;border-radius:1px;will-change:transform,opacity}
.plan{--mx:50%;--my:50%;position:relative;overflow:hidden}
.plan::after{content:"";position:absolute;width:380px;height:380px;left:var(--mx);top:var(--my);transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(249,115,22,0.18),transparent 60%);opacity:0;transition:opacity .5s var(--ease);pointer-events:none}
.plan:hover::after{opacity:1}
.dash{transform-style:preserve-3d;transition:transform .5s var(--ease)}
.float-card{transform-style:preserve-3d}
.plan ul li{opacity:0;transform:translateX(-8px);transition:opacity .5s var(--ease),transform .5s var(--ease)}
.plan.is-in ul li{opacity:1;transform:none}
.plan.is-in ul li:nth-child(1){transition-delay:.05s}
.plan.is-in ul li:nth-child(2){transition-delay:.10s}
.plan.is-in ul li:nth-child(3){transition-delay:.15s}
.plan.is-in ul li:nth-child(4){transition-delay:.20s}
.plan.is-in ul li:nth-child(5){transition-delay:.25s}
.plan.is-in ul li:nth-child(6){transition-delay:.30s}
.btn--primary.is-success{background:linear-gradient(180deg,#A7F3D0 0%,#10B981 60%,#047857 100%);color:#062e22}

/* ==========================================================
   25. Cinematic 2.0 — particle field, accent shift, flips,
       blob cursor, easter egg, section sweep, curtain wipe
   ========================================================== */
:root{--accent-h:18;--accent-s:95%;--accent-l:55%}
.accent-tint::selection{background:hsl(var(--accent-h) var(--accent-s) var(--accent-l));color:#fff}

/* Particle network canvas in hero */
.particles-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1;mix-blend-mode:screen;opacity:.85}

/* Cursor blob (replaces transition while morphing) */
.cursor{will-change:transform,width,height,border-radius;backdrop-filter:invert(0)}
.cursor.is-morph{border-radius:18px;mix-blend-mode:difference;background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.65)}

/* 3D card flip-in for cases */
.case{transform-origin:bottom center;backface-visibility:hidden}
.case.is-flipping{animation:flipIn 1s var(--ease) both}
@keyframes flipIn{0%{opacity:0;transform:perspective(1200px) rotateX(-65deg) translateY(60px)}60%{opacity:1}100%{opacity:1;transform:perspective(1200px) rotateX(0) translateY(0)}}

/* Section enter sweep — a soft orange diagonal light wipes across */
.section{position:relative}
.section::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(115deg, transparent 35%, rgba(249,115,22,0.10) 50%, transparent 65%);
  transform:translateX(-110%);transition:transform 1.4s var(--ease);
  z-index:0;mix-blend-mode:screen;
}
.section.is-sweep::after{transform:translateX(110%)}
.section > *{position:relative;z-index:1}

/* SVG icon draw-on */
.service__ico svg path,.industry__ico svg path,.feature__ico svg path,
.service__ico svg circle,.industry__ico svg circle,.feature__ico svg circle,
.service__ico svg rect,.industry__ico svg rect{
  stroke-dasharray:160;stroke-dashoffset:160;transition:stroke-dashoffset 1.2s var(--ease)
}
.is-in .service__ico svg path,.is-in .industry__ico svg path,.is-in .feature__ico svg path,
.is-in .service__ico svg circle,.is-in .industry__ico svg circle,.is-in .feature__ico svg circle,
.is-in .service__ico svg rect,.is-in .industry__ico svg rect,
.service.is-in svg *, .industry.is-in svg *, .feature.is-in svg *{stroke-dashoffset:0}

/* Loader curtain wipe */
.loader{clip-path:inset(0 0 0 0);transition:clip-path 1s var(--ease), opacity .6s var(--ease), visibility .6s var(--ease)}
.loader.is-done{clip-path:inset(100% 0 0 0);opacity:0;visibility:hidden}

/* Hero stat live ticker pulse */
.hero__stats-grid b{transition:transform .35s var(--ease), filter .35s var(--ease)}
.hero__stats-grid b.is-tick{transform:scale(1.05);filter:brightness(1.2)}

/* CTA button particle dock — points emit on hover */
.btn--primary{overflow:visible}

/* Konami burst overlay */
.konami{position:fixed;inset:0;display:none;align-items:center;justify-content:center;z-index:9995;pointer-events:none}
.konami.is-on{display:flex}
.konami__text{
  font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:clamp(40px,8vw,120px);
  letter-spacing:-0.04em;line-height:1;text-align:center;
  background:linear-gradient(120deg,#FDBA74,#F97316,#7C3AED,#FB923C);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 18px 60px rgba(249,115,22,0.7));
  animation:konamiIn .9s var(--ease), konamiOut .6s var(--ease) 2.4s forwards;
}
@keyframes konamiIn{from{opacity:0;transform:scale(.7) rotate(-6deg)}to{opacity:1;transform:scale(1) rotate(0)}}
@keyframes konamiOut{to{opacity:0;transform:scale(1.1)}}

/* Theme accent applied via custom prop */
.eyebrow .dot,.kpi i.up,.case__tag i,.step__dot::after,.industry__ico,.feature__ico,.service__ico{
  /* keep base look; accent var listens through gradients elsewhere */
}
.btn--primary{
  background:linear-gradient(180deg, hsl(calc(var(--accent-h) + 8) calc(var(--accent-s)) calc(var(--accent-l) + 18%)) 0%,
            hsl(var(--accent-h) var(--accent-s) var(--accent-l)) 55%,
            hsl(calc(var(--accent-h) - 6) calc(var(--accent-s) - 4%) calc(var(--accent-l) - 14%)) 100%);
  box-shadow:0 1px 0 rgba(255,255,255,0.6) inset, 0 10px 30px -8px hsla(var(--accent-h) var(--accent-s) var(--accent-l) / .55);
  transition:background .8s var(--ease), box-shadow .8s var(--ease);
}

/* Floating ambient orbs around hero CTA */
.btn-aura{position:absolute;width:8px;height:8px;border-radius:50%;background:radial-gradient(circle, hsl(var(--accent-h) var(--accent-s) calc(var(--accent-l) + 10%)),transparent 70%);pointer-events:none;mix-blend-mode:screen;will-change:transform,opacity}

/* Reveal pump for whole card on first appearance */
.service,.industry,.why__card,.feature,.tcard,.plan,.case{transition:transform .55s var(--ease), border-color .55s var(--ease), box-shadow .55s var(--ease)}

/* ==========================================================
   26. Cinematic 3.0 — local video, depth, holographic motion
   ========================================================== */
.hero-video{
  position:absolute;inset:-6%;width:112%;height:112%;object-fit:cover;z-index:-1;
  opacity:.36;filter:saturate(1.25) contrast(1.08) brightness(.82);
  transform:scale(1.04);animation:heroVideoBreath 13s ease-in-out infinite;
}
.hero-video__shade{position:absolute;inset:0;z-index:0;background:radial-gradient(ellipse at 55% 25%,rgba(249,115,22,.10),transparent 42%),linear-gradient(90deg,rgba(11,11,15,.86) 0%,rgba(11,11,15,.48) 46%,rgba(11,11,15,.78) 100%),linear-gradient(180deg,rgba(11,11,15,.20),#0b0b0f 92%);pointer-events:none}
@keyframes heroVideoBreath{0%,100%{transform:scale(1.04) translate3d(0,0,0)}50%{transform:scale(1.095) translate3d(-1.2%,1.4%,0)}}
.hero__bg::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:2;background:repeating-linear-gradient(0deg,rgba(255,255,255,.03) 0 1px,transparent 1px 4px);mix-blend-mode:overlay;opacity:.16;animation:scanDrift 9s linear infinite}
@keyframes scanDrift{to{transform:translateY(28px)}}
.hero-feed{position:absolute;right:-34px;bottom:-54px;width:min(280px,38vw);border:1px solid rgba(255,255,255,.18);border-radius:22px;overflow:hidden;background:rgba(15,15,22,.72);backdrop-filter:blur(16px) saturate(150%);box-shadow:0 34px 80px -34px rgba(249,115,22,.55);z-index:5;transform:translate3d(var(--feed-x,0),var(--feed-y,0),0) rotateX(8deg) rotateY(-12deg)}
.hero-feed video{display:block;width:100%;height:150px;object-fit:cover;filter:saturate(1.25) contrast(1.08)}
.hero-feed::after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 35%,rgba(255,255,255,.18) 48%,transparent 60%);transform:translateX(-120%);animation:holoSweep 4.8s ease-in-out infinite;pointer-events:none;mix-blend-mode:screen}
.hero-feed__hud{position:absolute;left:12px;right:12px;bottom:12px;padding:10px 12px;border-radius:14px;background:rgba(8,8,12,.72);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(10px)}
.hero-feed__hud span,.cinema-card__hud span{display:block;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--orange-2);margin-bottom:4px}.hero-feed__hud b,.cinema-card__hud b{display:block;font-family:'Plus Jakarta Sans',sans-serif;font-size:13px;letter-spacing:-.01em;color:var(--ink)}
@keyframes holoSweep{0%,45%{transform:translateX(-120%)}70%,100%{transform:translateX(120%)}}
.section--cinema{padding-top:120px;background:radial-gradient(900px 520px at 70% 0%,rgba(249,115,22,.13),transparent 58%),linear-gradient(180deg,rgba(255,255,255,.015),rgba(255,255,255,.035),rgba(255,255,255,.01))}
.section--cinema::before{content:"";position:absolute;inset:7% 0 auto 0;height:1px;background:linear-gradient(90deg,transparent,rgba(249,115,22,.55),transparent);box-shadow:0 0 42px rgba(249,115,22,.55);opacity:.65}
.cinema-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:22px;perspective:1600px;align-items:stretch}
.cinema-card{--mx:50%;--my:50%;position:relative;min-height:330px;border-radius:28px;overflow:hidden;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.04);box-shadow:0 46px 110px -58px rgba(0,0,0,.9),0 0 0 1px rgba(255,255,255,.04) inset;transform-style:preserve-3d;isolation:isolate;transition:transform .55s var(--ease),border-color .55s var(--ease),box-shadow .55s var(--ease);will-change:transform}
.cinema-card--wide{grid-row:span 2;min-height:690px}.cinema-card:hover{border-color:rgba(249,115,22,.46);box-shadow:0 54px 130px -58px rgba(249,115,22,.58),0 0 0 1px rgba(255,255,255,.06) inset}.cinema-card video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(1.18) contrast(1.08) brightness(.88);transform:scale(1.04);transition:transform 1.2s var(--ease),filter .7s var(--ease)}.cinema-card:hover video{transform:scale(1.1);filter:saturate(1.35) contrast(1.15) brightness(1)}
.cinema-card::before{content:"";position:absolute;inset:0;z-index:1;background:radial-gradient(360px 260px at var(--mx) var(--my),rgba(249,115,22,.22),transparent 62%),linear-gradient(180deg,transparent 0%,rgba(8,8,12,.28) 42%,rgba(8,8,12,.88) 100%);pointer-events:none}.cinema-card::after{content:"";position:absolute;inset:0;z-index:2;background:repeating-linear-gradient(0deg,rgba(255,255,255,.06) 0 1px,transparent 1px 5px);opacity:.10;mix-blend-mode:screen;pointer-events:none;animation:scanDrift 7s linear infinite}.cinema-card__hud{position:absolute;z-index:3;left:24px;top:24px;padding:13px 15px;border-radius:16px;background:rgba(8,8,12,.58);border:1px solid rgba(255,255,255,.13);backdrop-filter:blur(14px)}.cinema-card__caption{position:absolute;z-index:3;left:24px;right:24px;bottom:24px;color:var(--ink-2);font-size:15px;line-height:1.55;max-width:560px;padding-top:18px;border-top:1px solid rgba(255,255,255,.12)}.cinema-card.is-paused video{filter:grayscale(.35) brightness(.72)}
.cinema-card.is-in{animation:cinemaRise 1.1s var(--ease) both}@keyframes cinemaRise{from{opacity:0;transform:translateY(70px) rotateX(-16deg) scale(.96)}to{opacity:1;transform:translateY(0) rotateX(0) scale(1)}}
.motion-meter{position:fixed;left:24px;top:50%;transform:translateY(-50%);width:3px;height:160px;background:rgba(255,255,255,.08);border-radius:999px;z-index:70;overflow:hidden;opacity:.62;pointer-events:none}.motion-meter span{position:absolute;left:0;right:0;bottom:0;height:var(--motion,12%);background:var(--grad-orange);border-radius:999px;box-shadow:0 0 22px rgba(249,115,22,.85);transition:height .22s var(--ease)}
@media (max-width:1100px){.cinema-grid{grid-template-columns:1fr}.cinema-card--wide{grid-row:auto;min-height:420px}.cinema-card{min-height:360px}.hero-feed{right:10px;bottom:-72px}}
@media (max-width:700px){.hero-video{opacity:.22}.hero-feed{display:none}.section--cinema{padding-top:90px}.cinema-card,.cinema-card--wide{min-height:320px;border-radius:22px}.cinema-card__hud{left:16px;top:16px}.cinema-card__caption{left:16px;right:16px;bottom:16px;font-size:13.5px}.motion-meter{display:none}}
@media (prefers-reduced-motion:reduce){.hero-video,.hero-feed video,.cinema-card video{animation:none !important}.cinema-card::after,.hero-feed::after{display:none}}
.hero-video{z-index:0}.hero-video__shade{z-index:1}.hero__bg .orb,.hero__bg .grid-bg,.hero__bg .noise,.hero__bg .mesh-canvas,.hero__bg .particles-canvas{z-index:2}
.section__head .eyebrow.reveal-up.is-in,.section__head--split .eyebrow.reveal-up.is-in{opacity:1;transform:none}

/* ==========================================================
   27. Brand + photo motion lab — supplied assets integrated
   ========================================================== */
.nav__logo--image{width:70%;height:38px;border-radius:12px;object-fit:contain;padding:3px;box-shadow:0 12px 30px -18px rgba(249,115,22,.55)}
.loader__mark--logo{width:min(230px,62vw);height:auto;border-radius:18px;object-fit:contain;padding:10px;background:rgba(255,255,255,.94);box-shadow:0 30px 90px -32px rgba(249,115,22,.75);animation:logoIn 1.2s var(--ease) both, logoPulse 3s ease-in-out 1.2s infinite}
.hero-brand-burst{position:relative;display:inline-flex;align-items:center;gap:12px;margin:-8px 0 22px;padding:8px 14px 8px 8px;border-radius:999px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.13);backdrop-filter:blur(14px);box-shadow:0 18px 60px -36px rgba(249,115,22,.55);overflow:hidden;isolation:isolate}.hero-brand-burst::before{content:"";position:absolute;inset:-120% -40%;background:conic-gradient(from 0deg,transparent,rgba(249,115,22,.28),transparent,rgba(255,255,255,.16),transparent);animation:brandSpin 7s linear infinite;z-index:-1}.hero-brand-burst img{width:84px;height:38px;object-fit:contain;border-radius:999px;background:rgba(255,255,255,.92);padding:4px}.hero-brand-burst span{font-size:12px;color:var(--ink-2);letter-spacing:.08em;text-transform:uppercase}@keyframes brandSpin{to{transform:rotate(360deg)}}
.media-lab{background:radial-gradient(1000px 620px at 12% 20%,rgba(249,115,22,.14),transparent 58%),radial-gradient(820px 520px at 88% 60%,rgba(124,58,237,.13),transparent 62%)}
.media-lab__grid{display:grid;grid-template-columns:1.05fr .95fr;grid-template-rows:360px 360px;gap:24px;perspective:1700px}.logo-stage,.photo-frame,.photo-stack{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.14);border-radius:30px;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02));box-shadow:0 50px 130px -72px rgba(0,0,0,.92),0 0 0 1px rgba(255,255,255,.035) inset;transform-style:preserve-3d;will-change:transform,clip-path,opacity}.logo-stage{grid-row:span 2;display:grid;place-items:center;isolation:isolate;min-height:744px}.logo-stage::before,.photo-frame::before,.photo-stack::before{content:"";position:absolute;inset:0;background:radial-gradient(420px 320px at var(--mx,50%) var(--my,50%),rgba(249,115,22,.24),transparent 68%),linear-gradient(135deg,rgba(255,255,255,.08),transparent 35%,rgba(255,255,255,.03));mix-blend-mode:screen;opacity:.9;pointer-events:none;z-index:2}.logo-stage::after,.photo-frame::after,.photo-stack::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,rgba(255,255,255,.04) 0 1px,transparent 1px 9px),repeating-linear-gradient(0deg,rgba(255,255,255,.025) 0 1px,transparent 1px 7px);opacity:.18;pointer-events:none;z-index:3;animation:scanDrift 8s linear infinite}.logo-stage > img{position:relative;z-index:4;width:min(420px,70%);height:auto;padding:22px;border-radius:34px;background:rgba(255,255,255,.94);box-shadow:0 36px 110px -40px rgba(249,115,22,.8);transform:translateZ(70px);filter:drop-shadow(0 18px 60px rgba(249,115,22,.25))}.logo-stage__canvas{position:absolute;inset:0;width:100%;height:100%;z-index:1;opacity:.88;mix-blend-mode:screen}.logo-stage__rings{position:absolute;inset:8%;display:grid;place-items:center;z-index:0;pointer-events:none}.logo-stage__rings i{position:absolute;border:1px solid rgba(249,115,22,.28);border-radius:50%;box-shadow:0 0 42px rgba(249,115,22,.16);animation:orbitRing 14s linear infinite}.logo-stage__rings i:nth-child(1){width:86%;height:86%}.logo-stage__rings i:nth-child(2){width:68%;height:68%;animation-direction:reverse;animation-duration:18s}.logo-stage__rings i:nth-child(3){width:48%;height:48%;animation-duration:10s}@keyframes orbitRing{to{transform:rotate(360deg)}}.logo-stage__hud,.photo-frame__label,.photo-stack__copy{position:absolute;z-index:5;left:24px;right:24px;bottom:24px;padding:14px 16px;border-radius:18px;background:rgba(8,8,12,.62);border:1px solid rgba(255,255,255,.13);backdrop-filter:blur(16px)}.logo-stage__hud span,.photo-frame__label span,.photo-stack__copy span{display:block;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--orange-2);margin-bottom:5px}.logo-stage__hud b,.photo-frame__label b,.photo-stack__copy b{display:block;font-family:'Plus Jakarta Sans',sans-serif;font-size:15px;letter-spacing:-.01em;color:var(--ink)}
.photo-frame{--gx:0px;--gy:0px;min-height:360px}.photo-frame--tall{min-height:360px}.photo-frame > img:first-child{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(1.08) contrast(1.06) brightness(.86);transform:scale(1.06) translate3d(calc(var(--gx) * -1),calc(var(--gy) * -1),0);transition:transform .7s var(--ease),filter .7s var(--ease)}.photo-frame:hover > img:first-child{filter:saturate(1.25) contrast(1.12) brightness(.98);transform:scale(1.12) translate3d(calc(var(--gx) * -1.2),calc(var(--gy) * -1.2),0)}.photo-frame__ghost{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;mix-blend-mode:screen;filter:contrast(1.2) saturate(1.6);z-index:1;transition:opacity .35s var(--ease),transform .35s var(--ease)}.photo-frame:hover .photo-frame__ghost{opacity:.22}.photo-frame__ghost--r{transform:translate3d(calc(var(--gx) + 5px),calc(var(--gy) * .3),0);filter:hue-rotate(320deg) saturate(2)}.photo-frame__ghost--b{transform:translate3d(calc(var(--gx) * -1 - 5px),calc(var(--gy) * -.4),0);filter:hue-rotate(165deg) saturate(2)}.photo-frame__label{left:18px;right:18px;bottom:18px}.photo-stack{display:grid;place-items:center;min-height:360px;background:radial-gradient(circle at 40% 35%,rgba(249,115,22,.12),transparent 38%),rgba(255,255,255,.035)}.photo-stack__card{position:absolute;width:58%;height:60%;border-radius:24px;overflow:hidden;border:1px solid rgba(255,255,255,.14);box-shadow:0 34px 90px -38px rgba(0,0,0,.9);transition:transform .8s var(--ease);will-change:transform}.photo-stack__card img{width:100%;height:100%;object-fit:cover;filter:saturate(1.12) contrast(1.05)}.photo-stack__card--a{transform:translate3d(-16%,-10%,60px) rotate(-8deg)}.photo-stack__card--b{transform:translate3d(18%,8%,100px) rotate(8deg)}.photo-stack:hover .photo-stack__card--a{transform:translate3d(-23%,-13%,90px) rotate(-13deg) scale(1.04)}.photo-stack:hover .photo-stack__card--b{transform:translate3d(25%,11%,130px) rotate(13deg) scale(1.04)}.photo-stack__copy{top:20px;bottom:auto;max-width:310px}.media-lab .is-in.logo-stage,.media-lab .is-in.photo-frame,.media-lab .is-in.photo-stack{animation:assetReveal 1.05s var(--ease) both}@keyframes assetReveal{0%{opacity:0;clip-path:inset(18% 18% 18% 18% round 36px);transform:translateY(70px) rotateX(-18deg) scale(.94)}70%{opacity:1}100%{opacity:1;clip-path:inset(0 0 0 0 round 30px);transform:none}}
@media (max-width:1100px){.media-lab__grid{grid-template-columns:1fr;grid-template-rows:auto}.logo-stage{grid-row:auto;min-height:520px}.photo-frame,.photo-stack{min-height:380px}}
@media (max-width:700px){.nav__logo--image{width:70%;height:32px}.nav__wordmark i{display:none}.hero-brand-burst{display:none}.media-lab__grid{gap:16px}.logo-stage{min-height:430px;border-radius:22px}.logo-stage > img{width:78%;padding:14px;border-radius:22px}.photo-frame,.photo-stack{min-height:310px;border-radius:22px}.photo-stack__card{width:66%;height:54%}.logo-stage__hud,.photo-frame__label,.photo-stack__copy{left:14px;right:14px;bottom:14px}}

/* ==========================================================
   28. Official logo + photo runway upgrade
   ========================================================== */
.nav__logo--image{width:70%;height:44px;border-radius:14px;padding:4px;object-fit:contain;box-shadow:0 16px 42px -20px rgba(249,115,22,.8);animation:officialLogoFloat 4.8s ease-in-out infinite}.nav__brand:hover .nav__logo--image{animation:officialLogoFloat 1.8s ease-in-out infinite, officialLogoGlitch .55s steps(2,end) 1}@keyframes officialLogoFloat{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-2px) rotate(-1.5deg)}}@keyframes officialLogoGlitch{0%,100%{filter:none}22%{filter:drop-shadow(2px 0 #fb923c) drop-shadow(-2px 0 #3b82f6)}48%{transform:translateX(1px) rotate(1deg)}72%{filter:drop-shadow(-2px 0 #fb923c) drop-shadow(2px 0 #10b981)}}
.loader__mark--logo{width:min(150px,44vw);padding:14px;border-radius:32px;background:rgba(255,255,255,.96)}
.hero-brand-burst img{width:48px;height:48px;border-radius:15px;padding:5px}.hero-brand-burst{box-shadow:0 18px 70px -32px rgba(249,115,22,.7),0 0 0 1px rgba(255,255,255,.05) inset}.hero-brand-burst::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.22),transparent 65%);transform:translateX(-115%);animation:logoBadgeSweep 3.6s ease-in-out infinite;pointer-events:none}@keyframes logoBadgeSweep{0%,45%{transform:translateX(-115%)}75%,100%{transform:translateX(115%)}}
.media-lab__grid{grid-template-columns:repeat(12,1fr);grid-template-rows:360px 360px;align-items:stretch}.logo-stage{grid-column:1 / span 6;grid-row:1 / span 2;min-height:744px}.media-lab .photo-frame--tall{grid-column:7 / span 6;grid-row:1}.media-lab .photo-frame:not(.photo-frame--tall){grid-column:7 / span 3;grid-row:2}.photo-stack{grid-column:10 / span 3;grid-row:2}.logo-stage > img{width:min(260px,56%);border-radius:38px;padding:18px;animation:officialHeroLogo 5.5s ease-in-out infinite}.logo-stage__pixel{position:absolute;inset:0;width:100%;height:100%;z-index:2;mix-blend-mode:screen;opacity:.92;pointer-events:none}@keyframes officialHeroLogo{0%,100%{transform:translateZ(70px) rotateY(0) scale(1)}50%{transform:translateZ(90px) rotateY(-4deg) scale(1.035)}}
.media-lab__grid--single{grid-template-columns:1fr;grid-template-rows:auto;display:flex;justify-content:center}.media-lab__grid--single .photo-stack{grid-column:auto;grid-row:auto;width:min(560px,100%);min-height:420px}
.photo-stack__card--c{transform:translate3d(4%,28%,30px) rotate(1deg);opacity:.88}.photo-stack:hover .photo-stack__card--c{transform:translate3d(2%,36%,70px) rotate(0deg) scale(1.02)}
.photo-runway{position:relative;margin-top:26px;overflow:hidden;border:1px solid rgba(255,255,255,.10);border-radius:28px;background:rgba(255,255,255,.025);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);box-shadow:0 32px 100px -70px rgba(249,115,22,.65)}.photo-runway::before{content:"";position:absolute;inset:0;background:radial-gradient(600px 180px at var(--mx,50%) 50%,rgba(249,115,22,.16),transparent 70%);z-index:2;pointer-events:none}.photo-runway__track{display:flex;gap:18px;width:max-content;padding:22px;animation:photoRunway 24s linear infinite;will-change:transform}.photo-runway:hover .photo-runway__track{animation-play-state:paused}.photo-runway figure{position:relative;width:310px;height:180px;margin:0;border-radius:22px;overflow:hidden;flex:0 0 auto;border:1px solid rgba(255,255,255,.14);box-shadow:0 24px 70px -42px rgba(0,0,0,.9);transform:perspective(900px) rotateY(-10deg);transition:transform .5s var(--ease),filter .5s var(--ease)}.photo-runway figure:hover{transform:perspective(900px) rotateY(0) translateY(-8px) scale(1.04);z-index:4}.photo-runway img{width:100%;height:100%;object-fit:cover;filter:saturate(1.12) contrast(1.08) brightness(.88);transition:filter .5s var(--ease),transform .5s var(--ease)}.photo-runway figure:hover img{filter:saturate(1.35) contrast(1.14) brightness(1.04);transform:scale(1.08)}.photo-runway figcaption{position:absolute;left:12px;bottom:12px;padding:7px 10px;border-radius:999px;background:rgba(8,8,12,.68);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(10px);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2)}@keyframes photoRunway{to{transform:translateX(calc(-50% - 9px))}}
.photo-frame,.photo-stack,.logo-stage{transform-origin:center;backface-visibility:hidden}.photo-frame.is-hyper,.photo-stack.is-hyper,.logo-stage.is-hyper{box-shadow:0 62px 150px -70px rgba(249,115,22,.85),0 0 0 1px rgba(249,115,22,.18) inset}.photo-frame.is-hyper::after,.photo-stack.is-hyper::after,.logo-stage.is-hyper::after{opacity:.28}
@media (max-width:1100px){.media-lab__grid{grid-template-columns:1fr;grid-template-rows:auto}.logo-stage,.media-lab .photo-frame--tall,.media-lab .photo-frame:not(.photo-frame--tall),.photo-stack{grid-column:auto;grid-row:auto}.logo-stage{min-height:520px}.photo-runway figure{width:280px;height:165px}}
@media (max-width:700px){.nav__logo--image{width:70%;height:38px}.loader__mark--logo{width:118px;border-radius:24px}.logo-stage > img{width:46%;min-width:140px}.photo-runway{border-radius:20px}.photo-runway__track{padding:14px;gap:12px}.photo-runway figure{width:230px;height:140px;border-radius:18px}}

/* ==========================================================
   29. Visibility and crop fixes from QA screenshots
   ========================================================== */
.cinema-card video{z-index:0;opacity:.28}.cinema-card__fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1;filter:saturate(1.18) contrast(1.08) brightness(.9);transform:scale(1.02);transition:transform 1.2s var(--ease),filter .7s var(--ease);pointer-events:none}.cinema-card:hover .cinema-card__fallback{transform:scale(1.08);filter:saturate(1.3) contrast(1.14) brightness(1)}.cinema-card--wide .cinema-card__fallback{object-position:center}.cinema-card__hud,.cinema-card__caption{z-index:4}.cinema-card::before{z-index:2}.cinema-card::after{z-index:3}
.photo-frame--contain{background:#f6f3ee}.photo-frame--contain > img:first-child,.photo-frame--contain .photo-frame__ghost{object-fit:contain;padding:28px;background:#f6f3ee;object-position:center}.photo-frame--contain:hover > img:first-child{transform:scale(1.03) translate3d(calc(var(--gx) * -.4),calc(var(--gy) * -.4),0)}.photo-frame--contain .photo-frame__label{background:rgba(8,8,12,.74)}.photo-runway figure:has(img[src$="project-photo-02.png"]) img,.photo-stack__card:has(img[src$="project-photo-02.png"]) img{object-fit:contain;background:#f6f3ee;padding:10px}
.service__ico svg *,.industry__ico svg *,.feature__ico svg *{stroke-dashoffset:0!important;opacity:1!important}.industry__ico svg,.service__ico svg,.feature__ico svg{opacity:1!important;filter:drop-shadow(0 8px 18px rgba(249,115,22,.18))}.industry__ico{background:rgba(255,255,255,.075)!important;color:var(--orange-2)!important}.industry:hover .industry__ico{background:var(--grad-orange)!important;color:#0B0B0F!important}
.cursor.is-morph{width:44px!important;height:44px!important;border-radius:50%!important;background:rgba(255,255,255,.035)!important;border-color:rgba(255,255,255,.34)!important;box-shadow:0 0 0 1px rgba(249,115,22,.18),0 0 34px rgba(249,115,22,.15);mix-blend-mode:normal!important}.cursor-dot{z-index:9999}.cursor{z-index:9998}
@media (max-width:700px){.photo-frame--contain > img:first-child,.photo-frame--contain .photo-frame__ghost{padding:18px}.cinema-card video{opacity:.18}.cinema-card__fallback{filter:saturate(1.12) contrast(1.06) brightness(.95)}}

/* End of base styles */