/* NexoraIT — shared foundation (loaded on every page, fully used) */
:root{
  color-scheme:dark;
  --bg:#080d1e;
  --bg-alt:#0a0f22;
  --panel:#151b30;
  --panel-2:#10162a;
  --text:#f9f8ff;
  --muted:#bfc1d0;
  --line:rgba(167,170,220,.2);
  --purple:#a85aff;
  --blue:#49baff;
  --accent:#a85aff;
  --accent-2:#49baff;
  --accent-light:#d18cff;
  --gutter:50px;
  --container:88vw;
  --font:Arial,Helvetica,sans-serif;
  font-family:var(--font);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:96px;overflow-x:hidden}
body{margin:0;background:var(--bg);color:var(--text);font-size:15px;line-height:1.48}
a{color:inherit;text-decoration:none}
button{font:inherit}
img,svg{display:block;max-width:100%;height:auto}
h1,h2,h3,p{overflow-wrap:break-word}
.container{width:min(100% - var(--gutter),var(--container));margin-inline:auto}
.skip{position:absolute;top:-60px;left:10px;background:#fff;color:#111;padding:8px;z-index:100}
.skip:focus{top:10px}
.site-draft-note{margin:0;padding:9px clamp(14px,4vw,30px);background:#2a1b3f;color:#ecdcff;border-bottom:1px solid var(--line);font-size:12.5px;line-height:1.4;text-align:center}
.site-draft-note strong{color:#fff;font-weight:700}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:43px;padding:11px 23px;border-radius:30px;font-size:13px;font-weight:700;transition:transform 1.3s cubic-bezier(.2,.8,.2,1),box-shadow 1.3s,background 1.3s,border-color 1.3s;white-space:nowrap}
.btn:hover{transform:translateY(-2px) scale(1.03)}
.btn:active{transform:translateY(0) scale(0.96)}
.btn:focus-visible,a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #a978ff;outline-offset:4px}
.btn-primary{border:1px solid #a85aff;background:linear-gradient(130deg,#a85aff1f,#49baff10);box-shadow:0 0 0 0 #a85aff00;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.btn-primary:hover{border-color:#d18cff;background:linear-gradient(130deg,#a85aff33,#49baff1f);box-shadow:0 0 28px #a85aff55,inset 0 0 14px #a85aff22}
.btn-outline{border:1px solid #d5d4e5;background:#0b1020aa;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.btn-outline:hover{background:#22253f;border-color:#a85aff;box-shadow:0 0 22px #a85aff33}
.eyebrow{display:inline-block;border:1px solid #9a55e9;border-radius:20px;padding:3px 13px;color:#dbb5ff;font-size:12px;line-height:1.3;font-weight:600;background:#29143e26}
.accent{color:var(--accent-light)}
.section{padding:42px 0 38px}
.section-heading{text-align:center;margin-bottom:26px}
.section-heading h2{font-size:clamp(26px,3vw,33px);letter-spacing:-1.2px;line-height:1.2;margin:9px 0 7px}
.section-heading p{font-size:13px;color:#d7d6df;margin:0}
.hero-actions{display:flex;gap:20px;flex-wrap:wrap}
.step-num{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:10px;background:linear-gradient(140deg,#7b36fa,#3a86f6);font-size:11.5px;font-weight:800;line-height:1;color:#fff;box-shadow:0 6px 16px #6b35d840}
.visually-hidden{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

@media(max-width:1000px){:root{--gutter:40px}}
@media(max-width:760px){:root{--gutter:30px}.container{width:min(100% - 30px,580px)}.section{padding:45px 0}.hero-actions{gap:14px}}
@media(max-width:450px){:root{--gutter:24px}.container{width:calc(100% - 24px)}.hero-actions{gap:10px}.hero-actions .btn{padding-inline:16px;font-size:12px}.section-heading h2{font-size:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Scroll reveal — components start at 0.98 scale, fade in to scale 1 on scroll */
.reveal{
  transform:translateY(-24px) scale(var(--reveal-scale,0.97));
  opacity:0;
  transition:transform 1.4s cubic-bezier(.22,.61,.36,1),opacity 1.4s cubic-bezier(.22,.61,.36,1);
}
.reveal.revealed{
  --reveal-scale:1;
  transform:translateY(0) scale(1);
  opacity:1;
}
