:root {
    --bg: #08080d;
    --bg-soft: #0d0c16;
    --panel: #11101b;
    --text: #f4f3f6;
    --muted: #8f8c99;
    --line: rgba(255,255,255,.09);
    --line-soft: rgba(255,255,255,.055);
    --accent: #7772ff;
    --accent-soft: #2a214c;
    --green: #25dc7c;
    --mx: 50%;
    --my: 45%;
}

* { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; background: var(--bg); }
body {
    min-width: 0;
    background: var(--bg);
    color: var(--text);
    font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    line-height: 1.6;
    overflow-x: hidden;
    cursor: none;
}
a, button { color: inherit; cursor: none; }
a { text-decoration: none; }
img { width: 100%; display: block; }
::selection { background: rgba(119,114,255,.35); color: #fff; }

.noise {
    position: fixed; inset: 0; z-index: 9997; pointer-events: none; opacity: .032;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E");
}

.preloader {
    position: fixed; inset: 0; z-index: 10000; display: grid; place-content: center; gap: 20px;
    background: #07070a; transition: opacity .7s ease, visibility .7s ease;
}
.preloader.is-hidden { opacity: 0; visibility: hidden; }
.preloader__brand { font-size: clamp(26px, 5vw, 64px); font-weight: 800; letter-spacing: -.06em; }
.preloader__line { width: min(260px, 60vw); height: 1px; background: rgba(255,255,255,.12); overflow: hidden; }
.preloader__line span { display:block; width:100%; height:100%; background:#fff; transform: translateX(-100%); animation: preload 1.25s cubic-bezier(.77,0,.18,1) forwards; }
@keyframes preload { to { transform: translateX(0); } }

.cursor-dot, .cursor-ring { position: fixed; top: 0; left: 0; pointer-events: none; z-index: 9999; border-radius: 50%; transform: translate(-50%,-50%); }
.cursor-dot { width: 5px; height: 5px; background: #fff; }
.cursor-ring { width: 34px; height: 34px; border: 1px solid rgba(255,255,255,.45); transition: width .2s ease, height .2s ease, background .2s ease; }
body.cursor-hover .cursor-ring { width: 58px; height: 58px; background: rgba(255,255,255,.08); }

.site-header {
    position: fixed; top: 0; left: 0; width: 100%; z-index: 1000; height: 94px; padding: 0 clamp(20px, 3.2vw, 54px);
    display: flex; align-items: center; justify-content: space-between; transition: background .35s ease, border-color .35s ease, height .35s ease;
}
.site-header.is-scrolled { height: 72px; background: rgba(8,8,13,.75); border-bottom: 1px solid var(--line-soft); backdrop-filter: blur(18px); }
.brand { display: inline-flex; align-items: center; gap: 10px; font-size: 18px; font-weight: 850; letter-spacing: -.05em; }
.brand__image{width:34px;height:34px;object-fit:contain;border-radius:9px}
.brand__mark { width: 11px; height: 11px; border: 2px solid #fff; border-radius: 50%; position: relative; }
.brand__mark::after { content:""; position:absolute; width:3px; height:3px; border-radius:50%; background:var(--accent); left:2px; top:2px; }
.main-nav { display: flex; align-items: center; gap: clamp(24px, 3vw, 44px); }
.main-nav a { position: relative; font-size: 12px; font-weight: 700; letter-spacing: .11em; text-transform: uppercase; color: #dddbe3; }
.main-nav a::after { content:""; position:absolute; left:0; bottom:-7px; width:100%; height:1px; background:#fff; transform:scaleX(0); transform-origin:right; transition:transform .35s ease; }
.main-nav a:hover::after { transform:scaleX(1); transform-origin:left; }
.main-nav .nav-login { border:1px solid var(--line); border-radius:100px; padding:10px 16px; }
.main-nav .nav-login::after { display:none; }
.nav-user-menu{position:relative;margin-left:-12px;flex:0 0 auto}
.nav-user-trigger{min-width:178px;height:48px;padding:5px 9px 5px 5px;display:grid;grid-template-columns:38px minmax(0,1fr) 20px;align-items:center;gap:9px;border:1px solid rgba(255,255,255,.13);border-radius:16px;background:linear-gradient(135deg,rgba(255,255,255,.105),rgba(104,80,183,.075));color:#fff;box-shadow:0 14px 40px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.07);backdrop-filter:blur(22px);text-align:left;transition:border-color .25s ease,background .25s ease,transform .25s ease}
.nav-user-trigger:hover,.nav-user-trigger[aria-expanded="true"]{border-color:rgba(151,130,255,.4);background:linear-gradient(135deg,rgba(255,255,255,.14),rgba(116,91,212,.13));transform:translateY(-1px)}
.nav-user-trigger:focus-visible{outline:2px solid rgba(151,130,255,.8);outline-offset:3px}
.nav-user-avatar{width:38px;height:38px;position:relative;display:block;flex:0 0 auto}.nav-user-avatar img,.nav-user-avatar>b{width:38px;height:38px;border-radius:12px;object-fit:cover;display:grid;place-items:center;background:linear-gradient(145deg,#9b84ff,#33265f);color:#fff;font-size:12px;border:1px solid rgba(255,255,255,.16);box-shadow:0 8px 22px rgba(75,53,175,.3)}.nav-user-avatar i{position:absolute;right:-1px;bottom:-1px;width:9px;height:9px;border:2px solid #11101a;border-radius:50%;background:#79e2a6;box-shadow:0 0 10px rgba(102,216,151,.7)}
.nav-user-copy{min-width:0;display:grid;gap:0}.nav-user-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#f5f3f8;font-size:10px;line-height:1.35;letter-spacing:.025em}.nav-user-copy small{color:#817c8b;font-size:7px;line-height:1.35;letter-spacing:.15em;text-transform:uppercase}
.nav-user-chevron{width:18px;height:18px;fill:none;stroke:#8c8794;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s ease,color .25s ease}.nav-user-trigger[aria-expanded="true"] .nav-user-chevron{transform:rotate(180deg);stroke:#fff}
.nav-user-popover{position:absolute;z-index:10;top:calc(100% + 12px);right:0;width:300px;padding:8px;border:1px solid rgba(255,255,255,.12);border-radius:20px;background:linear-gradient(155deg,rgba(24,21,39,.98),rgba(9,8,15,.98));box-shadow:0 28px 80px rgba(0,0,0,.56),inset 0 1px 0 rgba(255,255,255,.06);backdrop-filter:blur(28px);opacity:0;visibility:hidden;transform:translateY(-8px) scale(.98);transform-origin:top right;transition:opacity .22s ease,visibility .22s ease,transform .22s ease}
.nav-user-menu.is-open .nav-user-popover{opacity:1;visibility:visible;transform:none}
.nav-user-popover::before{content:"";position:absolute;top:-5px;right:27px;width:10px;height:10px;border-left:1px solid rgba(255,255,255,.12);border-top:1px solid rgba(255,255,255,.12);background:#161322;transform:rotate(45deg)}
.nav-user-popover__status{position:relative;display:flex;align-items:center;justify-content:space-between;padding:11px 12px 13px;margin-bottom:4px;border-bottom:1px solid rgba(255,255,255,.075)}.nav-user-popover__status span,.nav-user-popover__status small{font-size:8px;letter-spacing:.12em;text-transform:uppercase}.nav-user-popover__status span{color:#bcb8c5}.nav-user-popover__status span i{display:inline-block;width:6px;height:6px;margin-right:7px;border-radius:50%;background:#70dfa0;box-shadow:0 0 9px rgba(112,223,160,.65)}.nav-user-popover__status small{color:#676270}
.main-nav .nav-user-action{display:grid;grid-template-columns:40px minmax(0,1fr) 16px;align-items:center;gap:11px;padding:10px;border-radius:13px;color:#e8e5ed;text-transform:none;letter-spacing:0;transition:background .2s ease,transform .2s ease}.main-nav .nav-user-action::after{display:none}.main-nav .nav-user-action:hover{background:rgba(255,255,255,.065);transform:translateX(2px)}.nav-user-action__icon{width:40px;height:40px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.09);border-radius:11px;background:rgba(255,255,255,.035);color:#b9b2cb}.nav-user-action__icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}.nav-user-action>span:nth-child(2){min-width:0;display:grid}.nav-user-action strong{font-size:11px;line-height:1.45;letter-spacing:.01em}.nav-user-action small{color:#716c79;font-size:8px;line-height:1.45;letter-spacing:.025em}.nav-user-action>b{color:#686271;font-size:11px;font-weight:400}.main-nav .nav-user-action--danger{margin-top:4px;border-top:1px solid rgba(255,255,255,.065);border-radius:0 0 13px 13px}.nav-user-action--danger .nav-user-action__icon{color:#db91a0;background:rgba(255,90,116,.055)}.nav-user-action--danger strong{color:#e7a4b0}
.menu-toggle { display:none; width:44px; height:44px; background:transparent; border:0; position:relative; z-index:1002; }
.menu-toggle span { position:absolute; left:10px; width:24px; height:1px; background:#fff; transition:.35s ease; }
.menu-toggle span:first-child { top:18px; } .menu-toggle span:last-child { top:26px; }
.menu-toggle.is-open span:first-child { transform:translateY(4px) rotate(45deg); }
.menu-toggle.is-open span:last-child { transform:translateY(-4px) rotate(-45deg); }

.hero {
    position: relative; min-height: 100svh; display: grid; place-items: center; overflow: hidden; isolation: isolate;
    background:
      radial-gradient(circle at var(--mx) var(--my), rgba(54,38,116,.42), transparent 38%),
      linear-gradient(90deg, #07070a 0%, #111024 28%, #17123a 50%, #111024 72%, #07070a 100%);
}
.hero::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg, rgba(0,0,0,.45), transparent 24%, transparent 76%, rgba(0,0,0,.45)); }
.hero-glow { position:absolute; width:62vw; aspect-ratio:1; border-radius:50%; background:radial-gradient(circle,rgba(99,73,211,.16),transparent 65%); filter:blur(15px); }
.orbit { position:absolute; border:1px solid rgba(255,255,255,.065); border-radius:50%; aspect-ratio:1; }
.orbit--outer { width:min(53vw,810px); border-style:dashed; animation:spin 60s linear infinite; }
.orbit--inner { width:min(39vw,600px); }
@keyframes spin { to { transform:rotate(360deg); } }
.orbit-dot { position:absolute; width:8px; height:8px; border-radius:50%; background:#8f8c99; left:calc(50% - min(19.5vw,300px) * .65); top:calc(50% + min(19.5vw,300px) * .76); box-shadow:0 0 14px rgba(255,255,255,.5); }
.hero-content { position:relative; z-index:3; display:flex; flex-direction:column; align-items:center; width:min(900px,90vw); padding-top:52px; text-align:center; }
.availability { display:inline-flex; align-items:center; gap:10px; padding:8px 15px; border:1px solid rgba(255,255,255,.13); background:rgba(255,255,255,.05); border-radius:100px; color:#aaa6b3; font:600 10px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.13em; }
.availability span { width:8px; height:8px; border-radius:50%; background:var(--green); box-shadow:0 0 0 4px rgba(37,220,124,.1),0 0 14px rgba(37,220,124,.85); }
.hero h1 { display:flex; flex-direction:column; align-items:center; margin:45px 0 28px; line-height:.75; letter-spacing:-.075em; }
.hero-title-sans { font-size:clamp(105px,14vw,230px); font-weight:700; }
.hero-title-serif { font-family:Georgia,"Times New Roman",serif; font-size:clamp(92px,12vw,195px); font-weight:400; font-style:italic; color:#8b8990; letter-spacing:-.09em; }
.hero-notes { display:grid; grid-template-columns:1fr 1px 1fr; align-items:center; gap:44px; width:min(590px,80vw); color:#9996a2; font-size:14px; line-height:1.8; }
.hero-notes p:first-child { text-align:right; } .hero-notes p:last-child { text-align:left; }
.hero-divider { width:1px; height:64px; background:rgba(255,255,255,.12); }
.scroll-cue { position:absolute; z-index:5; bottom:0; left:50%; transform:translateX(-50%); height:105px; display:flex; flex-direction:column; align-items:center; color:#66636d; font:600 8px/1 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.14em; }
.scroll-cue i { display:block; width:1px; flex:1; margin-top:13px; background:linear-gradient(to bottom,rgba(255,255,255,.22),transparent); }

.section { padding:clamp(100px,12vw,190px) clamp(22px,6vw,100px); border-top:1px solid var(--line-soft); }
.section-head { display:grid; grid-template-columns:.7fr 2fr; gap:50px; align-items:start; margin-bottom:clamp(70px,9vw,130px); }
.section-head > div, .section-kicker { display:flex; align-items:baseline; gap:18px; }
.section-index { font-family:Georgia,serif; font-style:italic; font-size:17px; }
.eyebrow { font:600 10px/1.3 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.24em; color:#77737f; }
.section-head h2, .about h2 { max-width:1050px; font-size:clamp(45px,7vw,110px); line-height:.98; letter-spacing:-.06em; font-weight:500; }
em { font-family:Georgia,"Times New Roman",serif; font-weight:400; color:#77757c; }

.works { background:#09090e; }
.project-grid { display:grid; grid-template-columns:1.25fr .75fr; gap:clamp(28px,4vw,70px); align-items:start; }
.project-card:nth-child(3) { margin-top:18vw; }
.project-card--wide { grid-column:1/-1; width:75%; margin-left:auto; margin-top:6vw; }
.project-card a { display:block; }
.project-media { position:relative; overflow:hidden; background:#111; aspect-ratio:4/5; transform:translateZ(0); }
.project-card--large .project-media { aspect-ratio:1.05/1; }
.project-card--wide .project-media { aspect-ratio:2/1; }
.project-media::after { content:""; position:absolute; inset:0; border:1px solid rgba(255,255,255,.08); pointer-events:none; }
.project-media img { height:100%; object-fit:cover; transition:transform 1.1s cubic-bezier(.16,1,.3,1),filter .8s ease; }
.project-card:hover img { transform:scale(1.045); filter:saturate(1.15); }
.project-meta { display:flex; justify-content:space-between; margin-top:17px; color:#716e79; font:600 9px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.13em; }
.project-card h3 { margin-top:8px; font-size:clamp(27px,3vw,50px); font-weight:450; letter-spacing:-.045em; }

.about { background:linear-gradient(180deg,#0b0a12,#09090e); }
.about-grid { display:grid; grid-template-columns:1.35fr .65fr; gap:10vw; }
.about .section-kicker { margin-bottom:75px; }
.about-body { padding-top:106px; color:#9b98a2; font-size:clamp(17px,1.5vw,23px); font-weight:300; }
.about-body p + p { margin-top:30px; color:#d2cfd7; }
.stats { display:grid; grid-template-columns:repeat(4,1fr); margin-top:120px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.stats > div { padding:42px 28px; border-right:1px solid var(--line); }
.stats > div:last-child { border-right:0; }
.stats strong { display:block; font-size:clamp(38px,5vw,72px); font-weight:350; letter-spacing:-.06em; line-height:1; }
.stats strong span { color:#5c5964; font-size:.45em; }
.stats small { display:block; margin-top:15px; color:#6f6c76; font:600 9px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.13em; }

.services { background:#0a0a0f; }
.section-head--services { margin-bottom:60px; }
.section-head--services p { max-width:380px; margin-left:auto; color:#888590; }
.service-list { border-top:1px solid var(--line); }
.service-row { min-height:145px; display:grid; grid-template-columns:90px 1.2fr 1fr 40px; gap:30px; align-items:center; border-bottom:1px solid var(--line); transition:background .35s ease,padding .35s ease; }
.service-row:hover { background:rgba(255,255,255,.025); padding-left:20px; padding-right:20px; }
.service-row > span { color:#5d5a65; font-family:Georgia,serif; font-style:italic; }
.service-row h3 { font-size:clamp(26px,3.5vw,58px); font-weight:450; letter-spacing:-.05em; }
.service-row p { color:#817e89; max-width:420px; }
.service-row i { font-size:24px; font-style:normal; transition:transform .35s ease; }
.service-row:hover i { transform:translate(6px,-6px); }

.contact { position:relative; min-height:80vh; display:grid; place-items:center; overflow:hidden; background:radial-gradient(circle at center,#1a1640 0,#0d0c18 45%,#08080d 75%); border-top:1px solid var(--line); }
.contact::before { content:""; position:absolute; inset:-12%; background:radial-gradient(ellipse 18% 85% at 24% -8%,rgba(255,244,226,.1),transparent 72%),radial-gradient(ellipse 20% 90% at 76% -10%,rgba(255,244,226,.08),transparent 74%),radial-gradient(ellipse 58% 28% at 50% 92%,rgba(232,117,135,.08),transparent 72%);filter:blur(18px);animation:contactLightDrift 14s ease-in-out infinite alternate; }
@keyframes contactLightDrift { to { transform:translate3d(1.5%,-1%,0) scale(1.035);opacity:.82; } }
.contact-orbit { position:absolute; width:min(67vw,900px); aspect-ratio:1; border-radius:50%; border:1px solid rgba(255,255,255,.07); box-shadow:0 0 0 100px rgba(255,255,255,.012),0 0 0 200px rgba(255,255,255,.008); }
.contact-content { position:relative; z-index:2; text-align:center; padding:100px 20px; }
.contact h2 { margin:28px 0 50px; font-size:clamp(56px,9vw,145px); line-height:.9; letter-spacing:-.075em; font-weight:550; }
.contact h2 em { display:block; }
.contact-link { display:inline-flex; align-items:center; gap:30px; padding:20px 30px; border:1px solid rgba(255,255,255,.15); border-radius:100px; background:rgba(255,255,255,.035); backdrop-filter:blur(10px); font-size:clamp(16px,2vw,25px); }
.contact-link span { transition:transform .3s ease; }.contact-link:hover span{transform:translate(5px,-5px)}

.site-footer { padding:55px clamp(22px,6vw,100px) 30px; background:#060609; border-top:1px solid var(--line-soft); }
.footer-top,.footer-bottom { display:flex; align-items:center; justify-content:space-between; gap:30px; }
.footer-top { padding-bottom:55px; }
.footer-top p { color:#6f6c76; }
.brand--footer { font-size:24px; }
.footer-bottom { padding-top:28px; border-top:1px solid var(--line); color:#65626d; font-size:11px; letter-spacing:.08em; text-transform:uppercase; }
.footer-links { display:flex; gap:25px; }
.footer-bottom a:hover { color:#fff; }

.reveal { opacity:0; transform:translateY(45px); transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1); }
.reveal.is-visible { opacity:1; transform:none; }

@media (max-width: 900px) {
    body, a, button { cursor:auto; }
    .cursor-dot,.cursor-ring { display:none; }
    .menu-toggle { display:block; }
    .main-nav { position:fixed; inset:0; z-index:1001; background:rgba(8,8,13,.97); backdrop-filter:blur(18px); flex-direction:column; justify-content:center; gap:28px; opacity:0; visibility:hidden; transition:.35s ease; }
    .main-nav.is-open { opacity:1; visibility:visible; }
    .main-nav a { font-size:clamp(24px,6vw,42px); letter-spacing:-.03em; text-transform:none; }
    .main-nav .nav-login { border:0; padding:0; }
    .nav-user-menu{width:min(330px,calc(100vw - 36px));margin:4px 0 0}.nav-user-trigger{width:100%;height:56px;grid-template-columns:44px minmax(0,1fr) 22px;padding:6px;border-radius:18px}.nav-user-avatar,.nav-user-avatar img,.nav-user-avatar>b{width:44px;height:44px}.nav-user-copy strong{font-size:12px}.nav-user-copy small{font-size:8px}.nav-user-popover{top:calc(100% + 8px);left:0;right:0;width:100%}
    .hero { min-height:860px; }
    .orbit--outer { width:85vw; }.orbit--inner{width:68vw}
    .hero-notes { width:min(580px,88vw); gap:24px; }
    .section-head,.about-grid { grid-template-columns:1fr; }
    .section-head { gap:35px; }
    .project-grid { grid-template-columns:1fr; }
    .project-card:nth-child(3),.project-card--wide { margin-top:0; }
    .project-card--wide { grid-column:auto; width:100%; }
    .project-card--wide .project-media { aspect-ratio:1.25/1; }
    .about-body { padding-top:0; }
    .stats { grid-template-columns:1fr 1fr; }
    .stats > div:nth-child(2) { border-right:0; }
    .stats > div:nth-child(-n+2) { border-bottom:1px solid var(--line); }
    .service-row { grid-template-columns:55px 1fr 35px; padding:28px 0; }
    .service-row p { grid-column:2/3; }
    .service-row i { grid-column:3; grid-row:1; }
}

@media (max-width: 600px) {
    .site-header { height:76px; }
    .brand { font-size:15px; }
    .hero { min-height:760px; }
    .hero-content { padding-top:15px; }
    .availability { font-size:8px; }
    .hero h1 { margin:42px 0 40px; }
    .hero-title-sans { font-size:29vw; }
    .hero-title-serif { font-size:25vw; }
    .hero-notes { grid-template-columns:1fr; gap:15px; font-size:12px; width:82vw; }
    .hero-notes p:first-child,.hero-notes p:last-child { text-align:center; }
    .hero-divider { width:55px; height:1px; margin:auto; }
    .orbit--outer { width:130vw; }.orbit--inner{width:98vw}
    .orbit-dot { display:none; }
    .section { padding:95px 22px; }
    .about .section-kicker { margin-bottom:45px; }
    .stats { margin-top:75px; }
    .stats > div { padding:28px 16px; }
    .service-row { grid-template-columns:38px 1fr 25px; gap:12px; }
    .service-row p { font-size:13px; }
    .footer-top,.footer-bottom { align-items:flex-start; flex-direction:column; }
    .footer-links { flex-wrap:wrap; }
    .contact { min-height:690px; }
    .contact-link { gap:15px; padding:15px 18px; }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior:auto; }
    *,*::before,*::after { animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; }
}

/* Hesap kimliği + bütün sayfalarda hafif 3B derinlik */
body::after{content:"";position:fixed;z-index:-1;width:34vw;height:34vw;right:-12vw;top:18vh;border-radius:50%;background:radial-gradient(circle at 32% 28%,rgba(157,130,255,.2),rgba(60,40,130,.05) 43%,transparent 68%);filter:blur(6px);transform:perspective(900px) rotateX(58deg) rotateZ(-18deg);pointer-events:none}
.panel-user{display:flex!important;align-items:center;gap:8px}.panel-user img{width:30px;height:30px;border-radius:50%;object-fit:cover;box-shadow:0 7px 18px rgba(79,59,180,.3)}
