/* fca.studio — ortak stil. Beyaz zemin, tek vurgu (turuncu), Inter gövde + Doto nokta-matris vurgular. */
@font-face { font-family: "Inter"; src: url("/assets/fonts/inter-latin.woff2") format("woff2"); font-weight: 400 700; font-display: swap; }
@font-face { font-family: "Doto"; src: url("/assets/fonts/doto-latin.woff2") format("woff2"); font-weight: 100 900; font-display: swap; }

:root {
  --zemin: #f1f0ec; --kart: #fff; --murekkep: #1a1a18; --soluk: #5e5d58; --sonuk: #8f8d86;
  --cizgi: #d8d6cf; --cizgi-2: #e9e7e0; --vurgu: #e8562a; --vurgu-koyu: #c9441c; --panel: #e9e8e2;
  --radius: 24px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--zemin); color: var(--murekkep); font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif; -webkit-font-smoothing: antialiased; line-height: 1.5; }
a { color: inherit; text-decoration: none; }
.dot { font-family: Doto, ui-monospace, Menlo, monospace; font-weight: 900; letter-spacing: 0.04em; }
.mono { font-family: ui-monospace, "SF Mono", Menlo, Consolas, monospace; font-size: 11.5px; letter-spacing: 0.02em; color: var(--sonuk); }
.wrap { width: min(1152px, 100% - 40px); margin-inline: auto; }
::selection { background: var(--murekkep); color: #fff; }

/* Başlık — yüzen bar */
.ust { position: sticky; top: 0; z-index: 40; padding: 12px 12px 0; }
.ust .bar { width: min(1152px, 100%); margin-inline: auto; display: flex; align-items: center; justify-content: space-between; gap: 24px; height: 60px; padding: 0 20px; border-radius: 16px; background: rgba(255,255,255,.92); backdrop-filter: blur(10px); border: 1px solid var(--cizgi-2); box-shadow: 0 12px 30px -24px rgba(0,0,0,.35); }
.marka { display: flex; align-items: center; gap: 10px; font-weight: 600; font-size: 15px; letter-spacing: -0.01em; }
.marka small { font-weight: 400; color: var(--soluk); }
.marka .alt { display: inline-flex; align-items: center; gap: 8px; margin-left: 6px; padding-left: 12px; border-left: 1px solid var(--cizgi); color: var(--vurgu); font-weight: 600; }
.nav { display: flex; gap: 28px; }
.nav a { font-size: 14px; font-weight: 500; transition: color .15s; }
.nav a:hover, .nav a[aria-current] { color: var(--vurgu); }
.btn { display: inline-flex; align-items: center; gap: 10px; height: 46px; padding: 0 18px; border-radius: 12px; background: #111; color: #fff; font-size: 14.5px; font-weight: 600; transition: background .15s, transform .15s; }
.btn:hover { background: #000; } .btn:active { transform: scale(.97); }
.btn .kutu { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 8px; background: var(--vurgu); margin-left: -8px; }
.btn.hafif { background: #fff; color: var(--murekkep); border: 1px solid #cfcdc5; } .btn.hafif:hover { border-color: var(--murekkep); background: #fff; }
.btn.kucuk { height: 40px; padding: 0 16px; font-size: 13.5px; }
.menu-btn { display: none; width: 40px; height: 40px; border-radius: 12px; border: 1px solid var(--cizgi); background: #fff; color: var(--murekkep); }
.mobil-nav { display: none; }

/* Bölümler */
section { padding: 88px 0; }
section.dar { padding: 56px 0; }
.ustcizgi { border-top: 1px solid var(--cizgi); }
.etiket { display: inline-flex; align-items: center; border: 1px solid #cfcdc5; background: #f7f6f2; border-radius: 999px; padding: 4px 11px; font-family: ui-monospace, Menlo, monospace; font-size: 11.5px; color: #4a4945; white-space: nowrap; }
.indeks { font-family: Doto, monospace; font-weight: 900; font-size: 15px; letter-spacing: .12em; color: var(--vurgu); }
h1, h2, h3 { margin: 0; letter-spacing: -0.03em; line-height: 1.1; }
h2 { font-size: clamp(30px, 3.4vw, 42px); font-weight: 600; }
h3 { font-size: 20px; font-weight: 600; letter-spacing: -0.015em; }
.lead { font-size: 17px; line-height: 1.65; color: #3a3935; }
.govde { font-size: 15.5px; line-height: 1.65; color: var(--soluk); }
.liste { list-style: none; margin: 24px 0 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.liste li { display: flex; align-items: center; gap: 12px; font-size: 15px; }
.liste li::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--vurgu); flex: none; }

.beyaz { background: var(--kart); border-radius: var(--radius); box-shadow: 0 1px 0 #e4e2db; }
.grid2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 64px; align-items: center; }
.grid3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.grid12 { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 48px; }
.sutun4 { grid-column: span 4; } .sutun5 { grid-column: span 5; } .sutun7 { grid-column: span 7; } .sutun8 { grid-column: span 8; }

/* Kol kartları (hub) */
.kollar { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); overflow: hidden; }
.kol { display: flex; flex-direction: column; gap: 12px; padding: 36px; transition: background .15s; }
.kol + .kol { border-left: 1px solid var(--cizgi-2); }
.kol:hover { background: #fafaf8; }
.kol .dot { font-size: 46px; line-height: 1; margin-top: 22px; }
.kol .git { display: inline-flex; align-items: center; gap: 6px; margin-top: 8px; font-size: 13.5px; font-weight: 600; }
.kol:hover .git { color: var(--vurgu); }

/* Görsel paneller */
.panel { position: relative; height: 360px; overflow: hidden; border-radius: var(--radius); background: var(--panel); }
.panel.izgara { background-image: linear-gradient(#dcdad2 1px, transparent 1px), linear-gradient(90deg, #dcdad2 1px, transparent 1px); background-size: 36px 36px; }
.panel.nokta { background-image: radial-gradient(#d2d2cd 1px, transparent 1px); background-size: 22px 22px; }
.panel .kose { position: absolute; font-family: ui-monospace, Menlo, monospace; font-size: 11px; color: var(--sonuk); }
.panel .kose.vurgu { color: var(--vurgu); }
.kart-ui { position: absolute; border-radius: 16px; background: #fff; border: 1px solid #dfddd5; box-shadow: 0 24px 48px -28px rgba(26,26,24,.35); padding: 18px; }
.cubuk { height: 10px; border-radius: 5px; background: #ecebe6; position: relative; overflow: hidden; flex: 1; }
.cubuk i { position: absolute; inset: 0 auto 0 0; background: #1a1a18; border-radius: 5px; }
.iso { position: absolute; width: 64px; height: 64px; }
.iso i { position: absolute; inset: 0; }
.iso .u { background: #fff; clip-path: polygon(50% 0,100% 25%,50% 50%,0 25%); box-shadow: inset 0 0 0 1.5px #1a1a18; }
.iso .s { background: #1b1b1b; clip-path: polygon(0 25%,50% 50%,50% 100%,0 75%); }
.iso .g { background: #4a4a4a; clip-path: polygon(50% 50%,100% 25%,100% 75%,50% 100%); }
.iso.v .u { background: var(--vurgu); } .iso.v .s { background: #b8401c; } .iso.v .g { background: #d04a22; }
.kup { position: absolute; left: 50%; top: 50%; width: 200px; height: 200px; margin: -100px 0 0 -100px; transform-style: preserve-3d; transform: rotateX(-24deg) rotateY(32deg); }
.kup i { position: absolute; inset: 0; border: 1.5px solid #1a1a18; }
.kup i:nth-child(1) { transform: translateZ(100px); } .kup i:nth-child(2) { transform: rotateY(180deg) translateZ(100px); }
.kup i:nth-child(3) { transform: rotateY(90deg) translateZ(100px); } .kup i:nth-child(4) { transform: rotateY(-90deg) translateZ(100px); }
.kup i:nth-child(5) { transform: rotateX(90deg) translateZ(100px); border-color: var(--vurgu); } .kup i:nth-child(6) { transform: rotateX(-90deg) translateZ(100px); }

/* Hub hero */
.hero { padding: 72px 0 56px; }
.hero .satirlar { display: flex; flex-direction: column; gap: 4px; }
.hero .satirlar a { font-size: clamp(44px, 7.4vw, 104px); line-height: .98; color: var(--murekkep); transition: color .15s; display: inline-flex; align-items: baseline; gap: 18px; }
.hero .satirlar a:hover { color: var(--vurgu); }
.hero .satirlar a small { font-family: ui-monospace, Menlo, monospace; font-size: 12px; letter-spacing: .08em; color: var(--sonuk); font-weight: 400; }
.hero .sag { position: relative; height: 380px; }
.hero .merkez { position: absolute; left: 50%; top: 50%; width: 200px; height: 200px; transform: translate(-50%,-50%); border-radius: 40px; background: #e6e4dd; padding: 14px; }
.hero .merkez div { width: 100%; height: 100%; border-radius: 30px; background: #f5f4f0; box-shadow: inset 0 0 0 1px var(--cizgi); display: grid; place-items: center; }
.hero .yorunge { position: absolute; left: 50%; top: 50%; border: 1px solid #cfcdc5; border-radius: 50%; transform: translate(-50%,-50%); }
.hero .nokta { position: absolute; width: 8px; height: 8px; border-radius: 50%; background: var(--murekkep); }
.hero .nokta.v { background: var(--vurgu); }
.hero .etiket { position: absolute; }

/* İlkeler */
.ilkeler { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 32px 40px; }
.ilke b { display: flex; align-items: center; gap: 12px; font-size: 17px; font-weight: 600; letter-spacing: -0.01em; }
.ilke b span { font-family: Doto, monospace; font-weight: 900; font-size: 13px; color: var(--sonuk); }
.ilke p { margin: 10px 0 0; font-size: 15px; line-height: 1.65; color: var(--soluk); }

/* Adımlar */
.adimlar { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 16px; }
.adim { background: #fff; border: 1px solid var(--cizgi-2); border-radius: 18px; padding: 22px; display: flex; flex-direction: column; gap: 8px; }
.adim .indeks { font-size: 13px; }
.adim b { font-size: 16px; font-weight: 600; } .adim p { margin: 0; font-size: 14px; line-height: 1.6; color: var(--soluk); }

/* Şirket bilgileri */
.bilgi { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 22px 28px; border: 1px solid var(--cizgi); background: #f7f6f2; border-radius: var(--radius); padding: 28px; }
.bilgi dt { font-family: ui-monospace, Menlo, monospace; font-size: 11.5px; color: var(--sonuk); text-transform: uppercase; letter-spacing: .04em; }
.bilgi dd { margin: 6px 0 0; font-size: 15px; font-weight: 600; }

/* Footer */
footer { padding: 0 12px 12px; }
footer .ic { width: min(1152px, 100%); margin-inline: auto; background: #fff; border-radius: var(--radius); box-shadow: 0 1px 0 #e4e2db; padding: 40px 36px 28px; }
footer .kolonlar { display: grid; grid-template-columns: 1.6fr repeat(3, minmax(0,1fr)); gap: 40px; }
footer .kolonlar p { margin: 10px 0 0; font-size: 14px; line-height: 1.6; color: var(--soluk); max-width: 20rem; }
footer .kolonlar b { font-family: ui-monospace, Menlo, monospace; font-size: 11.5px; color: var(--sonuk); font-weight: 400; }
footer ul { list-style: none; margin: 12px 0 0; padding: 0; display: flex; flex-direction: column; gap: 8px; font-size: 14px; }
footer ul a:hover { color: var(--vurgu); }
footer .alt { display: flex; justify-content: space-between; gap: 12px; margin-top: 36px; padding-top: 20px; border-top: 1px solid var(--cizgi-2); font-family: ui-monospace, Menlo, monospace; font-size: 11.5px; color: var(--sonuk); }

/* Açılış animasyonu */
.belir { opacity: 0; transform: translateY(14px); transition: opacity .7s cubic-bezier(.16,1,.3,1), transform .7s cubic-bezier(.16,1,.3,1); }
.belir.goster { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) { .belir { opacity: 1; transform: none; transition: none; } html { scroll-behavior: auto; } }

/* Dar ekran */
@media (max-width: 1024px) {
  .grid12 { gap: 32px; } .sutun4, .sutun5, .sutun7, .sutun8 { grid-column: span 12; }
  .grid2 { grid-template-columns: 1fr; gap: 36px; }
  .hero .sag { display: none; }
  .adimlar { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 768px) {
  section { padding: 60px 0; }
  .nav, .ust .btn, .marka .alt { display: none; }
  .menu-btn { display: grid; place-items: center; }
  .mobil-nav.acik { display: flex; flex-direction: column; width: min(1152px, 100%); margin: 8px auto 0; background: #fff; border: 1px solid var(--cizgi-2); border-radius: 16px; padding: 8px 20px; }
  .mobil-nav a { padding: 14px 0; border-bottom: 1px solid var(--cizgi-2); font-size: 15px; }
  .mobil-nav a:last-child { border-bottom: 0; }
  .kollar { grid-template-columns: 1fr; } .kol + .kol { border-left: 0; border-top: 1px solid var(--cizgi-2); }
  .grid3 { grid-template-columns: 1fr; } .ilkeler { grid-template-columns: 1fr; } .adimlar { grid-template-columns: 1fr; }
  .bilgi { grid-template-columns: 1fr; }
  footer .kolonlar { grid-template-columns: 1fr 1fr; } footer .alt { flex-direction: column; }
  .panel { height: 300px; }
}

/* ── Tam ekran kapak (hero) ─────────────────────────────────────────────── */
.kapak { position: relative; width: min(1152px, 100% - 24px); margin: 12px auto 0; aspect-ratio: 21 / 9; min-height: 460px; overflow: hidden; border-radius: var(--radius); background: var(--panel); box-shadow: 0 1px 0 #e4e2db; }
.kapak picture, .kapak img, .kapak-video { position: absolute; inset: 0; width: 100%; height: 100%; }
.kapak img { object-fit: cover; object-position: var(--odak, 50% 50%); display: block; }
.kapak-video { object-fit: cover; }
/* Metin okunurluğu: sol üstten zemin rengine doğru hafif perde */
.kapak::after { content: ""; position: absolute; inset: 0; background: linear-gradient(105deg, rgba(241,240,236,.92) 0%, rgba(241,240,236,.72) 28%, rgba(241,240,236,0) 58%); pointer-events: none; }
.kapak-yazi { position: absolute; left: clamp(24px, 4.5vw, 64px); top: 50%; transform: translateY(-50%); max-width: min(46%, 560px); z-index: 1; display: flex; flex-direction: column; gap: 18px; }
.kapak-yazi .eyebrow { margin: 0; font-family: ui-monospace, Menlo, monospace; font-size: 11.5px; letter-spacing: .1em; color: var(--vurgu); }
.kapak-yazi .satirlar { display: flex; flex-direction: column; gap: 2px; }
.kapak-yazi .satirlar a { font-size: clamp(38px, 5.2vw, 76px); line-height: .98; color: var(--murekkep); display: inline-flex; align-items: baseline; gap: 16px; transition: color .15s; }
.kapak-yazi .satirlar a:hover { color: var(--vurgu); }
.kapak-yazi .satirlar a small { font-family: ui-monospace, Menlo, monospace; font-size: 12px; letter-spacing: .08em; color: var(--sonuk); font-weight: 400; }
.kapak-yazi h1.dot { font-size: clamp(40px, 5.6vw, 80px); line-height: .98; }
.kapak-yazi .baslik { margin: 0; font-size: clamp(20px, 2vw, 28px); font-weight: 600; letter-spacing: -.02em; line-height: 1.2; }
.kapak-yazi .sub { margin: 0; font-size: clamp(14px, 1.15vw, 16.5px); line-height: 1.6; color: #3a3935; max-width: 36rem; }
.kapak-yazi .btnler { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 6px; }
@media (max-width: 1024px) { .kapak-yazi { max-width: 60%; } }
@media (max-width: 700px) {
  .kapak { aspect-ratio: auto; min-height: 0; width: min(1152px, 100% - 16px); margin-top: 8px; }
  .kapak img { object-position: var(--odak-m, 50% 50%); }
  .kapak::after { background: linear-gradient(180deg, rgba(241,240,236,.94) 0%, rgba(241,240,236,.86) 55%, rgba(241,240,236,.35) 100%); }
  .kapak-yazi { position: relative; transform: none; top: auto; left: auto; max-width: none; padding: 40px 22px 300px; gap: 14px; }
  .kapak-yazi .satirlar a { font-size: 40px; } .kapak-yazi h1.dot { font-size: 42px; }
}
@media (prefers-reduced-motion: reduce) { .kapak-video { display: none; } }
/* Metin sağda (görselin ana öğesi solda olduğunda, ör. oyun kapağı) */
.kapak.sag .kapak-yazi { left: auto; right: clamp(24px, 4.5vw, 64px); }
.kapak.sag::after { background: linear-gradient(255deg, rgba(241,240,236,.92) 0%, rgba(241,240,236,.72) 28%, rgba(241,240,236,0) 58%); }
@media (max-width: 700px) { .kapak.sag .kapak-yazi { right: auto; } .kapak.sag::after { background: linear-gradient(180deg, rgba(241,240,236,.94) 0%, rgba(241,240,236,.86) 55%, rgba(241,240,236,.35) 100%); } }
/* Beyaz içerik kutusu */
.kutu { width: min(1152px, 100%); margin-inline: auto; padding: 48px; }
@media (max-width: 1024px) { .grid12 { grid-template-columns: minmax(0, 1fr); } .sutun4, .sutun5, .sutun7, .sutun8 { grid-column: auto; } }
@media (max-width: 700px) { .kutu { padding: 24px 20px; } .kapak::after { background: linear-gradient(180deg, rgba(241,240,236,.96) 0%, rgba(241,240,236,.9) 55%, rgba(241,240,236,.4) 100%); } }
.kapak::after { background: linear-gradient(105deg, rgba(241,240,236,.96) 0%, rgba(241,240,236,.8) 30%, rgba(241,240,236,0) 60%); }
