:root{
  --ink:     #0B0F13;
  --card:    #161D25;
  --card-hi: #1D2630;
  --redact:  #05080B;
  --bone:    #E9E4D9;
  --dim:     #8B8880;
  --faint:   #67645E;
  --brass:   #B08D52;
  --brass-hi:#C69E5D;
  --rule:    rgba(233,228,217,.10);
}

*{ box-sizing:border-box; margin:0; padding:0 }
html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth }

body{
  background:var(--ink);
  color:var(--bone);
  font-family:"Newsreader", Georgia, serif;
  font-size:17px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
}

body::before{
  content:"";
  position:fixed; inset:0; z-index:0;
  background:
    radial-gradient(90% 55% at 50% -8%, rgba(176,141,82,.10), transparent 62%),
    radial-gradient(70% 50% at 88% 18%, rgba(176,141,82,.045), transparent 60%);
  pointer-events:none;
}

.wrap{ position:relative; z-index:1; max-width:38rem; margin:0 auto; padding:0 1.5rem }

a{ color:var(--bone) }

.skip{
  position:absolute; left:-9999px; top:0;
  background:var(--brass); color:#12161A; padding:.6rem 1rem; z-index:99;
}
.skip:focus{ left:.5rem; top:.5rem }

/* ═══ marka ve menü ═══════════════════════════ */
.glyph{ display:block; flex:none; color:var(--brass) }

.brandbar{
  display:flex; align-items:center; justify-content:space-between; gap:1rem;
  padding:1.4rem 0 1.05rem;
}
.lockup{ display:flex; align-items:center; gap:.62rem; text-decoration:none; color:var(--bone) }
.lockup .glyph{ width:1.55rem; height:1.55rem; transition:transform .5s cubic-bezier(.3,.7,.3,1) }
.lockup:hover .glyph{ transform:rotate(72deg) }
.lockup:focus-visible{ outline:2px solid var(--bone); outline-offset:5px; border-radius:2px }
.wordmark{ font-size:1.125rem; font-weight:500; line-height:1; letter-spacing:.004em }
.wordmark i{ font-style:normal; color:var(--dim) }
.brandbar .tag{
  font-family:"IBM Plex Mono", monospace;
  font-size:.625rem; letter-spacing:.14em; color:var(--faint); white-space:nowrap;
}

.nav{ border-top:1px solid var(--rule); border-bottom:1px solid var(--rule) }
.nav ul{
  display:flex; gap:1.4rem; list-style:none;
  padding:.8rem 0; margin:0;
  overflow-x:auto; scrollbar-width:none; -ms-overflow-style:none;
}
.nav ul::-webkit-scrollbar{ display:none }
.nav a{
  color:var(--dim); text-decoration:none;
  font-size:.9375rem; white-space:nowrap;
  padding-bottom:.2rem; border-bottom:1px solid transparent;
}
.nav a:hover{ color:var(--bone) }
.nav a[aria-current="page"]{ color:var(--bone); border-bottom-color:var(--brass) }

/* ═══ sayfa başlığı ═══════════════════════════ */
.page-head{ position:relative; padding:2.8rem 0 0 }

.seal{
  position:absolute; z-index:-1;
  top:-1.75rem; right:-6rem;
  width:17rem; height:17rem;
  opacity:.05; pointer-events:none;
  animation:turn 150s linear infinite;
}
@keyframes turn{ to{ transform:rotate(360deg) } }

.kicker{
  font-family:"IBM Plex Mono", monospace;
  font-size:.6875rem; letter-spacing:.14em; color:var(--brass);
}

h1{
  margin-top:1rem;
  font-size:clamp(2rem, 8vw, 2.85rem);
  font-weight:400; line-height:1.08; letter-spacing:-.02em;
  max-width:16ch;
}
h1.wide{ max-width:20ch }

.lede{ margin-top:1.2rem; max-width:31rem; color:var(--dim); font-size:1.0625rem }

.mark{
  display:inline-block;
  border:1px solid var(--rule);
  padding:.32rem .65rem;
  font-size:.8rem; letter-spacing:.055em; color:var(--dim);
}

