:root{
  --background:#05070a; --foreground:#e9f1ee; --card:#0c1116; --card-foreground:#e9f1ee;
  --border:#1d262e; --primary:#2fe08a; --chart-2:#38bdf8; --chart-4:#a78bfa; --radius:14px;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{background:var(--background);color:var(--foreground);font-family:"Sora",system-ui,-apple-system,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
.wrap{position:relative;min-height:100dvh;width:100%;overflow-x:hidden}
.bg{position:fixed;inset:0;pointer-events:none}
.bg img,.bg video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.1);animation:float-soft 18s ease-in-out infinite alternate}
.bg .tint{position:absolute;inset:0;background:var(--background)}
.bg .grad{position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,7,10,.8),rgba(5,7,10,.25),var(--background))}
@keyframes float-soft{from{transform:scale(1.06)}to{transform:scale(1.14)}}

.aurora{position:absolute;border-radius:9999px;filter:blur(80px);opacity:.45;animation:aurora-drift 24s ease-in-out infinite alternate}
@keyframes aurora-drift{0%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(4vw,-3vh,0) scale(1.15)}100%{transform:translate3d(-3vw,4vh,0) scale(.95)}}
.tech-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(47,224,138,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(47,224,138,.09) 1px,transparent 1px);background-size:64px 64px;mask-image:radial-gradient(circle at 50% 45%,#000 20%,transparent 78%);animation:grid-move 14s linear infinite}
@keyframes grid-move{to{background-position:64px 64px}}
.scanline{position:absolute;left:0;right:0;height:160px;background:linear-gradient(180deg,transparent,rgba(47,224,138,.12),transparent);animation:scan 7s linear infinite}
@keyframes scan{0%{top:-20%}100%{top:110%}}
.vignette{position:absolute;inset:0;background:radial-gradient(circle at 50% 45%,transparent 40%,rgba(0,0,0,.75) 100%)}
.noise{position:absolute;inset:0;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.9'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)'/%3E%3C/svg%3E")}
.spark{position:absolute;bottom:-10px;border-radius:9999px;background:var(--primary);box-shadow:0 0 12px var(--primary);animation:spark-rise 12s linear infinite}
@keyframes spark-rise{0%{transform:translateY(0);opacity:0}10%{opacity:.8}100%{transform:translateY(-105vh);opacity:0}}
.spotlight{position:absolute;width:520px;height:520px;margin:-260px 0 0 -260px;border-radius:9999px;background:rgba(47,224,138,.15);filter:blur(60px);transition:transform .25s ease-out}

.shell{position:relative;z-index:10;display:flex;flex-direction:column;min-height:100dvh}
.glass-bar{position:sticky;top:0;z-index:30;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;padding:12px 16px;background:rgba(8,12,16,.45);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.06)}
.glass-bar img{height:34px;width:auto;object-fit:contain}
.marquee-mask{position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.marquee{display:inline-block;white-space:nowrap;animation:marquee 26s linear infinite;margin:0;font-size:13px;color:rgba(233,241,238,.8)}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

.hero{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:48px 20px}
.badge{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(47,224,138,.4);background:rgba(12,17,22,.4);border-radius:999px;padding:6px 16px;font-size:10px;letter-spacing:.3em;text-transform:uppercase;backdrop-filter:blur(10px);margin-bottom:24px}
.dot{width:7px;height:7px;border-radius:999px;background:var(--primary);animation:pulse 2s ease-in-out infinite}
@keyframes pulse{0%,100%{box-shadow:0 0 0 0 rgba(47,224,138,.6)}50%{box-shadow:0 0 0 8px rgba(47,224,138,0)}}
h1.hero-title{font-size:clamp(2.25rem,11vw,7.5rem);font-weight:800;line-height:.95;letter-spacing:-.02em;margin:0;text-shadow:0 10px 40px rgba(0,0,0,.55)}
.hero-shine{background:linear-gradient(100deg,#fff 20%,var(--primary) 45%,#fff 70%);-webkit-background-clip:text;background-clip:text;color:transparent;background-size:200% 100%;animation:shine 6s linear infinite}
@keyframes shine{to{background-position:-200% 0}}
.sep{display:block;height:1px;width:160px;max-width:70%;margin-top:24px;background:linear-gradient(90deg,transparent,var(--primary),transparent)}
.info{margin-top:22px;max-width:36rem;font-size:12px;letter-spacing:.28em;text-transform:uppercase;color:rgba(233,241,238,.75);animation:fade-up .6s ease both}
@keyframes fade-up{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}

.mobile-actions{margin-top:34px;display:flex;flex-direction:column;align-items:center;gap:18px;width:100%}
.cta{width:100%;max-width:20rem;border-radius:999px;border:1px solid rgba(47,224,138,.6);background:rgba(47,224,138,.15);color:inherit;padding:14px 28px;font-size:11px;font-weight:600;letter-spacing:.3em;text-transform:uppercase;cursor:pointer;backdrop-filter:blur(10px);box-shadow:0 12px 40px -12px rgba(47,224,138,.6)}
.cta:active{transform:scale(.98)}
.socials{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
.socials a{border:1px solid rgba(255,255,255,.12);background:rgba(12,17,22,.4);border-radius:999px;padding:11px;color:rgba(233,241,238,.8);backdrop-filter:blur(10px);display:inline-flex}
.socials a:hover{color:var(--primary)}

.rail{position:absolute;right:0;top:50%;transform:translateY(-50%);z-index:20;display:none;flex-direction:column;align-items:center;gap:20px;padding-right:16px}
.rail button{background:none;border:0;color:rgba(233,241,238,.7);font-size:11px;letter-spacing:.4em;text-transform:uppercase;writing-mode:vertical-rl;cursor:pointer;transition:.3s}
.rail button:hover{color:var(--primary);letter-spacing:.5em}
.rail a{color:rgba(233,241,238,.7);transition:.3s}
.rail a:hover{color:var(--primary);transform:translateY(-2px) scale(1.2);filter:drop-shadow(0 0 10px var(--primary))}

footer.site{margin-top:auto;padding:16px;display:flex;flex-direction:column;gap:14px}
.refs{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px}
.refs::-webkit-scrollbar{height:0}
.ref-card{flex:0 0 auto;scroll-snap-align:start;display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:8px;border:1px solid rgba(255,255,255,.1);background:rgba(12,17,22,.5);border-radius:12px;padding:8px;backdrop-filter:blur(10px);transition:.35s}
.ref-card:hover{transform:translateY(-4px);border-color:rgba(47,224,138,.55);box-shadow:0 16px 40px -18px var(--primary)}
.ref-card img{height:48px;width:100%;object-fit:contain;transition:.5s}
.ref-card:hover img{transform:scale(1.1)}
.ref-card span{font-size:11px;font-weight:600;text-align:center;line-height:1.2}
.admin-link{display:none;justify-content:center;font-size:11px;color:rgba(233,241,238,.4)}

/* İletişim paneli */
.overlay{position:fixed;inset:0;z-index:60;display:none;align-items:center;justify-content:center;padding:12px;background:rgba(3,5,8,.72);backdrop-filter:blur(14px);overflow-y:auto}
.overlay.open{display:flex;animation:fade-in .25s ease both}
@keyframes fade-in{from{opacity:0}to{opacity:1}}
.panel{position:relative;width:100%;max-width:960px;margin:auto;border:1px solid rgba(255,255,255,.12);background:linear-gradient(160deg,rgba(12,17,22,.96),rgba(6,9,12,.96));border-radius:20px;padding:56px 22px 24px;display:grid;gap:24px;animation:panel-in .35s cubic-bezier(.2,.8,.2,1) both;box-shadow:0 40px 120px -40px rgba(47,224,138,.35)}
@keyframes panel-in{from{opacity:0;transform:translateY(24px) scale(.97)}to{opacity:1;transform:none}}
.panel h2{margin:0 0 8px;font-size:26px}
.panel .close{position:absolute;top:14px;right:14px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.05);color:inherit;border-radius:999px;width:36px;height:36px;cursor:pointer;font-size:18px}
.info-row{display:flex;gap:10px;align-items:center;padding:10px 0;border-bottom:1px dashed rgba(255,255,255,.08);font-size:14px;color:rgba(233,241,238,.85)}
.field{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}
.field label{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:rgba(233,241,238,.6)}
input,textarea,select{width:100%;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.14);color:inherit;border-radius:10px;padding:11px 12px;font:inherit;font-size:14px}
input:focus,textarea:focus,select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(47,224,138,.18)}
button.primary{border:0;border-radius:999px;background:var(--primary);color:#04120b;font-weight:700;padding:12px 22px;cursor:pointer;letter-spacing:.12em;text-transform:uppercase;font-size:12px}
.notice{border-radius:10px;padding:10px 12px;font-size:13px;background:rgba(47,224,138,.12);border:1px solid rgba(47,224,138,.4);margin-bottom:12px}
.notice.err{background:rgba(248,113,113,.12);border-color:rgba(248,113,113,.5)}

@media(min-width:1024px){
  .wrap{height:100dvh;overflow:hidden}
  .rail{display:flex}
  .glass-bar{position:static}
  .admin-link{display:flex}
  .refs{flex-wrap:wrap;justify-content:center;overflow:visible}
  .panel{grid-template-columns:1fr 1fr;padding:40px}
  .mobile-actions{display:none}
}
