/* =========================================================
   n0digital | style.css
   Identitate: negru-violet profund + magenta din siglă.
   Titluri Montserrat (ca în logo), text Inter.
   ========================================================= */
:root{
  --bg:#07060c; --bg2:#0c0a14; --surface:#110e1b; --line:#241c36;
  --text:#f1edf8; --muted:#9a93ad;
  --mag:#ff34a8; --mag-hot:#ff9bd6; --vio:#9646ff;
  --grad:linear-gradient(120deg,#ff34a8 0%,#ff7ac6 55%,#ff9bd6 100%);
  --display:"Montserrat","Inter Display","Inter",system-ui,sans-serif;
  --body:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;
  --r:18px; --hh:68px; --ease:cubic-bezier(.2,.7,.2,1);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:var(--hh);-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font:400 1rem/1.65 var(--body);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,video{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,p,ul,ol{margin:0;padding:0}
ul,ol{list-style:none}
.wrap{width:100%;max-width:1160px;margin:0 auto;padding:0 20px}
.muted{color:var(--muted)}
.skip{position:absolute;left:-999px;top:8px;background:#fff;color:#000;padding:8px 14px;border-radius:8px;z-index:200}
.skip:focus{left:8px}
:focus-visible{outline:2px solid var(--mag-hot);outline-offset:3px;border-radius:6px}

/* ---------- Butoane ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 26px;border-radius:999px;font:600 .98rem var(--body);color:#1a0613;background:var(--grad);border:1px solid transparent;cursor:pointer;box-shadow:0 0 28px rgba(255,52,168,.35);transition:transform .25s var(--ease),box-shadow .25s var(--ease)}
.btn:hover{transform:translateY(-2px);box-shadow:0 0 44px rgba(255,52,168,.55)}
.btn-ghost{background:transparent;color:var(--text);border-color:#4a3a66;box-shadow:none}
.btn-ghost:hover{border-color:var(--mag-hot);box-shadow:none}
.btn-wa{background:#25d366;color:#04210f;box-shadow:0 0 28px rgba(37,211,102,.3)}
.btn-sm{padding:9px 18px;font-size:.88rem}
[hidden]{display:none!important}

/* ---------- Header ---------- */
.site-header{position:fixed;inset:0 0 auto 0;height:var(--hh);z-index:100;background:rgba(7,6,12,.55);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid transparent;transition:border-color .3s,background .3s}
.site-header.scrolled{border-color:var(--line);background:rgba(7,6,12,.82)}
.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:inline-flex;align-items:center;gap:10px}
.brand img{border-radius:9px}
.brand-word{font:800 1.3rem var(--display);letter-spacing:-.03em}
.zero{color:var(--mag)}
.nav{display:flex;gap:30px}
.nav a{color:var(--muted);font-weight:500;font-size:.93rem;transition:color .2s}
.nav a:hover{color:var(--text)}

/* ---------- Hero ---------- */
.hero{position:relative;min-height:100vh;min-height:100svh;display:flex;align-items:center;overflow:hidden;isolation:isolate;background:var(--bg)}
.layer{will-change:transform}
.layer-video{position:absolute;inset:-6% 0 0 0;z-index:-3}
.layer-video video{width:100%;height:100%;object-fit:cover;object-position:68% 50%;background:url(assets/poster.webp) 68% 50%/cover}
.hero-shade{position:absolute;inset:0;z-index:-2;background:
  linear-gradient(90deg,rgba(7,6,12,.92) 0%,rgba(7,6,12,.7) 38%,rgba(7,6,12,.1) 75%),
  linear-gradient(0deg,var(--bg) 0%,transparent 28%)}
.layer-mid{position:absolute;inset:0;z-index:-1;pointer-events:none}
.ghost-mark{position:absolute;right:-6vw;bottom:-14vh;width:min(54vw,620px);opacity:.1;filter:blur(1px)}
.traces{position:absolute;inset:0;width:100%;height:100%;stroke:rgba(255,52,168,.28);stroke-width:2;opacity:.9}
.traces circle{fill:var(--bg);stroke:rgba(255,120,200,.6)}
.hero-inner{position:relative;padding-top:calc(var(--hh) + 40px);padding-bottom:110px}
.eyebrow{font:600 .8rem var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--mag-hot);margin-bottom:18px}
.hero h1{font:800 clamp(2.2rem,6.4vw,4.6rem)/1.04 var(--display);letter-spacing:-.035em;max-width:14ch;margin-bottom:22px}
.grad{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.lead{max-width:34rem;color:#c9c2da;font-size:clamp(1.02rem,2.3vw,1.2rem);margin-bottom:34px}
.actions{display:flex;flex-wrap:wrap;gap:12px}
.scroll-cue{position:absolute;left:50%;bottom:26px;width:26px;height:42px;border:2px solid #5a4a78;border-radius:14px;transform:translateX(-50%)}
.scroll-cue span{position:absolute;left:50%;top:8px;width:4px;height:8px;margin-left:-2px;border-radius:2px;background:var(--mag-hot);animation:cue 1.8s var(--ease) infinite}
@keyframes cue{0%{opacity:0;transform:translateY(0)}30%{opacity:1}100%{opacity:0;transform:translateY(14px)}}

/* ---------- Secțiuni ---------- */
.section{position:relative;padding:112px 0;overflow:hidden}
.section-alt{background:var(--bg2);border-block:1px solid var(--line)}
.section-head{max-width:46rem;margin-bottom:56px}
.section-head h2,.cta h2{font:800 clamp(1.7rem,4.2vw,2.8rem)/1.12 var(--display);letter-spacing:-.03em}
.section-head .muted{margin-top:16px}

/* ---------- Proiecte ---------- */
.projects{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.project{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;transition:transform .35s var(--ease),border-color .35s,box-shadow .35s}
.project:hover{transform:translateY(-6px);border-color:rgba(255,120,200,.5);box-shadow:0 18px 50px rgba(255,52,168,.12)}
.cover{display:block;aspect-ratio:2/1;background:var(--p1);border-bottom:1px solid var(--line);overflow:hidden}
.cover img{width:100%;height:100%;object-fit:cover;object-position:left top;transition:transform .6s var(--ease)}
.project:hover .cover img{transform:scale(1.04)}
.p-body{padding:24px;display:flex;flex-direction:column;gap:12px;flex:1}
.p-body h3{font:700 1.2rem var(--display);letter-spacing:-.01em}
.p-body p{color:var(--muted);font-size:.94rem}
.tags{display:flex;flex-wrap:wrap;gap:8px}
.tags li{font-size:.74rem;font-weight:500;color:var(--mag-hot);padding:4px 12px;border-radius:999px;border:1px solid rgba(255,120,200,.28);background:rgba(255,52,168,.07)}
.p-link{margin-top:auto;padding-top:6px;font-weight:600;font-size:.92rem;color:var(--text)}
.p-link:hover{color:var(--mag-hot)}

/* ---------- Servicii ---------- */
.services-grid{display:grid;grid-template-columns:5fr 7fr;gap:56px;align-items:start}
.services-grid .section-head{margin:0;position:sticky;top:calc(var(--hh) + 30px)}
.services li{display:flex;gap:22px;padding:26px 0;border-top:1px solid var(--line)}
.services li:last-child{border-bottom:1px solid var(--line)}
.num{font:800 1.05rem var(--display);color:var(--mag);min-width:2.2rem;padding-top:3px}
.services h3{font:700 1.2rem var(--display);margin-bottom:6px;letter-spacing:-.01em}
.services p{color:var(--muted)}

/* ---------- Pachete ---------- */
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:stretch}
.plan{display:flex;flex-direction:column;gap:20px;padding:34px 28px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);transition:transform .35s var(--ease),border-color .35s,box-shadow .35s}
.plan:hover{transform:translateY(-6px);border-color:rgba(255,120,200,.5)}
.plan-mid{border-color:rgba(255,120,200,.5);background:radial-gradient(100% 70% at 50% 0%,rgba(255,52,168,.16),transparent 70%),var(--surface);box-shadow:0 0 50px rgba(255,52,168,.12)}
.plan h3{font:800 1.35rem var(--display);letter-spacing:-.02em}
.price{font:800 clamp(1.9rem,3.4vw,2.4rem)/1 var(--display);letter-spacing:-.03em}
.price span{display:block;margin-bottom:6px;font:500 .85rem var(--body);letter-spacing:.04em;color:var(--muted)}
.plan-list{display:flex;flex-direction:column;gap:12px;flex:1}
.plan-list li{position:relative;padding-left:26px;color:#d8d2e6;font-size:.96rem}
.plan-list li::before{content:"";position:absolute;left:0;top:.5em;width:12px;height:2px;background:var(--grad);border-radius:2px}
.plan .btn{width:100%}
.plans-note{margin-top:26px;text-align:center;font-size:.92rem}

/* ---------- Despre ---------- */
.about-mark{position:absolute;left:-8vw;top:50%;width:min(60vw,640px);margin-top:-300px;opacity:.07;pointer-events:none;will-change:transform}
.about-inner{position:relative}
.about-copy{max-width:44rem;font-size:clamp(1.1rem,2.4vw,1.45rem);line-height:1.55;color:#d8d2e6;margin-bottom:56px}
.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.benefits li{padding:28px;border:1px solid var(--line);border-radius:var(--r);background:linear-gradient(180deg,rgba(255,52,168,.07),transparent 70%),var(--surface)}
.benefits h3{font:700 1.15rem var(--display);margin-bottom:8px}
.benefits p{color:var(--muted);font-size:.95rem}

/* ---------- Contact ---------- */
.cta{max-width:820px;margin:0 auto;text-align:center;padding:64px 28px;border-radius:26px;border:1px solid rgba(255,120,200,.35);background:radial-gradient(90% 80% at 50% 0%,rgba(255,52,168,.22),transparent 70%),var(--surface);box-shadow:0 0 70px rgba(255,52,168,.12)}
.cta .muted{margin:16px auto 30px;max-width:30rem}
.cta .actions{justify-content:center}
.cta .eyebrow{margin-bottom:14px}
.contact-line{margin-top:26px;font-size:.95rem}
.contact-line a,.site-footer .muted a{color:var(--text);border-bottom:1px solid rgba(255,120,200,.4)}
.contact-line a:hover,.site-footer .muted a:hover{color:var(--mag-hot)}
.contact-line a{word-break:break-word}

/* ---------- Footer ---------- */
.site-footer{border-top:1px solid var(--line);padding:30px 0 calc(30px + env(safe-area-inset-bottom))}
.footer-inner{display:flex;flex-wrap:wrap;gap:14px 28px;align-items:center;justify-content:space-between}
.site-footer .muted{font-size:.88rem}

/* ---------- Reveal ---------- */
.js .reveal{opacity:0;transform:translateY(22px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.js .reveal.in{opacity:1;transform:none}

/* ---------- Responsive ---------- */
@media (max-width:980px){
  .projects{grid-template-columns:1fr 1fr}
  .plans{grid-template-columns:1fr;max-width:520px;margin-inline:auto}
  .services-grid{grid-template-columns:1fr;gap:34px}
  .services-grid .section-head{position:static}
}
@media (max-width:680px){
  .nav{display:none}
  .section{padding:80px 0}
  .projects,.benefits{grid-template-columns:1fr}
  .hero{align-items:flex-end}
  .hero-inner{padding-bottom:96px}
  .hero-shade{background:linear-gradient(0deg,rgba(7,6,12,.95) 0%,rgba(7,6,12,.7) 45%,rgba(7,6,12,.2) 100%)}
  .layer-video video{object-position:72% 50%}
  .actions .btn{flex:1 1 100%}
  .cta{padding:48px 20px}
  .footer-inner{flex-direction:column;text-align:center}
}

/* ---------- Mișcare redusă: fără parallax, fără reveal, fără video ---------- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .layer,.about-mark{transform:none!important}
  .js .reveal{opacity:1;transform:none;transition:none}
  .scroll-cue span{animation:none;opacity:1}
  .btn,.project,.plan,.cover img{transition:none}
}