/* ═══ metin blokları ══════════════════════════ */
.sec{ padding:3.5rem 0 0 }
.sec-h{
  font-size:1.5rem; font-weight:400; letter-spacing:-.012em;
  padding-bottom:1.4rem; border-bottom:1px solid var(--rule);
}

.prose{ margin-top:1.6rem }
.prose p{ color:var(--dim); font-size:1rem; line-height:1.7 }
.prose p + p{ margin-top:1rem }
.prose h3{ margin-top:2rem; font-size:1.0625rem; font-weight:600; color:var(--bone) }
.prose h3 + p{ margin-top:.4rem }
.prose ul{ margin-top:.7rem; padding-left:0; list-style:none }
.prose li{ position:relative; padding-left:1.15rem; color:var(--dim); font-size:1rem; line-height:1.65 }
.prose li + li{ margin-top:.45rem }
.prose li::before{
  content:""; position:absolute; left:0; top:.72em;
  width:.32rem; height:1px; background:var(--brass);
}
.prose strong{ color:var(--bone); font-weight:600 }
.prose a{ color:var(--bone) }

/* ═══ hizmet kartları ═════════════════════════ */
.svc{ padding:1.55rem 0; border-bottom:1px solid var(--rule) }
.svc h3{ font-size:1.0625rem; font-weight:600 }
.svc p{ margin-top:.28rem; color:var(--dim); font-size:.9688rem; line-height:1.6; max-width:30rem }
.svc-more{
  display:inline-block; margin-top:.6rem;
  font-family:"IBM Plex Mono", monospace;
  font-size:.6875rem; letter-spacing:.11em; color:var(--brass); text-decoration:none;
}
.svc-more:hover{ color:var(--brass-hi) }

/* detaylı hizmet bloğu */
.detail{ padding:2.4rem 0; border-bottom:1px solid var(--rule) }
.detail:last-of-type{ border-bottom:0 }
.detail h2{
  font-size:1.375rem; font-weight:500; letter-spacing:-.01em;
  display:flex; align-items:center; gap:.6rem;
}
.detail h2 .glyph{ width:.95rem; height:.95rem }
.detail > p{ margin-top:.7rem; color:var(--dim); font-size:1rem; line-height:1.7 }

.meta-grid{
  margin-top:1.5rem;
  border:1px solid var(--rule); border-radius:3px;
  background:var(--card);
  overflow:hidden;
}
.meta-row{ display:flex; gap:1rem; padding:.8rem .95rem; border-bottom:1px solid var(--rule) }
.meta-row:last-child{ border-bottom:0 }
.meta-row dt{
  flex:0 0 7.5rem;
  font-family:"IBM Plex Mono", monospace;
  font-size:.6563rem; letter-spacing:.11em; color:var(--faint);
  padding-top:.28rem;
}
.meta-row dd{ color:var(--dim); font-size:.9375rem; line-height:1.6 }

.disclaim{
  margin-top:1.3rem; padding:.95rem 1.05rem;
  border:1px solid var(--rule); border-left:2px solid rgba(176,141,82,.4);
  border-radius:3px;
  color:var(--dim); font-size:.9063rem; line-height:1.6;
}
.disclaim b{ color:var(--bone); font-weight:600 }

/* ═══ süreç adımları ══════════════════════════ */
.steps{ position:relative; margin-top:2rem; padding-left:2.9rem; counter-reset:s }
.steps::before{
  content:""; position:absolute; left:.92rem; top:.4rem; bottom:.4rem;
  width:1px; background:var(--rule);
  transform:scaleY(0); transform-origin:top;
  transition:transform 1.05s cubic-bezier(.3,.7,.3,1);
}
.steps.on::before{ transform:scaleY(1) }
.step{ position:relative }
.step + .step{ margin-top:2rem }
.step::before{
  content:counter(s); counter-increment:s;
  position:absolute; left:-2.9rem; top:-.05rem;
  width:1.85rem; height:1.85rem;
  display:grid; place-items:center;
  background:var(--ink); border:1px solid var(--rule); border-radius:50%;
  font-family:"IBM Plex Mono", monospace; font-size:.75rem; color:var(--brass);
}
.step h3{ font-size:1.0625rem; font-weight:600 }
.step p{ margin-top:.28rem; color:var(--dim); font-size:.9688rem; line-height:1.6 }

