:root{
  /* Paletă violet */
  --bg: #12091a;         /* mov foarte închis */
  --bg-2:#1b0f28;
  --card:#1f1430;
  --txt:#f2eaff;
  --muted:#cdbdf0;
  --pri:#b26cff;         /* violet intens */
  --pri-2:#8a4dff;       /* violet secundar */
  --ok:#32d296;
  --err:#ff6b6b;
  --border: rgba(255,255,255,.10);
  --shadow: 0 10px 25px rgba(0,0,0,.40);
  --radius:14px;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0; font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,'Helvetica Neue',Arial;
  color:var(--txt);
  background:
    radial-gradient(1200px 600px at 80% -10%, rgba(178,108,255,.18), transparent 60%),
    radial-gradient(900px 500px at -10% 10%, rgba(138,77,255,.18), transparent 60%),
    linear-gradient(180deg, var(--bg), var(--bg-2));
  background-attachment: fixed;
}
.wrap{width:min(1100px, calc(100% - 32px)); margin-inline:auto}

/* Header */
.site-header{position:sticky; top:0; backdrop-filter:saturate(160%) blur(8px); background:linear-gradient(180deg, rgba(18,9,26,.85), rgba(18,9,26,.55)); border-bottom:1px solid var(--border); z-index:10}
.site-header .wrap{display:flex; align-items:center; justify-content:space-between; padding:12px 0}
.brand{display:flex; gap:10px; align-items:center; font-weight:700}
.brand .dot{width:14px; height:14px; border-radius:50%; background:linear-gradient(135deg, var(--pri), var(--pri-2)); box-shadow:0 0 20px rgba(178,108,255,.8)}
.brand-text{letter-spacing:.3px}
.contact-top .link{color:var(--txt); text-decoration:none; margin-left:16px; opacity:.9}
.contact-top .link:hover{opacity:1}

/* Hero */
.hero{padding:42px 0 64px}
.hero-grid{display:grid; grid-template-columns:1.2fr 1fr; gap:28px; align-items:start}

/* Domeniu MARE + glitter */
.domain-wrap{position:relative; display:block; isolation:isolate; margin-bottom:6px}
.domain-huge{
  position:relative; z-index:2;
  font-weight:800; letter-spacing:-0.02em; line-height:1.02;
  font-size: clamp(34px, 8vw + 8px, 112px); /* mult mai mare */
  background: linear-gradient(135deg, #fff, #e8dcff 40%, #c9b3ff);
  -webkit-background-clip:text; background-clip:text; color: transparent;
  text-wrap: balance;
}

/* stratul de sclipici din spate */
.glitter::before{
  content:""; position:absolute; inset:-8px -10px; z-index:1; border-radius:18px;
  background:
    radial-gradient(2px 2px at 10% 20%, rgba(255,255,255,.85), transparent 60%),
    radial-gradient(1.5px 1.5px at 35% 40%, rgba(255,255,255,.8), transparent 60%),
    radial-gradient(1.8px 1.8px at 60% 25%, rgba(255,255,255,.75), transparent 60%),
    radial-gradient(1.2px 1.2px at 80% 60%, rgba(255,255,255,.9), transparent 60%),
    radial-gradient(2px 2px at 20% 80%, rgba(255,255,255,.75), transparent 60%),
    radial-gradient(1.6px 1.6px at 70% 75%, rgba(255,255,255,.85), transparent 60%),
    linear-gradient(135deg, rgba(178,108,255,.25), rgba(138,77,255,.15));
  filter: drop-shadow(0 6px 20px rgba(0,0,0,.35));
  animation: twinkle 6s linear infinite;
  mask: linear-gradient(#000, #000) padding-box, linear-gradient(#000,#000);
  -webkit-mask-composite: destination-out;
          mask-composite: exclude; /* “decupează” marginile pentru un efect soft */
}

/* mișcare fină a sclipiciului */
@keyframes twinkle{
  0%   { transform: translate3d(0,0,0) }
  50%  { transform: translate3d(2px, -3px, 0) }
  100% { transform: translate3d(0,0,0) }
}

@media (prefers-reduced-motion: reduce){
  .glitter::before{ animation: none }
}

/* Titluri și texte */
.title{font-size: clamp(22px, 2.2vw + 12px, 34px); margin:0 0 10px}
.subtitle{color:var(--muted); margin:0 0 14px}

/* Card & form */
.card{background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.015)); border:1px solid var(--border); border-radius:var(--radius); padding:18px; box-shadow:var(--shadow)}
.card-title{margin:0 0 12px; font-size:20px}

.field{margin-bottom:12px}
label{display:block; font-size:14px; color:var(--muted); margin-bottom:6px}
input,textarea{
  width:100%; background:#1a112a; color:var(--txt);
  border:1px solid transparent; outline:none; border-radius:10px; padding:12px 12px;
  transition:border-color .2s, box-shadow .2s;
}
input:focus, textarea:focus{border-color:rgba(178,108,255,.55); box-shadow:0 0 0 3px rgba(178,108,255,.18)}
textarea{resize:vertical}
.err{color:var(--err); font-size:12px; height:14px; display:block; padding-top:4px}

/* Anti-spam honeypot */
.hp{position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden}

/* Buttons */
.btn{
  appearance:none; border:0; cursor:pointer; padding:12px 16px; border-radius:12px;
  background:linear-gradient(135deg, var(--pri), var(--pri-2)); color:#11051c; font-weight:700;
  width:100%;
}
.btn:hover{filter:brightness(1.05)}
.btn:disabled{opacity:.6; cursor:not-allowed}

.policy{color:var(--muted); font-size:12px; margin:8px 0 0}
#form-status{margin-top:10px; min-height:18px; font-size:14px}
.ok{color:var(--ok)}
.error{color:var(--err)}

/* Secțiune contact */
.contact-quick{padding:24px 0 40px; border-top:1px solid var(--border)}
.contact-quick a{color:var(--txt); text-decoration:none}

/* Footer */
.site-footer{padding:20px 0; border-top:1px solid var(--border); color:var(--muted)}

/* Responsive */
@media (max-width: 880px){
  .hero-grid{grid-template-columns:1fr; gap:18px}
  .contact-top{display:none}
}