/* ============================================================
   SVKL — ortak tasarım sistemi
   index.html, cozum/*.html, alan/*.html bu dosyayı kullanır.
   ============================================================ */
:root{
  --bg:#08080B; --bg-2:#0C0C11;
  --line:rgba(255,255,255,.075);
  --line-2:rgba(255,255,255,.14);
  --text:#F4F4F6; --text-2:#A3A3AE; --text-3:#6E6E7A;
  --violet:#8B5CF6; --indigo:#6366F1; --cyan:#22D3EE;
  --c:#8B5CF6;

  --c-restoran:#FB923C; --c-oto:#60A5FA; --c-kuafor:#E879F9;
  --c-market:#4ADE80;  --c-insaat:#FBBF24; --c-klinik:#2DD4BF;
  --c-spor:#FB7185;    --c-emlak:#A78BFA; --c-eticaret:#F472B6;
  --c-dugun:#C084FC;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg)}
body{
  margin:0;background:var(--bg);color:var(--text);
  font-family:Inter,'Segoe UI',system-ui,-apple-system,sans-serif;
  font-size:16.5px;line-height:1.65;-webkit-font-smoothing:antialiased;
  overflow-x:hidden;position:relative;
}
body::before{
  content:'';position:fixed;inset:0;z-index:0;pointer-events:none;
  background-image:
    linear-gradient(rgba(255,255,255,.028) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.028) 1px, transparent 1px);
  background-size:76px 76px;
  -webkit-mask-image:radial-gradient(ellipse 120% 55% at 50% -5%, #000 35%, transparent 78%);
  mask-image:radial-gradient(ellipse 120% 55% at 50% -5%, #000 35%, transparent 78%);
}
body::after{
  content:'';position:fixed;left:50%;top:-420px;width:1500px;height:820px;
  transform:translateX(-50%);z-index:0;pointer-events:none;
  background:radial-gradient(ellipse 50% 50% at 50% 50%,
             rgba(139,92,246,.20) 0%, rgba(99,102,241,.10) 42%, transparent 72%);
}
main,header,footer,.dark-zone{position:relative;z-index:1}
::selection{background:rgba(139,92,246,.35)}
img,svg{max-width:100%}

.shell{max-width:1200px;margin:0 auto;padding:0 28px}
@media(max-width:720px){ .shell{padding:0 20px} body{font-size:16px} }

/* ---------- tipografi ---------- */
.display{
  font-size:clamp(38px,6.2vw,74px);font-weight:800;letter-spacing:-.045em;
  line-height:1.05;margin:0;
  background:linear-gradient(180deg,#FFFFFF 30%, #B9B9C6 100%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
.h2{font-size:clamp(28px,4vw,46px);font-weight:800;letter-spacing:-.035em;line-height:1.1;margin:0;
    background:linear-gradient(180deg,#FFFFFF 35%, #C2C2CE 100%);
    -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.lead{font-size:clamp(16.5px,1.6vw,19px);color:var(--text-2);line-height:1.68}
.mono{font-family:'Fira Code',monospace;font-size:11px;letter-spacing:.2em;text-transform:uppercase}
.muted{color:var(--text-3)}
.accent-line{width:60px;height:2px;margin:26px 0;background:linear-gradient(90deg,var(--violet),var(--cyan))}

/* ---------- bölüm başlığı ---------- */
.sec{padding:clamp(64px,8vw,110px) 0;position:relative}
.sec + .sec{border-top:1px solid var(--line)}
.sec-head{display:flex;align-items:center;gap:16px;margin-bottom:30px}
.sec-no{font-family:'Fira Code',monospace;font-size:12px;color:var(--c)}
.sec-label{font-family:'Fira Code',monospace;font-size:10.5px;letter-spacing:.24em;
           text-transform:uppercase;color:var(--text-3);white-space:nowrap}
.sec-line{flex:1;height:1px;background:linear-gradient(90deg,var(--line-2),transparent)}

/* ---------- butonlar ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  padding:14px 24px;border-radius:10px;font-weight:600;font-size:15.5px;
  text-decoration:none;border:1px solid transparent;cursor:pointer;font-family:inherit;
  transition:transform .18s cubic-bezier(.2,0,.2,1), box-shadow .18s, background .18s, border-color .18s;
  white-space:nowrap;
}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:#FFF;color:#0A0A0E;
  box-shadow:0 1px 0 rgba(255,255,255,.6) inset, 0 8px 24px -8px rgba(255,255,255,.28)}
.btn-primary:hover{box-shadow:0 1px 0 rgba(255,255,255,.7) inset, 0 12px 34px -8px rgba(255,255,255,.4)}
.btn-ghost{background:rgba(255,255,255,.04);color:var(--text);border-color:var(--line-2)}
.btn-ghost:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.26)}
.btn svg{width:17px;height:17px}

/* ---------- üst bar ---------- */
.topbar{position:sticky;top:0;z-index:60;background:rgba(8,8,11,.72);
        backdrop-filter:blur(16px) saturate(140%);border-bottom:1px solid var(--line)}
.topbar-in{display:flex;align-items:center;gap:30px;height:70px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--text)}
.brand-icon{width:30px;height:30px;flex:0 0 auto}
.brand-name{font-weight:800;font-size:18px;letter-spacing:-.03em}
.nav{display:flex;gap:26px;margin-left:auto;align-items:center}
.nav > a{color:var(--text-2);text-decoration:none;font-size:15px;font-weight:500;transition:color .18s}
.nav > a:hover{color:var(--text)}
.nav .btn{padding:10px 18px;font-size:14.5px}
.nav-mini{display:none;margin-left:auto;padding:10px 16px;font-size:14px}
.burger{display:none;margin-left:auto;background:rgba(255,255,255,.04);
        border:1px solid var(--line-2);border-radius:9px;padding:9px;cursor:pointer;color:var(--text)}
@media(max-width:980px){ .nav{display:none} .burger{display:block} .nav-mini{display:inline-flex} }
.drawer{display:none;border-bottom:1px solid var(--line);background:rgba(8,8,11,.98);backdrop-filter:blur(16px)}
.drawer.open{display:block}
.drawer a{display:block;padding:15px 0;border-bottom:1px solid var(--line);
          color:var(--text);text-decoration:none;font-weight:550;font-size:16.5px}
.drawer a:last-child{border-bottom:0;color:var(--violet)}

/* ---------- spotlight kart ---------- */
.card{position:relative;border:1px solid var(--line);border-radius:14px;
      background:linear-gradient(180deg, rgba(255,255,255,.038), rgba(255,255,255,.008));
      overflow:hidden;transition:border-color .25s, transform .25s cubic-bezier(.2,0,.2,1)}
.card::before{content:'';position:absolute;inset:0;opacity:0;transition:opacity .3s;pointer-events:none;
  background:radial-gradient(420px circle at var(--mx,50%) var(--my,0%), rgba(255,255,255,.07), transparent 42%)}
.card:hover{border-color:var(--line-2);transform:translateY(-3px)}
.card:hover::before{opacity:1}

/* ---------- çözüm kartı (paylaşılan) ---------- */
.sol-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:12px}
.sol{display:block;padding:22px;text-decoration:none;color:inherit}
.sol-top{display:flex;align-items:center;gap:9px;margin-bottom:13px}
.sol-dot{width:7px;height:7px;border-radius:2px;background:var(--c);
         box-shadow:0 0 10px color-mix(in srgb, var(--c) 80%, transparent)}
.sol-tag{font-family:'Fira Code',monospace;font-size:9.5px;letter-spacing:.16em;
         text-transform:uppercase;color:var(--c)}
.sol h3{font-size:16.5px;font-weight:650;letter-spacing:-.02em;margin:0 0 7px;color:var(--text)}
.sol p{margin:0;font-size:14px;color:var(--text-3);line-height:1.58}
.sol-go{display:inline-flex;align-items:center;gap:5px;margin-top:14px;font-size:13px;
        color:var(--text-3);transition:color .18s,gap .18s}
.sol:hover .sol-go{color:var(--c);gap:9px}

/* ---------- CTA bandı ---------- */
.band{position:relative;border-radius:18px;overflow:hidden;
      padding:clamp(40px,6vw,64px) clamp(26px,5vw,52px);border:1px solid var(--line-2);
      background:linear-gradient(140deg, rgba(139,92,246,.20), rgba(34,211,238,.10) 60%, rgba(255,255,255,.02))}
.band::before{content:'';position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(700px circle at 15% 0%, rgba(139,92,246,.28), transparent 62%)}
.band > *{position:relative}
.band p{color:rgba(244,244,246,.78);max-width:58ch;margin:16px 0 0}
.band-cta{display:flex;flex-wrap:wrap;gap:11px;margin-top:28px}

/* ============ ALT SAYFALAR (çözüm / alan) ============ */
.page-hero{padding:clamp(44px,6vw,80px) 0 clamp(34px,4vw,52px)}
.crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:13.5px;
        color:var(--text-3);margin-bottom:26px}
.crumbs a{color:var(--text-3);text-decoration:none;transition:color .18s}
.crumbs a:hover{color:var(--text)}
.crumbs span{color:var(--text-3)}
.crumb-now{color:var(--text-2)}
.chip{display:inline-flex;align-items:center;gap:9px;padding:6px 14px 6px 10px;border-radius:999px;
      border:1px solid color-mix(in srgb, var(--c) 32%, transparent);
      background:color-mix(in srgb, var(--c) 10%, transparent);
      font-size:12.5px;color:var(--c);margin-bottom:22px;
      font-family:'Fira Code',monospace;letter-spacing:.1em;text-transform:uppercase}
.chip-dot{width:6px;height:6px;border-radius:50%;background:var(--c);
          box-shadow:0 0 8px color-mix(in srgb, var(--c) 80%, transparent)}
.page-hero .lead{max-width:62ch;margin:22px 0 0}
.page-cta{display:flex;flex-wrap:wrap;gap:11px;margin-top:30px}
.who{margin:26px 0 0;padding-top:20px;border-top:1px solid var(--line);
     font-size:14.5px;color:var(--text-3);max-width:62ch}
.who strong{color:var(--text-2);font-weight:600}

.two-col{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,56px)}
@media(max-width:860px){ .two-col{grid-template-columns:1fr;gap:44px} }

.flow{list-style:none;margin:0;padding:0;counter-reset:f}
.flow li{display:flex;gap:16px;padding:16px 0;border-bottom:1px solid var(--line);font-size:15.5px;
         color:var(--text-2);line-height:1.6}
.flow li:last-child{border-bottom:0}
.flow-n{font-family:'Fira Code',monospace;font-size:12px;color:var(--c);flex:0 0 auto;padding-top:3px}

.wins{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}
.wins li{display:flex;gap:14px;font-size:15.5px;color:var(--text-2);line-height:1.6}
.tick{width:20px;height:20px;border-radius:6px;flex:0 0 auto;margin-top:2px;position:relative;
      background:color-mix(in srgb, var(--c) 16%, transparent);
      border:1px solid color-mix(in srgb, var(--c) 34%, transparent)}
.tick::after{content:'';position:absolute;left:6px;top:3px;width:5px;height:9px;
             border:solid var(--c);border-width:0 2px 2px 0;transform:rotate(42deg)}

/* SSS */
.faq{display:flex;flex-direction:column;gap:10px}
.faq-i{overflow:hidden}
.faq-q{width:100%;display:flex;align-items:center;gap:16px;padding:19px 22px;background:none;
       border:0;cursor:pointer;font:inherit;color:var(--text);text-align:left;
       font-size:16px;font-weight:600;letter-spacing:-.015em}
.faq-q > span:first-child{flex:1}
.faq-sign{width:18px;height:18px;position:relative;flex:0 0 auto;opacity:.55}
.faq-sign::before,.faq-sign::after{content:'';position:absolute;background:currentColor;
  left:50%;top:50%;transition:transform .3s ease}
.faq-sign::before{width:11px;height:1.5px;transform:translate(-50%,-50%)}
.faq-sign::after{width:1.5px;height:11px;transform:translate(-50%,-50%)}
.faq-i.open .faq-sign::after{transform:translate(-50%,-50%) scaleY(0)}
.faq-i.open{border-color:color-mix(in srgb, var(--c) 32%, transparent)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .38s cubic-bezier(.4,0,.2,1)}
.faq-a p{margin:0;padding:0 22px 20px;color:var(--text-3);font-size:15px;line-height:1.65}

/* ---------- footer ---------- */
.foot{border-top:1px solid var(--line);padding:44px 0 52px}
.foot-in{display:flex;flex-wrap:wrap;align-items:center;gap:18px}
.foot-links{display:flex;flex-wrap:wrap;gap:20px;margin-left:auto;align-items:center}
.foot-links a{color:var(--text-3);text-decoration:none;font-size:13.5px;transition:color .18s}
.foot-links a:hover{color:var(--text)}
.foot-copy{font-size:13px;color:var(--text-3);width:100%;padding-top:22px;
           border-top:1px solid var(--line);margin-top:6px;
           display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}

/* ---------- ortak ---------- */
.reveal{opacity:0;transform:translateY(20px);
        transition:opacity .75s ease, transform .75s cubic-bezier(.16,1,.3,1)}
.reveal.active{opacity:1;transform:none}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:2px solid var(--cyan);outline-offset:3px}
.skip{position:absolute;left:16px;top:-80px;z-index:100;background:var(--violet);color:#fff;
      padding:12px 20px;border-radius:9px;font-weight:600;transition:top .2s;text-decoration:none}
.skip:focus{top:16px}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;
                       scroll-behavior:auto!important}
  .reveal{opacity:1;transform:none}
}