/* ═══ ilkeler ═════════════════════════════════ */
.pr{ padding:1.35rem 0; border-bottom:1px solid var(--rule); display:flex; gap:1rem }
.pr > .glyph{ width:.9rem; height:.9rem; margin-top:.4rem }
.pr h3{ font-size:1rem; font-weight:600 }
.pr p{ margin-top:.2rem; color:var(--dim); font-size:.9375rem; line-height:1.55 }

/* ═══ SSS ═════════════════════════════════════ */
.faq{ margin-top:1.6rem }
.faq details{ border-bottom:1px solid var(--rule) }
.faq summary{
  list-style:none; cursor:pointer;
  padding:1.15rem 2rem 1.15rem 0; position:relative;
  font-size:1.0313rem; font-weight:600; line-height:1.45;
}
.faq summary::-webkit-details-marker{ display:none }
.faq summary::after{
  content:"+"; position:absolute; right:.25rem; top:1.05rem;
  font-family:"IBM Plex Mono", monospace; font-size:1.05rem; color:var(--brass);
  transition:transform .2s ease;
}
.faq details[open] summary::after{ content:"\2212" }
.faq summary:hover{ color:var(--brass-hi) }
.faq summary:focus-visible{ outline:2px solid var(--bone); outline-offset:2px }
.faq .ans{ padding:0 0 1.3rem }
.faq .ans p{ color:var(--dim); font-size:.9688rem; line-height:1.7 }
.faq .ans p + p{ margin-top:.75rem }

/* ═══ dosya kartı ═════════════════════════════ */
.dossier{
  margin-top:2.5rem; background:var(--card);
  border:1px solid var(--rule); border-radius:3px;
  box-shadow:0 22px 55px -28px rgba(0,0,0,.85); overflow:hidden;
}
.dossier-bar{
  display:flex; justify-content:space-between; align-items:center; gap:1rem;
  background:var(--card-hi); border-bottom:1px solid var(--rule);
  padding:.6rem .95rem;
  font-family:"IBM Plex Mono", monospace;
  font-size:.7rem; letter-spacing:.09em; color:var(--faint);
}
.dossier-bar b{ font-weight:500; color:var(--brass) }
.dossier-bar > span{ display:inline-flex; align-items:center; gap:.5rem }
.dossier-bar .glyph{ width:.85rem; height:.85rem; opacity:.75 }
.dossier-body{
  padding:1.35rem .95rem 1.5rem;
  font-family:"IBM Plex Mono", monospace;
  font-size:.8125rem; line-height:2.15; color:#B9B5AC;
}
.rd{ position:relative; display:inline-block; white-space:nowrap }
.rd::after{
  content:""; position:absolute;
  left:-.18em; right:-.18em; top:-.12em; bottom:-.1em;
  background:var(--redact); border-radius:1px;
  transform:scaleX(0); transform-origin:left center;
  animation:redact .3s cubic-bezier(.2,.75,.3,1) forwards;
  animation-delay:var(--d, 0ms);
}
@keyframes redact{ to{ transform:scaleX(1) } }
.dossier-foot{
  border-top:1px solid var(--rule); padding:.7rem .95rem;
  font-family:"IBM Plex Mono", monospace;
  font-size:.6875rem; letter-spacing:.06em; color:var(--faint);
}

/* ═══ butonlar ════════════════════════════════ */
.btn{
  display:block; background:var(--brass); color:#12161A;
  text-decoration:none; text-align:center;
  font-family:"Newsreader", serif; font-size:1.0625rem; font-weight:600;
  padding:.95rem 1.25rem; border-radius:2px;
  border:0; cursor:pointer; width:100%;
  transition:background .18s ease, transform .18s ease;
}
.btn:hover{ background:var(--brass-hi) }
.btn:active{ transform:translateY(1px) }
.btn:focus-visible{ outline:2px solid var(--bone); outline-offset:3px }

