/* ZR Tech Solutions — approved Premium Dark Tech redesign v1.
   Non-destructive visual layer after existing critical.css and style.css.
   All legacy SEO service content remains intact. */
:root,[data-theme='dark'],[data-theme='light']{
  --bg:#050509;--bg-alt:#080811;--surface:#0e1020;--surface-2:#141629;
  --line:rgba(126,136,188,.18);--line-strong:rgba(131,144,220,.32);
  --text:#f7f8ff;--text-2:#b3b5cc;--text-3:#898ba8;
  --brand:#357bff;--brand-deep:#0054ed;--brand-soft:rgba(35,108,255,.12);
  --glint:#b568ff;--on-brand:#fff;
  --display:'Space Grotesk',system-ui,sans-serif;
  --body:'Plex Sans',system-ui,sans-serif;
  --wrap:1320px;--gutter:clamp(1.2rem,4.5vw,4.8rem);
  --r-sm:10px;--r-md:16px;--r-lg:22px;
  --shadow-2:0 14px 55px -17px rgba(0,0,0,.72);
  --glow:0 0 0 1px rgba(105,123,255,.4),0 14px 42px -12px rgba(74,45,255,.35);
  color-scheme:dark;
}
html{background:#050509}body{background:#050509;color:var(--text)}
body::before{content:"";position:absolute;left:-18vw;top:-280px;width:65vw;height:780px;pointer-events:none;z-index:-1;background:radial-gradient(ellipse,rgba(123,12,178,.19),transparent 69%)}
h1,h2,h3{letter-spacing:-.045em}h1{font-weight:700}
.strip{display:none!important}
.site-header{position:sticky;top:0;padding:14px 0 6px;border:0!important;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none;z-index:105}
.site-header.is-stuck{background:transparent;border:0!important;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none}
.header-in{min-height:62px;gap:2.3rem;max-width:1320px}
.brand{flex:none;margin-right:auto;gap:.55rem}.brand img{width:46px;height:46px;object-fit:contain}
.brand-name{font-size:1.06rem;letter-spacing:-.035em;font-weight:700;color:#fff;line-height:1.04}
.brand-tag{font-size:.64rem;letter-spacing:.19em;color:#c1c7df;font-weight:650;margin-top:3px}
.nav-desktop{background:transparent;border:0;border-radius:0;padding:5px 7px;box-shadow:none}
.nav-link{color:#c3c6d9;border-radius:9px;font-weight:500;font-size:.88rem;padding:.72rem .88rem;white-space:nowrap}
.nav-link:hover,.nav-link:focus-visible,.nav-link[aria-current='page']{background:rgba(87,95,155,.17);color:#fff}
.nav-link[aria-current='page']::after{display:none}
.header-cta{background:linear-gradient(120deg,#066bff,#9254f8);border-radius:9px;box-shadow:0 8px 25px rgba(63,100,255,.19);padding:.72rem 1rem}
.header-cta .icon{width:1em;height:1em}
.premium-mega-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
.premium-mega-link{display:flex;gap:12px;align-items:center;padding:13px 14px;border:1px solid transparent;border-radius:12px;color:#fff}
.premium-mega-link:hover{background:#191b31;border-color:rgba(126,113,220,.26);text-decoration:none}
.premium-mega-link strong{font-size:.89rem;display:block;font-weight:650}.premium-mega-link small{display:block;color:#929ab8;font-size:.72rem;padding-top:4px}
.premium-mega-icon{display:grid;place-items:center;flex:0 0 38px;height:38px;color:#a778ff;border-radius:10px;background:linear-gradient(135deg,#11274c,#291847)}
.premium-mega-icon .icon{width:22px;height:22px}
.mega{min-width:min(720px,93vw);border:1px solid rgba(120,119,177,.25);background:rgba(12,13,28,.97);box-shadow:0 20px 75px #000c;border-radius:16px;padding:18px}
.mega-foot{border-color:rgba(132,128,187,.18)}
.btn{border-radius:9px}.btn:hover{box-shadow:0 12px 35px rgba(34,94,252,.25)}.btn-ghost{border:1px solid #346da7;box-shadow:inset 0 0 0 0 transparent;color:#eaeaff}
.btn-ghost:hover{border-color:#785bef;background:rgba(35,52,123,.20)}
.zr-gradient-btn{background:linear-gradient(112deg,#056dfd 5%,#3759ff 60%,#9652f8);border:1px solid rgba(163,174,255,.19);box-shadow:0 8px 38px #0857ff28}
.zr-hero{position:relative;overflow:hidden;isolation:isolate;background:radial-gradient(ellipse 48% 55% at 9% 7%,rgba(117,13,172,.28),transparent 85%),radial-gradient(ellipse 38% 62% at 91% 54%,rgba(20,33,121,.17),transparent 95%),#050509}
.zr-hero::before{content:"";position:absolute;inset:0;background-image:radial-gradient(#885dff42 .8px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(100deg,transparent 42%,#000 95%);opacity:.22;z-index:-1}
.zr-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;min-height:640px;padding-top:38px;padding-bottom:48px;position:relative}
.zr-hero-copy{position:relative;z-index:2;padding:22px 0 20px}
.zr-overline,.zr-eyebrow{display:inline-flex;align-items:center;gap:10px;color:#74b5ff;letter-spacing:.15em;font-size:.77rem;font-weight:700;text-transform:uppercase}
.zr-overline i{width:20px;height:1px;background:#5b99ff}
.zr-hero h1{max-width:780px;font-size:clamp(3.2rem,5.25vw,5.9rem);line-height:1.095;margin:32px 0 25px;font-weight:700;letter-spacing:-.065em}
.zr-hero h1 span,.zr-section h2 span,.zr-page-intro h1 span{background:linear-gradient(100deg,#43bafb 3%,#508aff 38%,#bc4cf3 98%);color:transparent;-webkit-background-clip:text;background-clip:text}

/* 2026-10-23 — Hero headline motion, CSS-only (same semantic H1). */
@keyframes zrHeroHeadlineEnter{
  0%{opacity:0;transform:translate3d(0,24px,0);filter:blur(7px)}
  100%{opacity:1;transform:translate3d(0,0,0);filter:blur(0)}
}
@keyframes zrHeroGradientDrift{
  0%{background-position:0% 50%}
  100%{background-position:100% 50%}
}
.zr-hero h1{
  animation:zrHeroHeadlineEnter .95s cubic-bezier(.16,1,.3,1) both;
}
.zr-hero h1 span{
  background-image:linear-gradient(105deg,#43bafb 0%,#538cff 24%,#c44cf4 49%,#6a80ff 73%,#43bafb 100%);
  background-size:220% 100%;
  background-repeat:no-repeat;
  animation:zrHeroGradientDrift 5.5s ease-in-out 1s infinite alternate;
}
@media (prefers-reduced-motion:reduce){
  .zr-hero h1,.zr-hero h1 span{animation:none!important;filter:none!important;transform:none!important;opacity:1!important}
}

.zr-hero-copy>p{font-size:clamp(1.075rem,1.55vw,1.3rem);line-height:1.67;color:#c0bed0;max-width:610px}
.zr-hero-actions{display:flex;flex-wrap:wrap;gap:15px;margin-top:34px}
.zr-hero-proof{display:flex;flex-wrap:wrap;gap:16px 25px;margin-top:39px;color:#acb2cb;font-size:.83rem}
.zr-hero-proof span{display:flex;align-items:center;gap:7px}.zr-hero-proof .icon{color:#6fa7ff;width:17px;height:17px}
.zr-hero-art{position:relative;z-index:1;align-self:center;margin-left:-18%;margin-right:-12%;pointer-events:none}
.zr-hero-art img{width:100%;height:auto;filter:drop-shadow(0 10px 55px rgba(72,37,180,.12));}
.zr-orbit{position:absolute;border-radius:50%;filter:blur(55px);opacity:.5;z-index:-1}
.orbit-one{width:320px;height:330px;background:#392def66;right:8%;top:24%}.orbit-two{width:170px;height:200px;background:#ba29d651;left:18%;bottom:8%}
.zr-hero-bottom{display:flex;align-items:center;gap:14px;color:#747caa;font-size:.66rem;letter-spacing:.15em;padding-bottom:26px;font-weight:700}
.zr-mini-star{color:#8d69fa;font-size:1.15rem}.zr-hero-rule{height:1px;background:linear-gradient(90deg,#6e44c54a,transparent);flex:1}
.zr-section{padding:clamp(76px,8vw,126px) 0;position:relative}
.zr-services{background:linear-gradient(180deg,#050509 0%,#070912 50%,#06060c 100%)}
.zr-section-heading{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:36px}
.zr-section-heading h2{font-size:clamp(2.2rem,3.6vw,3.85rem);line-height:1.15;font-weight:700;margin-top:12px}
.zr-section-heading>div:first-child{flex:1}
.zr-section-heading>div:last-child{max-width:390px;flex:.75}
.zr-section-heading p{font-size:1rem;color:#a7a9bc;line-height:1.65;margin-bottom:18px}
.zr-text-link{display:inline-flex;align-items:center;gap:9px;color:#a3c4ff;font-size:.92rem;font-weight:650}
.zr-text-link:hover{color:#d8e9ff;text-decoration:none;gap:13px}.zr-text-link .icon{width:17px;height:17px}
.zr-services-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.zr-service-tile{position:relative;isolation:isolate;overflow:hidden;min-height:268px;background:linear-gradient(146deg,#0e1125,#0b0c18 85%);border:1px solid rgba(100,113,204,.23);border-radius:15px;padding:25px 22px 21px;display:flex;flex-direction:column;transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease}
.zr-service-tile:nth-child(4n+2){background:linear-gradient(150deg,#150e28,#0b0c18 88%)}
.zr-service-tile::after{content:"";position:absolute;width:170px;height:150px;background:radial-gradient(#5c4cef1e,transparent 75%);top:-65px;right:-50px;z-index:-1}
.zr-service-tile:hover{transform:translateY(-5px);border-color:#717aff77;box-shadow:0 15px 45px #19195d35}
.zr-service-top{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:27px}
.zr-service-icon{display:inline-grid;place-items:center;flex:0 0 48px;width:48px;height:48px;color:#835eff;background:linear-gradient(130deg,#14214b,#251039);border-radius:11px}
.zr-service-tile:nth-child(odd) .zr-service-icon{color:#4daeff;background:linear-gradient(120deg,#102448,#1b183a)}
.zr-service-icon .icon{width:27px;height:27px}
.zr-service-number{color:#656e99;font-size:.63rem;font-weight:700;letter-spacing:.06em}
.zr-service-tile h3,.zr-service-tile h2{font-size:clamp(1.05rem,1.2vw,1.3rem);letter-spacing:-.025em;font-weight:700;line-height:1.24;margin-bottom:10px}
.zr-service-tile h3 a,.zr-service-tile h2 a{color:white;text-decoration:none}
.zr-service-tile h3 a::after,.zr-service-tile h2 a::after{content:"";position:absolute;inset:0}
.zr-service-tile>p{font-size:.89rem;color:#a3a5bc;line-height:1.58;flex:1;margin:0}
.zr-card-end{border-top:1px solid rgba(123,138,204,.14);padding-top:15px;margin-top:20px;display:flex;align-items:center;justify-content:space-between;gap:8px}
.zr-card-end small{font-size:.68rem;letter-spacing:0;color:#8e9abb;line-height:1.4}
.zr-card-end>span{color:#7fb1ff;background:#131d39;width:27px;height:27px;display:grid;place-items:center;border-radius:6px}
.zr-card-end .icon{width:15px;height:15px}
.zr-solutions-section{background:radial-gradient(ellipse at 100% 18%,#33106726,transparent 52%),#05060b}
.zr-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.zr-product-card{background:#0c0d1b;border:1px solid rgba(108,114,179,.25);border-radius:13px;overflow:hidden;transition:transform .23s ease,border-color .23s ease}
.zr-product-card:hover{transform:translateY(-4px);border-color:#6569d877}
.zr-ui-window{height:178px;padding:15px 16px 0;background:radial-gradient(ellipse at 60% 25%,#5a25ab28,transparent 70%),linear-gradient(145deg,#0f1630,#12101e);border-bottom:1px solid #282640;overflow:hidden}
.zr-ui-top{display:flex;gap:4px;align-items:center;height:15px;margin-bottom:5px}
.zr-ui-top i{width:4px;height:4px;background:#6b70b8;border-radius:50%}.zr-ui-top span{margin-left:auto;font-size:8px;letter-spacing:.15em;color:#9c9cd1}
.zr-ui-display{height:152px;border:1px solid #5551786b;border-bottom:0;border-radius:6px 6px 0 0;background:#151b35;display:flex;overflow:hidden;box-shadow:0 4px 24px #0009}
.zr-ui-display aside{background:#11152a;width:20%;padding:17px 7px;display:flex;flex-direction:column;gap:12px}
.zr-ui-display aside b{height:4px;width:80%;border-radius:3px;background:#414c7a}.zr-ui-display aside b:nth-child(2){background:#3976fa}
.zr-ui-display main{padding:10px;display:block;flex:1;min-width:0}
.zr-ui-headline{height:6px;width:52%;background:#7479b7;border-radius:4px;margin-bottom:12px}
.zr-ui-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.zr-ui-stats em{height:34px;background:linear-gradient(130deg,#292b55,#1d2552);border:1px solid #47507f;border-radius:4px}
.zr-ui-graph{display:flex;align-items:end;gap:5px;height:44px;padding:8px 5px 0;margin-top:7px;border-radius:4px;background:#101b32}
.zr-ui-graph i{flex:1;height:48%;border-radius:2px 2px 0 0;background:#5a77fc}
.zr-ui-graph i:nth-child(2){height:80%;background:#a05bea}.zr-ui-graph i:nth-child(3){height:60%}.zr-ui-graph i:nth-child(4){height:90%;background:#8c51f5}.zr-ui-graph i:nth-child(5){height:52%}.zr-ui-graph i:nth-child(6){height:73%;background:#8c51f5}
.zr-ui-graph i:nth-child(7){height:34%}
.zr-ui-bottom{margin-top:5px;width:83%;height:4px;background:#38466a;border-radius:3px}
.zr-ui-pos .zr-ui-stats em{background:linear-gradient(145deg,#403050,#22173d)}.zr-ui-pharmacy .zr-ui-graph i{background:#33a7c7}.zr-ui-crm .zr-ui-graph i{background:#9a6df9}
.zr-product-info{padding:20px}.zr-product-info small{font-size:.67rem;color:#8e89c1;text-transform:uppercase;letter-spacing:.09em;font-weight:700}
.zr-product-info h3{font-size:1.08rem;margin:5px 0 7px;letter-spacing:-.025em}.zr-product-info p{font-size:.85rem;color:#a1a3b8;line-height:1.5;min-height:45px}
.zr-product-info a{display:inline-flex;align-items:center;gap:8px;margin-top:14px;color:#91b5ff;font-size:.82rem;font-weight:650}
.zr-product-info a .icon{width:15px;height:15px}
.zr-disclaimer{font-size:.72rem;color:#81849d;margin-top:14px}
.zr-work-section{background:radial-gradient(ellipse at 105% 95%,rgba(86,35,164,.12),transparent 60%),#06070d}
.zr-work-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.zr-work-card{border:1px solid rgba(129,142,201,.19);border-radius:13px;overflow:hidden;background:#0b0c16}
.zr-work-graphic{height:180px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:9px;text-align:center;padding:16px;overflow:hidden;position:relative;background:linear-gradient(130deg,#102f47,#102043 45%,#0b1129)}
.zr-work-graphic::before{content:"";position:absolute;width:165px;height:165px;border-radius:20px;transform:rotate(-17deg);border:1px solid #7f9ffa45;box-shadow:0 0 35px #4387ff35;right:-60px;bottom:-80px}
.zr-work-fashion{background:linear-gradient(140deg,#271224,#492341,#151021)}.zr-work-sports{background:linear-gradient(135deg,#18273a,#3b182d,#10121d)}.zr-work-tech{background:linear-gradient(135deg,#122c52,#101a2c,#16414b)}
.zr-work-graphic>span{display:grid;place-items:center;width:52px;height:52px;border:1px solid #a9b4ff44;border-radius:13px;background:#161b3877;color:#b2b8ff;backdrop-filter:blur(7px)}
.zr-work-graphic .icon{width:29px;height:29px}.zr-work-graphic strong{font-size:1.13rem;z-index:1;letter-spacing:-.025em}.zr-work-graphic small{color:#cbcadd;font-size:.78rem;z-index:1}
.zr-work-line{display:flex;justify-content:space-between;align-items:center;padding:15px 16px}
.zr-work-line strong{font-size:.94rem;display:block;letter-spacing:-.015em}.zr-work-line small{color:#9899ab;font-size:.78rem;display:block}
.zr-work-line a{flex:0 0 31px;width:31px;height:31px;display:grid;place-items:center;border:1px solid #6568a655;border-radius:8px;color:#a8aeff}
.zr-why-section{background:#050509}.zr-why-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.zr-why-card{padding:24px 21px;background:linear-gradient(150deg,#111325,#0a0b16);border:1px solid #31335388;border-radius:13px}
.zr-why-card>span{width:47px;height:47px;border-radius:11px;background:#16213c;color:#a16dff;display:grid;place-items:center;margin-bottom:20px}
.zr-why-card>span .icon{width:26px;height:26px}.zr-why-card h3{font-size:1.01rem;margin-bottom:9px}.zr-why-card p{font-size:.84rem;color:#acacc0;line-height:1.56}
.zr-process-section{background:#070811}.zr-process-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:21px;counter-reset:step}
.zr-process-grid li{position:relative}.zr-process-grid li:not(:last-child)::after{content:'→';position:absolute;right:-18px;top:22px;color:#5561a6}
.zr-process-icon{display:grid;place-items:center;width:58px;height:58px;border:1px solid #4663bc;border-radius:50%;color:#8b7dff;background:#0b1231;margin-bottom:19px}
.zr-process-icon .icon{width:25px;height:25px}.zr-process-grid strong{display:block;font-size:.9rem;letter-spacing:-.02em}.zr-process-grid p{color:#a4a3b8;font-size:.8rem;line-height:1.5;margin-top:6px}
.zr-faq-section{background:#06070d}.zr-faq-more{margin-top:24px;text-align:center}.zr-faq-more a{display:inline-flex;gap:8px;align-items:center}
.zr-final-section{padding-top:70px;padding-bottom:75px}
.zr-last-cta{display:flex;align-items:center;justify-content:space-between;gap:45px;min-height:285px;border:1px solid #4e3e8b88;border-radius:22px;padding:clamp(26px,5vw,60px);background:radial-gradient(ellipse at 83% 53%,#53209b67,transparent 49%),linear-gradient(130deg,#0b1022,#0c0919);overflow:hidden;position:relative}
.zr-last-cta h2{font-size:clamp(2.15rem,3.5vw,3.5rem);line-height:1.12;margin:12px 0 12px;font-weight:700}.zr-last-cta p{color:#b7b9cd;max-width:560px}
.zr-last-cta .zr-hero-actions{margin-top:22px}
.zr-cta-orb{width:215px;height:215px;flex:0 0 215px;border-radius:50%;background:radial-gradient(circle at 35% 25%,#925dff,#272277 45%,#08091f 75%);box-shadow:inset -15px -15px 42px #050824c0,0 0 55px #652ae87c;display:grid;place-items:center;transform:rotate(-12deg)}
.zr-cta-orb>div{font-weight:800;font-size:3.4rem;color:#e2d5ff;text-shadow:0 3px 18px #bbb1ff}.zr-cta-orb span{display:block;font-size:1.12rem;letter-spacing:.5em;text-align:center}
.zr-page-intro{max-width:850px;margin-bottom:45px}.zr-page-intro h1{font-size:clamp(2.8rem,5.1vw,5.5rem);line-height:1.1;margin:19px 0;letter-spacing:-.06em}.zr-page-intro p{font-size:1.13rem;line-height:1.7;color:#afb1c5;max-width:700px}
.zr-services-page{background:radial-gradient(ellipse at 10% 0%,#53119a22,transparent 50%)}
.zr-specialist{background:#090b13}.zr-specialist-row{padding:22px 0;border-top:1px solid #45416e4a;display:grid;grid-template-columns:220px 1fr;gap:25px;align-items:start}
.zr-specialist-row h3{font-size:1.1rem}.zr-specialist-row .rail-links{margin:0}
.zr-solution-list{display:grid;gap:15px}.zr-solution-detail{display:grid;grid-template-columns:110px 1fr;gap:35px;background:#0e1020;border:1px solid #333454aa;border-radius:16px;padding:32px}
.zr-solution-emblem{height:96px;display:grid;place-items:center;border-radius:18px;background:linear-gradient(135deg,#1a2d69,#391445);color:#a187ff}.zr-solution-emblem .icon{width:45px;height:45px}
.zr-solution-detail h2{font-size:1.9rem;margin:8px 0}.zr-solution-detail p{color:#afb2c7;margin-bottom:16px}.zr-solution-detail .zr-text-link{margin-top:20px}
.zr-work-grid-full{grid-template-columns:repeat(2,minmax(0,1fr))}.zr-work-grid-full .zr-work-graphic{height:260px}
.zr-insights-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
/* Shared pages: bring existing prose pages into the approved premium palette. */
.card,.trust-item,.rail-row,.toc,.faq-item,.callout{border-color:rgba(117,126,192,.22)}
.card{background:linear-gradient(150deg,#121325,#0c0d19)}
.card-icon{background:#181e3e;color:#a38aff;border-radius:11px}
.band{background:#080914}.band-deep{background:linear-gradient(150deg,#0c1028,#090817)}
.pill{background:rgba(30,33,56,.65);border-color:rgba(113,121,193,.23);color:#c6d5ff}
.pill:hover{background:#1e2242;color:white}
.site-footer{background:linear-gradient(180deg,#080a13,#050509);border-top:1px solid rgba(116,128,206,.25)}
.footer-grid{grid-template-columns:1.3fr 1.65fr .8fr 1fr;gap:32px}.footer-services{columns:2;column-gap:18px}.footer-services li{break-inside:avoid}
.site-footer .brand-name{font-size:1.05rem}.site-footer .brand img{width:40px;height:40px}
.footer-about p{color:#a5a7bd}
/* Internal content hero should adopt color direction while keeping original semantic layout. */
.wrap.section-tight h1,.prose h1{letter-spacing:-.045em}
@media (max-width:1190px){
 .nav-link{font-size:.81rem;padding:.7rem .65rem}.header-in{gap:1.15rem}.brand img{width:39px;height:39px}
 .zr-services-grid,.zr-product-grid,.zr-work-grid,.zr-why-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .zr-hero-grid{min-height:580px}.zr-hero h1{font-size:clamp(2.9rem,5.1vw,5rem)}
 .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:970px){
 .site-header{padding:6px 0}.nav-desktop{display:none}.nav-toggle{display:inline-grid}
 .header-cta{display:inline-flex}.header-in{min-height:62px}
 .zr-hero-grid{grid-template-columns:1fr 1fr;min-height:510px}.zr-hero-art{margin-left:-25%;margin-right:-19%}
 .zr-hero h1{font-size:clamp(2.6rem,5.15vw,4.15rem)}
 .zr-process-grid{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:34px}
 .zr-process-grid li:nth-child(3)::after{display:none}
}
@media (max-width:720px){
 :root{--gutter:20px}.header-cta{display:none}.header-in{min-height:55px}.brand-name{font-size:1.01rem}.brand img{width:36px;height:36px}
 .zr-hero-grid{grid-template-columns:1fr;min-height:0;padding-top:48px;padding-bottom:10px}
 .zr-hero-copy{padding:0;text-align:left}.zr-overline{font-size:.65rem}.zr-hero h1{font-size:clamp(2.65rem,10.2vw,4.6rem);margin:22px 0 17px}
 .zr-hero h1 br{display:none}.zr-hero-copy>p{font-size:1rem;max-width:550px}
 .zr-hero-actions{gap:10px;margin-top:23px}.zr-hero-actions .btn{padding:.87rem 1.08rem;min-height:47px;font-size:.86rem}
 .zr-hero-proof{gap:10px 18px;font-size:.72rem;margin-top:24px}
 .zr-hero-art{margin:3px -28px -30px;max-width:650px;justify-self:center;width:calc(100% + 56px)}
 .zr-hero-bottom{font-size:.57rem;letter-spacing:.08em;gap:8px;padding:12px 0 24px}
 .zr-section{padding:65px 0}.zr-section-heading{display:block;margin-bottom:28px}.zr-section-heading h2{font-size:clamp(2rem,8vw,3.25rem)}
 .zr-section-heading>div:last-child{max-width:none;margin-top:13px}.zr-section-heading p{font-size:.91rem}
 .zr-services-grid{gap:12px}.zr-service-tile{padding:21px 17px;min-height:255px}.zr-service-number{font-size:.55rem}.zr-service-tile h3,.zr-service-tile h2{font-size:1.03rem}
 .zr-service-tile>p{font-size:.8rem}.zr-service-icon{width:39px;height:39px;flex-basis:39px}.zr-service-icon .icon{width:23px;height:23px}
 .zr-service-top{margin-bottom:17px}.zr-card-end small{font-size:.61rem}
 .zr-why-grid,.zr-work-grid,.zr-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .zr-last-cta{padding:26px 25px}.zr-cta-orb{display:none}
 .zr-page-intro h1{font-size:clamp(2.45rem,9vw,4rem)}
 .zr-specialist-row{grid-template-columns:1fr;gap:12px}
 .zr-work-grid-full{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:520px){
 .zr-services-grid,.zr-work-grid,.zr-why-grid,.zr-product-grid,.zr-work-grid-full,.zr-insights-grid{grid-template-columns:1fr}
 .zr-service-tile{min-height:205px;padding:23px}.zr-service-tile h3,.zr-service-tile h2{font-size:1.18rem}
 .zr-service-tile>p{font-size:.89rem}.zr-card-end small{font-size:.7rem}
 .zr-product-card{display:grid;grid-template-columns:44% 56%;min-height:155px}.zr-ui-window{height:100%;min-height:155px;padding:9px 6px 0}.zr-ui-display{min-height:145px}.zr-ui-display main{padding:5px}.zr-product-info{padding:15px 12px}
 .zr-product-info h3{font-size:1rem}.zr-product-info p{font-size:.76rem;min-height:unset}.zr-product-info a{font-size:.74rem}
 .zr-work-graphic{height:195px}.zr-why-card{padding:23px}
 .zr-process-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 22px}.zr-process-grid li:nth-child(3)::after{display:block}.zr-process-grid li:nth-child(2)::after,.zr-process-grid li:nth-child(4)::after{display:none}
 .zr-process-icon{width:51px;height:51px}.zr-last-cta h2{font-size:2.2rem}
 .zr-solution-detail{grid-template-columns:1fr;padding:23px;gap:13px}.zr-solution-emblem{width:75px;height:75px}.zr-solution-detail h2{font-size:1.4rem}
 .footer-grid{grid-template-columns:1fr}.footer-services{columns:2}
}
@media (prefers-reduced-motion:reduce){.zr-service-tile,.zr-product-card,.btn{transition:none!important}.zr-orbit{filter:none;opacity:.12}}

/* ================================================================
   ZR TECH — correct header strip & real typing animation (v2)
   Navigation capsule stays visible; the full-width black bar is gone.
   ================================================================ */
.site-header,
.site-header.is-stuck {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}
/* Undo the earlier patch that incorrectly removed the navbar capsule. */
.nav-desktop {
  background: rgba(24,25,39,.87) !important;
  border: 1px solid rgba(151,164,209,.20) !important;
  border-radius: 14px !important;
  padding: 5px 7px !important;
  box-shadow: 0 8px 28px rgba(0,0,0,.33) !important;
}
/* Bleed the HERO purple glow behind the transparent logo/header area,
   without changing the location of the visible content or nav controls. */
.zr-hero {
  --zr-header-overlap: 82px;
  margin-top: calc(-1 * var(--zr-header-overlap));
  padding-top: var(--zr-header-overlap);
}
@media(max-width:970px) {
  .zr-hero { --zr-header-overlap: 74px; }
}
@media(max-width:720px) {
  .zr-hero { --zr-header-overlap: 67px; }
}
/* v4: typing headline occupies real layout space (no absolute positioning).
   Static SEO text is the layout placeholder; typed text overlays the same grid cell.
   This prevents paragraph/buttons overlapping while letters are being typed. */
.zr-hero h1.zr-typing-heading{
  display:grid !important;
  grid-template-columns:minmax(0,1fr);
  position:relative;
  max-width:730px;
  font-size:clamp(2.55rem,3.6vw,4.15rem) !important;
  line-height:1.1 !important;
  letter-spacing:-.052em !important;
  margin:24px 0 23px !important;
  opacity:1 !important;
  visibility:visible !important;
  animation:none !important;
  transform:none !important;
  filter:none !important;
}
.zr-hero h1.zr-typing-heading .zr-typing-fallback,
.zr-hero h1.zr-typing-heading .zr-typing-live{
  grid-area:1/1;
  min-width:0;
  background:none !important;
  -webkit-background-clip:border-box !important;
  background-clip:border-box !important;
  animation:none !important;
  line-height:inherit;
}
.zr-hero h1.zr-typing-heading .zr-typing-fallback{
  display:block !important;
  color:#fcfbff !important;
}
.zr-hero h1.zr-typing-heading .zr-typing-fallback > span,
.zr-hero h1.zr-typing-heading .zr-typing-gradient{
  background:linear-gradient(100deg,#43bafb 3%,#508aff 38%,#bc4cf3 98%) !important;
  color:transparent !important;
  -webkit-text-fill-color:transparent !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  animation:none !important;
}
.zr-hero h1.zr-typing-heading .zr-typing-live{
  display:none;
  color:#fcfbff !important;
  position:static !important;
  inset:auto !important;
  white-space:normal;
  visibility:visible;
}
.zr-hero h1.zr-typing-heading br{display:inline !important;}
.zr-hero h1.zr-typing-heading .zr-typing-first{
  color:#fcfbff !important;
  background:none !important;
  -webkit-text-fill-color:#fcfbff !important;
  -webkit-background-clip:border-box !important;
  background-clip:border-box !important;
  animation:none !important;
}
.zr-hero h1.zr-typing-heading.zr-typing-active .zr-typing-fallback{
  opacity:0 !important;
}
.zr-hero h1.zr-typing-heading.zr-typing-active .zr-typing-live{
  display:block !important;
}
.zr-hero h1.zr-typing-heading .zr-typing-caret{
  display:inline-block;
  width:.045em;
  height:.83em;
  margin-left:.055em;
  vertical-align:-.08em;
  border-radius:2px;
  background:#acd2ff !important;
  -webkit-text-fill-color:initial !important;
  box-shadow:0 0 12px rgba(106,151,255,.45);
  animation:zr-caret-blink .75s steps(1,end) infinite !important;
}
@keyframes zr-caret-blink{0%,48%{opacity:1}49%,100%{opacity:0}}
@media(max-width:970px){
  .zr-hero h1.zr-typing-heading{font-size:clamp(2.5rem,4.7vw,3.9rem) !important;}
}
@media(max-width:720px){
  .zr-hero h1.zr-typing-heading{font-size:clamp(2.1rem,8vw,3.2rem) !important;margin:20px 0 18px !important;line-height:1.12 !important;}
}
@media(prefers-reduced-motion:reduce){
  .zr-hero h1.zr-typing-heading .zr-typing-fallback{visibility:visible !important;}
  .zr-hero h1.zr-typing-heading .zr-typing-live{display:none !important;}
}
.brand img{background:transparent!important;box-shadow:none!important;border-radius:0!important}

/* ================================================================
   ZR TECH — 3D HERO ILLUSTRATION MOTION (2026-10-23)
   Artwork-only CSS animation. Does not alter hero heading or layout.
   The 3D laptop/mobile are one flattened WebP, so they move together.
   ================================================================ */
@keyframes zrDeviceHover {
  0%, 100% { transform: translate3d(0, 0, 0) rotate(-0.65deg) scale(1); }
  50% { transform: translate3d(0, -15px, 0) rotate(0.75deg) scale(1.018); }
}
@keyframes zrDeviceAmbientGlow {
  0%, 100% { opacity: .38; transform: translate3d(0, 8px, 0) scale(.92); }
  50% { opacity: .73; transform: translate3d(0, -7px, 0) scale(1.035); }
}
@keyframes zrDeviceOrbitFloat {
  0%, 100% { transform: translate3d(0,0,0) scale(.94); opacity: .32; }
  50% { transform: translate3d(12px,-13px,0) scale(1.09); opacity: .59; }
}
.zr-hero-art {
  /* The image stays in normal layout so it never overlaps the heading. */
  perspective: 1100px;
}
.zr-hero-art > img {
  display: block;
  position: relative;
  transform-origin: 50% 54%;
  animation: zrDeviceHover 6.2s ease-in-out infinite;
  will-change: transform;
}
.zr-hero-art::before {
  content: "";
  position: absolute;
  pointer-events: none;
  z-index: -1;
  inset: 16% 4% 8%;
  border-radius: 50%;
  background:
    radial-gradient(ellipse at 65% 42%, rgba(31,111,255,.42), transparent 62%),
    radial-gradient(ellipse at 32% 68%, rgba(161,41,245,.42), transparent 65%);
  filter: blur(37px);
  animation: zrDeviceAmbientGlow 6.2s ease-in-out infinite;
}
.zr-hero-art .orbit-one { animation: zrDeviceOrbitFloat 7.8s ease-in-out infinite; }
.zr-hero-art .orbit-two { animation: zrDeviceOrbitFloat 6.6s ease-in-out -2.4s infinite reverse; }
@media(max-width:720px) {
  @keyframes zrDeviceHoverMobile {
    0%, 100% { transform: translate3d(0, 0, 0) rotate(-.35deg) scale(1); }
    50% { transform: translate3d(0, -8px, 0) rotate(.35deg) scale(1.007); }
  }
  .zr-hero-art > img { animation-name: zrDeviceHoverMobile; animation-duration: 6.2s; }
  .zr-hero-art::before { filter: blur(26px); opacity: .35; }
}
@media(prefers-reduced-motion: reduce) {
  .zr-hero-art > img,
  .zr-hero-art::before,
  .zr-hero-art .orbit-one,
  .zr-hero-art .orbit-two {
    animation: none !important;
    will-change: auto !important;
    transform: none !important;
  }
}