.btn-ghost{
  display:block; text-align:center; text-decoration:none;
  border:1px solid var(--rule); color:var(--bone);
  font-size:1rem; padding:.85rem 1.25rem; border-radius:2px; width:100%;
  background:none; cursor:pointer;
  transition:background .18s ease, border-color .18s ease;
}
.btn-ghost:hover{ background:var(--card); border-color:rgba(233,228,217,.2) }
.btn-ghost:focus-visible{ outline:2px solid var(--bone); outline-offset:3px }

.cta-block{ margin-top:2.25rem }
.cta-note{ margin-top:.8rem; color:var(--dim); font-size:.875rem; line-height:1.55 }

.close{
  margin-top:4rem; padding:2.25rem 1.5rem;
  background:var(--card); border:1px solid var(--rule); border-radius:3px;
}
.close h2{ font-size:1.65rem; font-weight:400; line-height:1.2; letter-spacing:-.015em; max-width:15ch }
.close p{ margin-top:.8rem; color:var(--dim); font-size:.9688rem; max-width:28rem }
.close .btn{ margin-top:1.6rem }

/* ═══ iletişim / künye ════════════════════════ */
.contact-card{
  margin-top:1.8rem; background:var(--card);
  border:1px solid var(--rule); border-radius:3px; overflow:hidden;
}
.contact-row{ padding:1.1rem 1.15rem; border-bottom:1px solid var(--rule) }
.contact-row:last-child{ border-bottom:0 }
.contact-row dt{
  font-family:"IBM Plex Mono", monospace;
  font-size:.6563rem; letter-spacing:.12em; color:var(--faint);
}
.contact-row dd{ margin-top:.3rem; font-size:1rem; color:var(--bone) }
.contact-row dd a{ color:var(--bone) }
.contact-row dd small{ display:block; margin-top:.25rem; color:var(--dim); font-size:.875rem }

.kunye{
  margin-top:1.5rem; padding:1.15rem;
  border:1px solid var(--rule); border-radius:3px;
  font-family:"IBM Plex Mono", monospace;
  font-size:.75rem; line-height:1.9; color:var(--dim);
}
.kunye b{ color:var(--faint); font-weight:400 }

/* ═══ alt bilgi ═══════════════════════════════ */
footer{
  margin-top:3.5rem; padding:1.75rem 0 3rem;
  border-top:1px solid var(--rule);
  color:var(--faint); font-size:.8438rem; line-height:1.6;
}
body.has-sticky footer{ padding-bottom:8rem }
.foot-brand{ display:flex; align-items:center; gap:.55rem; margin-bottom:1.15rem; color:var(--dim) }
.foot-brand .glyph{ width:1.05rem; height:1.05rem; opacity:.8 }
.foot-brand span{ font-size:.9375rem; letter-spacing:.004em }
.foot-brand span i{ font-style:normal; color:var(--faint) }
.foot-nav{ list-style:none; display:flex; flex-wrap:wrap; gap:.35rem 1.1rem; margin-bottom:1.15rem }
.foot-nav a{ color:var(--dim); text-decoration:none; font-size:.875rem }
.foot-nav a:hover{ color:var(--bone) }
footer p + p{ margin-top:.7rem }
.foot-legal{ margin-top:1.2rem; padding-top:1.1rem; border-top:1px solid var(--rule) }

/* ═══ sabit alt bar ═══════════════════════════ */
.sticky{
  position:fixed; left:0; right:0; bottom:0; z-index:20;
  padding:.7rem 1rem calc(.7rem + env(safe-area-inset-bottom));
  background:rgba(11,15,19,.9);
  -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px);
  border-top:1px solid var(--rule);
  transform:translateY(105%);
  transition:transform .3s cubic-bezier(.3,.75,.3,1);
}
.sticky.on{ transform:translateY(0) }
.sticky .btn{ display:block; max-width:38rem; margin:0 auto }
body.cc-open .sticky{ transform:translateY(105%) }

/* ═══ çerez onayı ═════════════════════════════ */
.cc{
  position:fixed; left:0; right:0; bottom:0; z-index:40;
  background:var(--card); border-top:1px solid var(--rule);
  padding:1.1rem 1.5rem calc(1.1rem + env(safe-area-inset-bottom));
  box-shadow:0 -20px 45px -30px rgba(0,0,0,.95);
}
.cc-inner{ max-width:38rem; margin:0 auto }
.cc p{ color:var(--dim); font-size:.9063rem; line-height:1.6 }
.cc p a{ color:var(--bone) }
.cc-actions{ margin-top:.9rem; display:grid; gap:.6rem }

@media (min-width:34rem){
  .wrap{ padding:0 2rem }
  .brandbar{ padding:1.9rem 0 1.25rem }
  .page-head{ padding-top:3.5rem }
  .seal{ top:-3rem; right:-8rem; width:23rem; height:23rem; opacity:.055 }
  .btn, .btn-ghost{ display:inline-block; width:auto; padding-left:2.4rem; padding-right:2.4rem }
  .dossier-body{ padding:1.6rem 1.4rem 1.8rem; font-size:.875rem }
  .dossier-bar, .dossier-foot{ padding-left:1.4rem; padding-right:1.4rem }
  .close{ padding:2.75rem 2.25rem }
  .cc-actions{ display:flex; gap:.7rem }
  .cc-actions .btn, .cc-actions .btn-ghost{ width:auto; padding-left:1.8rem; padding-right:1.8rem }
  .meta-row dt{ flex-basis:8.5rem }
}

@media (prefers-reduced-motion:reduce){
  html{ scroll-behavior:auto }
  .rd::after{ animation:none; transform:scaleX(1) }
  .steps::before{ transition:none; transform:scaleY(1) }
  .sticky, .btn, .btn-ghost, .lockup .glyph{ transition:none }
  .seal{ animation:none }
}

/* ═══ reklam sayfası seçenekleri ══════════════ */
.opts{ margin-top:2rem; display:grid; gap:.85rem }
.opt{
  display:block; background:var(--card);
  border:1px solid var(--rule);
  border-left:2px solid rgba(176,141,82,.35);
  border-radius:3px;
  padding:1.15rem 1.2rem 1.05rem;
  text-decoration:none; color:var(--bone);
  box-shadow:0 18px 40px -30px rgba(0,0,0,.9);
  transition:background .18s ease, border-left-color .18s ease, transform .18s ease;
}
.opt:hover{ background:var(--card-hi); border-left-color:var(--brass) }
.opt:active{ transform:translateY(1px) }
.opt:focus-visible{ outline:2px solid var(--bone); outline-offset:3px }
.opt-h{ display:block; font-size:1.0625rem; font-weight:600; line-height:1.35 }
.opt-p{ display:block; margin-top:.35rem; color:var(--dim); font-size:.9375rem; line-height:1.55 }
.opt-go{
  display:block; margin-top:.85rem;
  font-family:"IBM Plex Mono", monospace;
  font-size:.6875rem; letter-spacing:.11em; color:var(--brass);
}

.assur{ margin-top:2.1rem; list-style:none; border-top:1px solid var(--rule); padding-top:1.35rem }
.assur li{ display:flex; gap:.7rem; align-items:flex-start; color:var(--dim); font-size:.9375rem }
.assur li + li{ margin-top:.6rem }
.assur .glyph{ width:.8rem; height:.8rem; margin-top:.42rem }

/* ═══ 404 aranan adres ════════════════════════ */
.kayit{
  margin-top:1.9rem; background:var(--card);
  border:1px solid var(--rule); border-radius:3px; overflow:hidden;
}
.kayit-bar{
  display:flex; align-items:center; gap:.5rem;
  background:var(--card-hi); border-bottom:1px solid var(--rule);
  padding:.55rem .9rem;
  font-family:"IBM Plex Mono", monospace;
  font-size:.6563rem; letter-spacing:.11em; color:var(--faint);
}
.kayit-bar .glyph{ width:.8rem; height:.8rem; opacity:.75 }
.kayit-yol{
  padding:.9rem; font-family:"IBM Plex Mono", monospace;
  font-size:.8125rem; color:#B9B5AC; word-break:break-all;
}

@media (min-width:34rem){
  .opt{ padding:1.35rem 1.45rem 1.25rem }
  .kayit-yol{ padding:1.1rem 1.15rem }
}

@media (prefers-reduced-motion:reduce){
  .opt{ transition:none }
}
