/* WebOSB · site v3 (2026-11). İnce gri noktalı baskı, açık nötr zemin, Mürekkep; başlıklar Archivo dar kesim.
   Noktalı görseller js/nokta.js ile çizilir (giriş WebGL); renkler marka.json dosyasından. */

@font-face { font-family: "Archivo"; font-style: normal; font-weight: 100 900; font-stretch: 62% 125%; font-display: swap; src: url("../fonts/Archivo-degisken-latin-ext.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Archivo"; font-style: normal; font-weight: 100 900; font-stretch: 62% 125%; font-display: swap; src: url("../fonts/Archivo-degisken-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

:root {
  --zemin: #F4F4F2;        /* açık nötr zemin */
  --zemin-2: #E9E9E6;      /* bir ton koyu yüzey */
  --murekkep: #1B1F23;     /* Mürekkep */
  --kalem: #626663;        /* Kalem Grisi */
  --cizgi: #B9BBB5;        /* Çizgi Grisi'nin metin için koyusu */
  --ozalit: #2C4FA3;       /* Ozalit Mavisi */
  --ozalit-acik: #DDE3F1;

  --baslik: "Archivo", "Arial Narrow", "Arial", sans-serif;
  --dar: "wdth" 70;
  --govde: "Archivo", "Arial", sans-serif;

  --kenar: clamp(16px, 4vw, 48px);
  --en: 1240px;
  --egri: cubic-bezier(.2, .7, .2, 1);
}

* { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body { background: var(--zemin); color: var(--murekkep); font: 400 17px/1.55 var(--govde); -webkit-font-smoothing: antialiased; overflow-x: clip; }
img, canvas, svg { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
ul, ol { list-style: none; }
button { font: inherit; color: inherit; background: none; border: 0; cursor: pointer; }
h1, h2, h3 { font-family: var(--baslik); font-weight: 700; font-variation-settings: var(--dar); letter-spacing: -0.01em; line-height: 1; text-wrap: balance; }
h2 { font-size: clamp(32px, 4.4vw, 64px); }
h3 { font-size: clamp(26px, 2.8vw, 40px); }
::selection { background: var(--ozalit); color: #fff; }
:focus-visible { outline: 2px solid var(--ozalit); outline-offset: 3px; border-radius: 6px; }

.gizli { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.atla { position: absolute; left: 12px; top: -60px; z-index: 50; background: var(--murekkep); color: var(--zemin); padding: 10px 16px; border-radius: 999px; }
.atla:focus { top: 12px; }

/* ---------- Düğmeler ---------- */
.hap { display: inline-flex; align-items: center; gap: 8px; height: 44px; padding: 0 20px; border-radius: 999px; font: 600 15px/1 var(--govde); white-space: nowrap;
  transition: transform .35s var(--egri), background-color .25s, color .25s, box-shadow .35s var(--egri); }
.hap svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: square; transition: transform .35s var(--egri); }
.hap:hover svg { transform: translate(2px, -2px); }
.hap:active { transform: scale(.97); }
.hap-koyu { background: var(--murekkep); color: var(--zemin); }
.hap-koyu:hover { background: #000; transform: translateY(-1px); }
.hap-acik { background: var(--zemin-2); color: var(--murekkep); }
.hap-acik:hover { background: #DEDEDA; transform: translateY(-1px); }
.hap-buyuk { height: 54px; padding: 0 26px; font-size: 16px; }

/* ---------- Üst çubuk ---------- */
.ust { position: fixed; inset: 0 0 auto; z-index: 20; padding: 12px var(--kenar) 0; pointer-events: none; }
.ust-ic { pointer-events: auto; max-width: 1180px; margin: 0 auto; height: 54px; padding: 0 8px 0 20px; display: flex; align-items: center; gap: 36px; border-radius: 12px;
  background: rgb(255 255 255 / .58); -webkit-backdrop-filter: blur(12px) saturate(1.2); backdrop-filter: blur(12px) saturate(1.2);
  transition: box-shadow .4s var(--egri), background-color .4s; }
.ust.kaydi .ust-ic { background: rgb(255 255 255 / .86); box-shadow: 0 10px 30px -12px rgb(27 31 35 / .25); } /* taste-skill-ignore: sabit üst çubuk, sayfanın üstünde yüzer */
.marka img { width: 124px; height: auto; }
.ust-nav { display: flex; gap: 28px; font-size: 16px; }
.ust-nav > a, .ust-link, .acilir-dugme { position: relative; color: #1d1f22; transition: color .2s; }
.ust-nav > a::after, .ust-link::after, .acilir-dugme::after { content: ""; position: absolute; left: 0; right: 0; bottom: -4px; height: 1.5px; background: currentColor; transform: scaleX(0); transform-origin: right; transition: transform .35s var(--egri); }
.ust-nav > a:hover::after, .ust-link:hover::after, .acilir-dugme:hover::after { transform: scaleX(1); transform-origin: left; }
.ust-sag { margin-left: auto; display: flex; align-items: center; gap: 24px; font-size: 16px; }
.ust-sag .hap { height: 40px; padding: 0 18px; font-weight: 500; font-size: 16px; }
.menu-dugme { display: none; width: 44px; height: 44px; border-radius: 50%; background: var(--zemin-2); position: relative; }
.menu-dugme i { position: absolute; left: 14px; right: 14px; height: 2px; background: var(--murekkep); transition: transform .35s var(--egri); }
.menu-dugme i:first-of-type { top: 18px; }
.menu-dugme i:last-of-type { top: 24px; }
.ust.acik .menu-dugme i:first-of-type { transform: translateY(3px) rotate(45deg); }
.ust.acik .menu-dugme i:last-of-type { transform: translateY(-3px) rotate(-45deg); }
.mobil-menu { display: none; }

/* ---------- Giriş ---------- */
.giris { position: relative; height: 100svh; min-height: 640px; max-height: 1180px; overflow: hidden; isolation: isolate; }
.giris-tuval { position: absolute; inset: 0; width: 100%; height: 100%; z-index: -1; }
.giris-yedek { display: none; }
html:not(.js) .giris-yedek, .giris.yedekli .giris-yedek { display: block; position: absolute; left: 0; right: 0; bottom: 12%; width: 100%; height: auto; mix-blend-mode: multiply; filter: grayscale(1); z-index: -1; }
.giris-ic { text-align: center; padding: clamp(108px, 15.5vh, 150px) var(--kenar) 0; }
.giris h1 { font-size: clamp(48px, 6vw, 88px); line-height: 1; letter-spacing: -0.005em; }
.giris h1 .satir { display: block; }
.giris-metin { max-width: 25em; margin: clamp(14px, 2vh, 20px) auto 0; font-size: 18px; line-height: 1.55; color: #1f2124; }
.giris .hap-buyuk { margin-top: clamp(18px, 2.8vh, 28px); height: 48px; padding: 0 22px; font-weight: 500; box-shadow: 0 12px 26px -10px rgb(0 0 0 / .5); } /* taste-skill-ignore: referanstaki gölgeli düğme */
.giris .hap-buyuk:hover { box-shadow: 0 16px 30px -10px rgb(0 0 0 / .55); } /* taste-skill-ignore */
.kanallar { position: absolute; left: 0; right: 0; bottom: clamp(20px, 4.6vh, 46px); text-align: center; padding: 0 var(--kenar); }
.kanallar p { font-size: 16px; color: #55585b; }
.kanallar ul { max-width: min(80vw, 1150px); margin: clamp(18px, 3.6vh, 36px) auto 0; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px 24px; }
.kanallar li { font: 600 21px/1.2 var(--govde); letter-spacing: -0.015em; color: #141618; white-space: nowrap; }

/* Açılış: başlık satır satır yükselir */
.js .giris-ic > *, .js .kanallar { opacity: 0; transform: translateY(26px); animation: yuksel 1s var(--egri) forwards; }
.js .giris h1 { opacity: 1; transform: none; animation: none; }
.js .giris h1 .satir { opacity: 0; transform: translateY(.45em); animation: yuksel 1.05s var(--egri) forwards; }
.js .giris h1 .satir:nth-child(1) { animation-delay: .15s; }
.js .giris h1 .satir:nth-child(2) { animation-delay: .27s; }
.js .giris-metin { animation-delay: .45s; }
.js .giris .hap-buyuk { animation-delay: .58s; }
.js .kanallar { animation-delay: .9s; }
@keyframes yuksel { to { opacity: 1; transform: none; } }

/* ---------- Ortak bölüm ---------- */
.onsoz, .hizmetler, .surec, .paket, .sss { max-width: calc(var(--en) + 2 * var(--kenar)); margin: 0 auto; padding-left: var(--kenar); padding-right: var(--kenar); }

/* Kaydırınca giriş: başlık, metin, görsel sırayla */
.js [data-gir] { opacity: 0; transform: translateY(28px); transition: opacity .9s var(--egri), transform .9s var(--egri); transition-delay: var(--gecikme, 0s); }
.js [data-gir].gorundu { opacity: 1; transform: none; }

/* ---------- Önsöz ---------- */
.onsoz { padding-top: clamp(96px, 13vw, 176px); padding-bottom: clamp(72px, 9vw, 128px); display: grid; grid-template-columns: repeat(12, 1fr); column-gap: 24px; }
.onsoz h2 { grid-column: 1 / span 4; align-self: start; }
.onsoz-metin { grid-column: 5 / span 8; font: 500 clamp(24px, 2.35vw, 34px)/1.24 var(--govde); letter-spacing: -0.015em; }
.onsoz-metin .k { color: #8A8C87; transition: color .4s; }
.onsoz-metin .k.dolu { color: var(--murekkep); }
.sozler { grid-column: 5 / span 8; margin-top: clamp(48px, 6vw, 84px); display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; }
.sozler dt { font: 700 clamp(26px, 2.8vw, 40px)/1 var(--baslik); font-variation-settings: var(--dar); letter-spacing: -0.01em; display: flex; align-items: center; gap: 12px; }
.sozler div:first-child dt::before { content: ""; width: .32em; height: .32em; background: var(--ozalit); flex: none; }
.sozler dd { margin-top: 12px; color: #3b4045; font-size: 17px; max-width: 24ch; }

/* ---------- Hizmetler ---------- */
.hizmetler { padding-top: clamp(32px, 4vw, 56px); padding-bottom: clamp(72px, 8vw, 120px); }
.hizmet-bas { display: grid; grid-template-columns: repeat(12, 1fr); column-gap: 24px; align-items: end; }
.hizmet-bas h2 { grid-column: 1 / span 6; }
.hizmet-bas p { grid-column: 8 / span 5; color: #3b4045; font-size: 19px; }
.hizmet-govde { margin-top: clamp(40px, 5vw, 72px); display: grid; grid-template-columns: 1fr 1.08fr; gap: clamp(32px, 5vw, 88px); }
.hizmet-sahne { order: 2; position: sticky; top: 96px; height: min(calc(100svh - 136px), 780px); border-radius: 28px; background: var(--zemin-2); overflow: hidden; }
.hizmet-tuval { width: 100%; height: 100%; image-rendering: pixelated; }
.hizmet-liste { order: 1; }
.hizmet-kucuk { display: none; }
.hizmet { min-height: min(calc(100svh - 136px), 780px); display: flex; flex-direction: column; justify-content: center; padding: 40px 0; opacity: .32; transition: opacity .6s var(--egri); }
.hizmet.etkin { opacity: 1; }
.hizmet p { margin-top: 20px; font-size: 17px; max-width: 36ch; }
.hizmet p b { font-weight: 600; }
.hizmet ul { margin-top: 26px; display: grid; grid-template-columns: 1fr 1fr; gap: 10px 24px; max-width: 30em; color: #3b4045; font-size: 15px; }
.hizmet li { display: flex; gap: 10px; align-items: baseline; }
.hizmet li::before { content: ""; width: 6px; height: 6px; background: var(--murekkep); flex: none; transform: translateY(-2px); }

/* ---------- Asistan vitrini (koyu) ---------- */
.vitrin { position: relative; margin: 0 clamp(8px, 1.2vw, 16px); border-radius: clamp(24px, 3vw, 40px); background: var(--murekkep); color: var(--zemin); overflow: hidden; isolation: isolate;
  padding: clamp(80px, 10vw, 150px) var(--kenar); }
.vitrin-tuval { position: absolute; inset: 0; width: 100%; height: 100%; z-index: -1; }
.vitrin-ic { max-width: 1180px; margin: 0 auto; display: grid; grid-template-columns: 1fr minmax(320px, 470px); gap: clamp(40px, 6vw, 96px); align-items: center; }
.vitrin h2 { max-width: 9.5em; }
.vitrin-sol > p { margin-top: 24px; color: #D4D6D1; font-size: 19px; max-width: 36ch; }
.vitrin-madde { margin-top: 28px; display: grid; gap: 12px; color: #E4E2DC; font-size: 17px; }
.vitrin-madde li { display: flex; gap: 12px; align-items: baseline; }
.vitrin-madde li::before { content: ""; width: 7px; height: 7px; background: var(--zemin); flex: none; transform: translateY(-2px); }

.sohbet { background: var(--zemin); color: var(--murekkep); border-radius: 24px; padding: 18px; display: grid; align-content: start; gap: 10px; font-size: 15px; line-height: 1.45;
  box-shadow: 0 30px 60px -30px rgb(0 0 0 / .6); } /* taste-skill-ignore: data-ui arayüz parçası, koyu zeminden ayrılır */
.sohbet-ust { display: flex; gap: 12px; align-items: center; padding: 4px 4px 12px; }
.sohbet-ust img { width: 32px; height: 32px; }
.sohbet-ust b { display: block; font-size: 15px; }
.sohbet-ust small { color: var(--kalem); font-size: 12.5px; }
.mesaj { max-width: 86%; padding: 10px 14px 12px; border-radius: 16px; }
.mesaj .kim { display: block; font-size: 11.5px; opacity: .68; margin-bottom: 3px; }
.gelen { background: var(--zemin-2); border-bottom-left-radius: 5px; }
.giden { background: var(--ozalit); color: #fff; justify-self: end; border-bottom-right-radius: 5px; }
.kayit { background: var(--ozalit-acik); border-radius: 14px; padding: 11px 14px; display: grid; gap: 2px; font-size: 13px; }
.kayit b { font-size: 13px; }
.yaziyor { display: inline-flex; gap: 4px; padding: 12px 14px; background: var(--zemin-2); border-radius: 16px; border-bottom-left-radius: 5px; width: max-content; }
.yaziyor.sag { justify-self: end; background: var(--ozalit); }
.yaziyor i { width: 6px; height: 6px; background: currentColor; opacity: .5; animation: zipla 1s infinite; }
.yaziyor.sag i { background: #fff; }
.yaziyor i:nth-child(2) { animation-delay: .15s; }
.yaziyor i:nth-child(3) { animation-delay: .3s; }
@keyframes zipla { 0%, 60%, 100% { transform: none; opacity: .45; } 30% { transform: translateY(-4px); opacity: 1; } }
.js .sohbet .mesaj, .js .sohbet .kayit { opacity: 0; transform: translateY(14px) scale(.98); transition: opacity .55s var(--egri), transform .55s var(--egri); }
.js .sohbet .goster { opacity: 1; transform: none; }
.js .sohbet .bekliyor { display: none; }

/* ---------- Süreç ---------- */
.surec { padding-top: clamp(96px, 12vw, 168px); padding-bottom: clamp(72px, 8vw, 120px); }
.surec-bas { display: grid; grid-template-columns: repeat(12, 1fr); column-gap: 24px; align-items: end; }
.surec-bas h2 { grid-column: 1 / span 6; }
.surec-bas p { grid-column: 8 / span 5; color: #3b4045; font-size: 19px; }
.adimlar { margin-top: clamp(48px, 6vw, 88px); display: grid; grid-template-columns: repeat(4, 1fr); gap: 32px; }
.adim { position: relative; padding-top: 40px; }
.adim::before { content: ""; position: absolute; left: 0; top: 0; width: 16px; height: 16px; background: var(--cizgi); transition: background-color .5s, transform .5s var(--egri); }
.adim h3 { color: #8A8C87; transition: color .6s var(--egri); }
.adim p { margin-top: 16px; color: #3b4045; font-size: 17px; max-width: 28ch; }
.adim.dolu::before { background: var(--murekkep); }
.adim.dolu h3 { color: var(--murekkep); }
.adim.etkin::before { background: var(--ozalit); transform: scale(1.25); }

/* ---------- Paket ---------- */
.paket { padding-top: clamp(48px, 6vw, 88px); padding-bottom: clamp(96px, 11vw, 160px); display: grid; grid-template-columns: repeat(12, 1fr); column-gap: 24px; align-items: center; }
.paket-sol { grid-column: 1 / span 5; }
.paket-sol p { margin-top: 22px; font-size: 19px; color: #3b4045; max-width: 34ch; }
.paket-sol .hap { margin-top: 30px; }
.aylar { grid-column: 7 / span 6; }
.aylar-tuval { width: 100%; aspect-ratio: 6 / 2.1; image-rendering: pixelated; }
.aylar-etiket { margin-top: 18px; display: flex; gap: 28px; flex-wrap: wrap; font-size: 15px; color: var(--kalem); }
.aylar-etiket span { display: flex; align-items: center; gap: 10px; }
.aylar-etiket span::before { content: ""; width: 12px; height: 12px; background: var(--murekkep); }
.aylar-etiket span:first-child::before { background: var(--ozalit); }

/* ---------- SSS ---------- */
.sss { padding-top: clamp(32px, 4vw, 56px); padding-bottom: clamp(96px, 11vw, 160px); display: grid; grid-template-columns: repeat(12, 1fr); column-gap: 24px; align-items: start; }
.sss-sol { grid-column: 1 / span 4; position: sticky; top: 112px; }
.sss-sol p { margin-top: 18px; color: #3b4045; max-width: 26ch; }
.sss-sol .hap { margin-top: 24px; }
.sorular { grid-column: 6 / span 7; display: grid; gap: 10px; }
.sorular details { background: var(--zemin-2); border-radius: 18px; transition: background-color .3s; }
.sorular details:hover { background: #E2E2DE; }
.sorular summary { list-style: none; cursor: pointer; position: relative; padding: 22px 64px 22px 24px; font: 600 17px/1.4 var(--govde); }
.sorular summary::-webkit-details-marker { display: none; }
.sorular summary::before, .sorular summary::after { content: ""; position: absolute; right: 26px; top: 50%; width: 14px; height: 2px; background: var(--murekkep); transition: transform .4s var(--egri); }
.sorular summary::after { transform: rotate(90deg); }
.sorular details[open] summary::after { transform: rotate(0deg); }
.sorular details p { padding: 0 24px 24px; color: #3b4045; max-width: 62ch; }
.sorular details[open] p { animation: ac .5s var(--egri); }
@keyframes ac { from { opacity: 0; transform: translateY(-6px); } }

/* ---------- Son çağrı ---------- */
.son { position: relative; min-height: min(92svh, 900px); display: flex; align-items: center; padding: clamp(96px, 10vw, 140px) var(--kenar); overflow: hidden; isolation: isolate; }
.son-tuval { position: absolute; inset: 0; width: 100%; height: 100%; z-index: -1; }
.son-ic { width: 100%; max-width: var(--en); margin: 0 auto; }
.son h2 { font-size: clamp(48px, 6vw, 88px); max-width: 7.5em; }
.son-ic > p { margin-top: 24px; font-size: 19px; max-width: 30ch; color: #30353a; }
.son-dugmeler { margin-top: 34px; display: flex; flex-wrap: wrap; gap: 12px; }
.son-ic small { display: block; margin-top: 22px; color: var(--kalem); font-size: 14px; }

/* ---------- Alt bilgi ---------- */
.alt { max-width: calc(var(--en) + 2 * var(--kenar)); margin: 0 auto; padding: 56px var(--kenar) 32px; }
.alt-ust { display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: 32px; align-items: start; padding: 40px; border-radius: 28px; background: var(--zemin-2); }
.alt-marka img { width: 152px; height: auto; }
.alt-marka p { margin-top: 14px; color: #3b4045; font-size: 15px; }
.alt nav { display: grid; gap: 9px; align-content: start; font-size: 15px; }
.alt-sutun b { font-weight: 600; margin-bottom: 6px; }
.alt-marka .alt-eposta { display: inline-block; margin-top: 24px; }
.alt nav a:hover, .alt-meta a:hover { color: var(--ozalit); }
.alt-eposta { font: 700 clamp(26px, 2.8vw, 40px)/1.1 var(--baslik); font-variation-settings: var(--dar); letter-spacing: -0.01em; transition: color .25s; }
.alt-eposta:hover { color: var(--ozalit); }
.alt-meta { margin-top: 20px; padding: 0 8px; display: flex; flex-wrap: wrap; gap: 12px 32px; justify-content: space-between; align-items: start; color: var(--kalem); font-size: 14px; }
.kaynaklar { max-width: 640px; }
.kaynaklar summary { cursor: pointer; }
.kaynaklar ul { margin-top: 10px; display: grid; gap: 4px; }
.kaynaklar a { text-decoration: underline; text-underline-offset: 2px; }
.kaynaklar p { margin-top: 8px; }

/* ---------- Bağlantı ---------- */
.bag { display: inline-flex; align-items: center; gap: 8px; margin-top: 18px; font-weight: 600; font-size: 16px; text-decoration: underline; text-decoration-thickness: 1.5px; text-underline-offset: 6px; transition: color .25s; }
.bag svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: square; transition: transform .35s var(--egri); }
.bag:hover { color: var(--ozalit); }
.bag:hover svg { transform: translate(2px, -2px); }
.bag-acik { color: var(--zemin); }
.bag-acik:hover { color: #fff; }
.hizmet-bas > div, .surec-bas > div { grid-column: 8 / span 5; }
.ust-nav > a[aria-current], .ust-link[aria-current], .acilir-dugme[data-etkin] { font-weight: 600; }
.ust-nav > a[aria-current]::after, .acilir-dugme[data-etkin]::after { transform: scaleX(1); }

/* ---------- Alt sayfa girişi ---------- */
.sayfa-basi { position: relative; height: 100svh; min-height: 640px; max-height: 1180px; overflow: hidden; isolation: isolate; }
.sayfa-tuval { position: absolute; inset: 0; width: 100%; height: 100%; z-index: -1; }
.sayfa-basi-ic { text-align: center; padding: clamp(108px, 15.5vh, 150px) var(--kenar) 0; }
.sayfa-basi h1 { font-size: clamp(48px, 6vw, 88px); line-height: 1; letter-spacing: -0.005em; }
.sayfa-basi h1 .satir { display: block; }
.dugmeler { margin-top: clamp(18px, 2.8vh, 28px); display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; }
.sayfa-basi .hap-buyuk { height: 48px; padding: 0 22px; font-weight: 500; }
.sayfa-basi .hap-koyu.hap-buyuk { box-shadow: 0 12px 26px -10px rgb(0 0 0 / .5); } /* taste-skill-ignore: referanstaki gölgeli düğme */
.sayfa-basi-paket .aylar-giris { position: absolute; left: 0; right: 0; bottom: clamp(24px, 5vh, 56px); width: min(640px, 86vw, 120vh); margin: 0 auto; }
.aylar-giris .aylar-etiket { justify-content: center; }
.js .sayfa-basi-ic > *, .js .aylar-giris { opacity: 0; transform: translateY(26px); animation: yuksel 1s var(--egri) forwards; }
.js .sayfa-basi h1 { opacity: 1; transform: none; animation: none; }
.js .sayfa-basi h1 .satir { opacity: 0; transform: translateY(.45em); animation: yuksel 1.05s var(--egri) forwards; }
.js .sayfa-basi h1 .satir:nth-child(1) { animation-delay: .15s; }
.js .sayfa-basi h1 .satir:nth-child(2) { animation-delay: .27s; }
.js .sayfa-basi .giris-metin { animation-delay: .45s; }
.js .sayfa-basi .dugmeler { animation-delay: .58s; }
.js .aylar-giris { animation-delay: .8s; }

/* ---------- Genel bölüm ---------- */
.bolum { max-width: calc(var(--en) + 2 * var(--kenar)); margin: 0 auto; padding: clamp(88px, 10vw, 150px) var(--kenar) 0; }
.bolum-bas { display: grid; grid-template-columns: repeat(12, 1fr); column-gap: 24px; align-items: end; margin-bottom: clamp(40px, 5vw, 72px); }
.bolum-bas h2 { grid-column: 1 / span 6; }
.bolum-bas > p, .bolum-bas > div { grid-column: 8 / span 5; }
.bolum-bas p { color: #3b4045; font-size: 19px; }
.bolum-koyu { max-width: none; margin: clamp(88px, 10vw, 150px) clamp(8px, 1.2vw, 16px) 0; padding: clamp(64px, 8vw, 112px) max(var(--kenar), calc((100% - var(--en)) / 2)); background: var(--zemin-2); border-radius: clamp(24px, 3vw, 40px); }
.bolum-koyu .bolum-bas:last-child { margin-bottom: 0; }
.bolum-koyu .bag-acik { color: var(--murekkep); }
.bolum-koyu .bag-acik:hover { color: var(--ozalit); }
.bolum + .sss, .bolum-koyu + .sss { padding-top: clamp(88px, 10vw, 150px); }

/* Hizmet satırları: görsel bir solda bir sağda */
.satirlar { display: grid; gap: clamp(56px, 8vw, 120px); }
.satir { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(32px, 5vw, 88px); align-items: center; }
.satir:nth-child(even) .nokta-gorsel { order: 2; }
.nokta-gorsel { width: 100%; aspect-ratio: 1; max-height: 560px; border-radius: 28px; background: var(--zemin-2); image-rendering: pixelated; }
.satir-metin h3 { font-size: clamp(32px, 3.6vw, 52px); }
.satir-metin p { margin-top: 18px; font-size: 18px; max-width: 38ch; }
.satir-metin ul { margin-top: 26px; display: grid; grid-template-columns: 1fr 1fr; gap: 10px 24px; font-size: 16px; color: #2e3237; }
.satir-metin li, .sutunlar li, .kosullar li { display: flex; gap: 10px; align-items: baseline; }
.satir-metin li::before, .sutunlar li::before, .kosullar li::before { content: ""; width: 6px; height: 6px; background: var(--murekkep); flex: none; transform: translateY(-2px); }

/* Sütunlar: ek hizmetler ve yapay zekâ */
.sutunlar { display: grid; grid-template-columns: repeat(3, 1fr); gap: 88px 40px; }
.sutunlar h3 { font-size: clamp(26px, 2.4vw, 34px); }
.sutunlar ul { margin-top: 18px; display: grid; gap: 9px; font-size: 16px; color: #2e3237; }

/* İlkeler: kalın cümle ve açıklaması */
.ilkeler { display: grid; grid-template-columns: 1fr 1fr; gap: 48px 64px; }
.ilkeler li { font-size: 18px; color: #3b4045; max-width: 34em; }
.ilkeler li b { display: block; margin-bottom: 10px; font: 700 clamp(26px, 2.6vw, 38px)/1.05 var(--baslik); font-variation-settings: var(--dar); color: var(--murekkep); }

/* Çalışma şekli: fiil solda, ayrıntı sağda */
.adim-satirlar { display: grid; gap: clamp(48px, 6vw, 88px); }
.adim-satir { position: relative; padding-top: 40px; display: grid; grid-template-columns: repeat(12, 1fr); column-gap: 24px; }
.adim-satir::before { content: ""; position: absolute; left: 0; top: 0; width: 16px; height: 16px; background: var(--cizgi); transition: background-color .5s, transform .5s var(--egri); }
.adim-satir h3 { grid-column: 1 / span 5; font-size: clamp(48px, 5.6vw, 84px); color: #8A8C87; transition: color .6s var(--egri); }
.adim-satir > div { grid-column: 7 / span 6; }
.adim-satir p { font-size: 19px; }
.adim-satir dl { margin-top: 26px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.adim-satir dt { font-size: 14px; font-weight: 600; color: var(--kalem); }
.adim-satir dd { margin-top: 6px; font-size: 16px; color: #2e3237; }
.adim-satir.dolu::before { background: var(--murekkep); }
.adim-satir.dolu h3 { color: var(--murekkep); }
.adim-satir.etkin::before { background: var(--ozalit); transform: scale(1.25); }
.sozler-4 { grid-template-columns: repeat(4, 1fr); margin-top: 0; }

/* Paket kalemleri: ilki koyu */
.kalemler { display: grid; grid-template-columns: repeat(4, 1fr); gap: 28px 16px; }
.kalemler > div { background: var(--zemin-2); border-radius: 24px; padding: 28px; display: flex; flex-direction: column; gap: 12px; min-height: 280px; }
.kalemler > div:first-child { background: var(--murekkep); color: var(--zemin); }
.kalemler dt { font: 700 clamp(28px, 2.6vw, 38px)/1 var(--baslik); font-variation-settings: var(--dar); }
.kalemler dd { color: inherit; opacity: .82; font-size: 16px; }
.kalemler span { margin-top: auto; font-size: 14px; opacity: .7; }
.kosullar { display: grid; grid-template-columns: 1fr 1fr; gap: 16px 48px; font-size: 17px; color: #2e3237; }

/* İletişim ve teklif formu */
.iletisim-bolum { display: grid; grid-template-columns: repeat(12, 1fr); column-gap: 24px; align-items: start; padding-bottom: clamp(96px, 11vw, 160px); }
.iletisim-sol { grid-column: 1 / span 4; position: sticky; top: 112px; }
.iletisim-sol > p { margin-top: 18px; color: #3b4045; font-size: 18px; }
.iletisim-yollar { margin-top: 32px; display: grid; gap: 20px; }
.iletisim-yollar dt { font-size: 14px; color: var(--kalem); }
.iletisim-yollar dd { margin-top: 4px; font: 600 18px/1.3 var(--govde); }
.iletisim-yollar a { text-decoration: underline; text-decoration-thickness: 1.5px; text-underline-offset: 5px; transition: color .25s; }
.iletisim-yollar a:hover { color: var(--ozalit); }
.teklif-formu { grid-column: 6 / span 7; display: grid; gap: 20px; padding: clamp(24px, 3vw, 40px); background: var(--zemin-2); border-radius: 28px; }
.alan-cift { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.teklif-formu label { display: grid; gap: 8px; font-size: 15px; font-weight: 600; }
.teklif-formu input:not([type="checkbox"]), .teklif-formu select, .teklif-formu textarea { width: 100%; font: 400 16px/1.4 var(--govde); color: var(--murekkep); background: var(--zemin); border: 0; border-radius: 12px; padding: 13px 14px; transition: box-shadow .2s; }
.teklif-formu textarea { resize: vertical; min-height: 130px; }
.teklif-formu input:focus, .teklif-formu select:focus, .teklif-formu textarea:focus { outline: 2px solid var(--ozalit); outline-offset: 1px; }
.secenekler { border: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.secenekler legend { font-size: 15px; font-weight: 600; margin-bottom: 10px; }
.secenekler label { display: block; position: relative; }
.secenekler input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.secenekler span { display: inline-flex; align-items: center; height: 40px; padding: 0 16px; border-radius: 999px; background: var(--zemin); font-weight: 500; cursor: pointer; transition: background-color .2s, color .2s; }
.secenekler span:hover { background: #fff; }
.secenekler input:checked + span { background: var(--murekkep); color: var(--zemin); }
.secenekler input:focus-visible + span { outline: 2px solid var(--ozalit); outline-offset: 2px; }
.teklif-formu button { justify-self: start; margin-top: 4px; }
.form-not { font-size: 14px; color: var(--kalem); }

/* Hakkımızda: logo ve kısa çağrı */
.logo-buyuk { display: block; width: min(100%, 760px); height: auto; margin: 0 auto; }
.kisa-cagri { max-width: calc(var(--en) + 2 * var(--kenar)); margin: 0 auto; padding: clamp(110px, 12vw, 180px) var(--kenar); text-align: center; }
.kisa-cagri h2 { font-size: clamp(48px, 6vw, 88px); }

/* ---------- Açılır hizmet menüsü ---------- */
.acilir { position: relative; }
.acilir-dugme { display: inline-flex; align-items: center; gap: 4px; padding: 0; }
.acilir-dugme svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 1.8; transition: transform .3s var(--egri); }
.acilir.acik .acilir-dugme svg { transform: rotate(180deg); }
.acilir-panel { position: absolute; top: calc(100% + 22px); left: -26px; width: 680px; padding: 12px; grid-template-columns: 1fr 1fr; gap: 4px; border-radius: 16px;
  background: rgb(255 255 255 / .97); box-shadow: 0 28px 56px -24px rgb(27 31 35 / .35); /* taste-skill-ignore: açılır menü */
  display: none; }
.acilir.acik .acilir-panel { display: grid; animation: menu-ac .3s var(--egri); }
@keyframes menu-ac { from { opacity: 0; transform: translateY(-6px); } }
.acilir-panel::before { content: ""; position: absolute; left: 0; right: 0; top: -24px; height: 24px; }
.acilir-oge { display: grid; grid-template-columns: 52px 1fr; gap: 14px; align-items: center; padding: 10px; border-radius: 12px; transition: background-color .2s; }
.acilir-oge:hover, .acilir-oge[aria-current] { background: var(--zemin-2); }
.acilir-oge img { width: 52px; height: 52px; border-radius: 10px; object-fit: cover; background: #fff; }
.acilir-oge b { display: block; font-size: 15px; font-weight: 600; }
.acilir-oge small { display: block; margin-top: 2px; font-size: 14px; color: var(--kalem); }
.acilir-tumu { grid-column: 1 / -1; display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 4px; padding: 12px; border-radius: 12px; background: var(--zemin-2); font-weight: 600; font-size: 15px; transition: background-color .2s; }
.acilir-tumu svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: square; }
.acilir-tumu:hover { background: #E2E2DE; }

/* Hizmet detay sayfası */
.ilkeler-3 { grid-template-columns: repeat(3, 1fr); gap: 56px 48px; }
.ilkeler-3 li b { font-size: clamp(26px, 2.2vw, 32px); }
.ilgili-liste { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.ilgili-oge { display: grid; grid-template-columns: 72px 1fr auto; gap: 16px; align-items: center; padding: 16px; border-radius: 20px; background: var(--zemin-2); transition: background-color .25s, transform .35s var(--egri); }
.ilgili-oge:hover { background: #E2E2DE; transform: translateY(-2px); }
.ilgili-oge img { width: 72px; height: 72px; border-radius: 12px; object-fit: cover; background: #fff; }
.ilgili-oge b { display: block; font: 700 clamp(22px, 1.8vw, 26px)/1.05 var(--baslik); font-variation-settings: var(--dar); }
.ilgili-oge small { display: block; margin-top: 4px; font-size: 14px; color: var(--kalem); }
.ilgili-oge svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: square; transition: transform .35s var(--egri); }
.ilgili-oge:hover svg { transform: translate(2px, -2px); }
.ilgili { padding-bottom: clamp(24px, 3vw, 40px); }
.surec .adimlar + * { margin-top: 0; }

/* ---------- Tablet ---------- */
@media (max-width: 1080px) {
  .ust-ic { gap: 24px; }
  .ust-nav { gap: 20px; }
  .ust-link { display: none; }
  .vitrin-ic { grid-template-columns: 1fr; }
  .sohbet { max-width: 520px; }
  .adimlar { grid-template-columns: 1fr 1fr; row-gap: 48px; }
  .sutunlar { grid-template-columns: 1fr 1fr; }
  .kalemler { grid-template-columns: 1fr 1fr; }
  .sozler-4 { grid-template-columns: 1fr 1fr; }
  .ilkeler-3 { grid-template-columns: 1fr 1fr; }
  .ilgili-liste { grid-template-columns: 1fr; }
  .alt-ust { grid-template-columns: 1fr 1fr; }
  .alt-marka { grid-column: 1 / -1; }
}

/* ---------- Telefon ---------- */
@media (max-width: 940px) {
  .ust { padding-top: 10px; }
  .ust-ic { height: 56px; padding-left: 18px; }
  .ust-nav { display: none; }
  .ust-sag { gap: 8px; }
  .ust-sag .hap { height: 40px; padding: 0 16px; }
  .menu-dugme { display: block; }
  .mobil-menu { display: grid; pointer-events: auto; position: absolute; left: var(--kenar); right: var(--kenar); top: 74px; padding: 10px; border-radius: 24px; background: var(--zemin); box-shadow: 0 20px 40px -18px rgb(27 31 35 / .35); /* taste-skill-ignore: açılır menü */
    visibility: hidden; opacity: 0; transform: translateY(-8px); transition: opacity .3s, transform .35s var(--egri), visibility 0s .35s; }
  .mobil-menu a { padding: 14px 16px; border-radius: 14px; font: 700 24px/1.1 var(--baslik); font-variation-settings: var(--dar); }
  .mobil-menu a:last-child { font: 600 16px/1.3 var(--govde); color: var(--kalem); }
  .mobil-menu a:active { background: var(--zemin-2); }
  .ust.acik .mobil-menu { visibility: visible; opacity: 1; transform: none; transition: opacity .3s, transform .35s var(--egri); }

  .giris { min-height: 600px; }
  .giris-ic { padding-top: 112px; }
  .kanallar ul { display: grid; grid-template-columns: repeat(4, auto); justify-content: center; gap: 8px 28px; }
  .kanallar li { font-size: 16px; }
  .adim p, .sss-sol p, .sozler dd, .hizmet p, .vitrin-sol > p, .paket-sol p, .son-ic > p, .satir-metin p, .ilkeler li { max-width: none; }

  .onsoz, .hizmet-bas, .surec-bas, .paket, .sss { grid-template-columns: 1fr; }
  .onsoz > *, .hizmet-bas > *, .surec-bas > *, .paket > *, .sss > * { grid-column: 1 / -1 !important; }
  .onsoz-metin { margin-top: 24px; }
  .sozler { gap: 24px; margin-top: 44px; }
  .hizmet-bas p, .surec-bas p { margin-top: 16px; }

  .hizmet-govde { grid-template-columns: 1fr; gap: 0; }
  .hizmet-sahne { display: none; }
  .hizmet-kucuk { display: block; width: 100%; aspect-ratio: 16 / 10; margin-bottom: 28px; border-radius: 22px; background: var(--zemin-2); image-rendering: pixelated; }
  .hizmet { min-height: 0; opacity: 1; padding: 0 0 64px; }

  .vitrin { padding-top: 72px; padding-bottom: 72px; }
  .mesaj { max-width: 92%; }

  .aylar { margin-top: 48px; }
  .aylar-tuval { aspect-ratio: 4 / 3.3; }
  .sss-sol { position: static; margin-bottom: 32px; }

  .son { min-height: 100svh; align-items: flex-start; padding-top: 96px; }

  .alt-ust { padding: 32px; }

  .sayfa-basi { height: 100svh; min-height: 600px; }
  .sayfa-basi-ic { padding-top: 112px; }
  .bolum-bas { grid-template-columns: 1fr; }
  .bolum-bas > * { grid-column: 1 / -1 !important; }
  .bolum-bas > p, .bolum-bas > div { margin-top: 16px; }
  .satir { gap: 32px; }
  .satir-metin ul { grid-template-columns: 1fr; }
  .sutunlar, .ilkeler, .kosullar, .kalemler, .sozler-4 { grid-template-columns: 1fr 1fr; }
  .kalemler > div { min-height: 0; }
  .adim-satir { grid-template-columns: 1fr; }
  .adim-satir h3, .adim-satir > div { grid-column: 1 / -1; }
  .adim-satir > div { margin-top: 18px; }
  .adim-satir dl { gap: 16px; }
  .iletisim-bolum { grid-template-columns: 1fr; }
  .iletisim-sol, .teklif-formu { grid-column: 1 / -1; }
  .iletisim-sol { position: static; margin-bottom: 32px; }
  .ilkeler-3 { grid-template-columns: 1fr 1fr; }
  .mobil-menu { max-height: calc(100svh - 90px); overflow-y: auto; }
  .mobil-alt summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; padding: 14px 16px; border-radius: 14px; font: 700 24px/1.1 var(--baslik); font-variation-settings: var(--dar); }
  .mobil-alt summary::-webkit-details-marker { display: none; }
  .mobil-alt summary::after { content: "+"; font-weight: 400; }
  .mobil-alt[open] summary::after { content: "\2013"; }
  .mobil-alt > div { display: grid; padding: 0 0 8px 12px; }
  .mobil-menu .mobil-alt > div a { padding: 10px 16px; font: 600 17px/1.3 var(--govde); font-variation-settings: normal; color: var(--murekkep); }
  .mobil-menu .mobil-alt > div a[aria-current] { background: var(--zemin-2); }
}

/* ---------- Telefon (dar) ---------- */
@media (max-width: 600px) {
  .sozler, .hizmet ul, .adimlar, .satir, .satir-metin ul, .sutunlar, .ilkeler, .ilkeler-3, .kosullar, .kalemler, .sozler-4, .alan-cift, .adim-satir dl { grid-template-columns: 1fr; }
  .sozler { gap: 28px; }
  .adimlar { row-gap: 40px; }
  .adim-satir dl { gap: 14px; }
  .satir:nth-child(even) .nokta-gorsel { order: 0; }
  .hizmet-kucuk { aspect-ratio: 1; }
  .dugmeler .hap, .son-dugmeler .hap { flex: 1 1 auto; justify-content: center; }
  .son-dugmeler .hap { width: 100%; }
  .teklif-formu button { justify-self: stretch; justify-content: center; }
  .alt-ust { grid-template-columns: 1fr; padding: 28px; }
  .kanallar ul { display: grid; grid-template-columns: repeat(4, auto); justify-content: center; gap: 8px 16px; }
  .kanallar li { font-size: 15px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-delay: 0s !important; transition-duration: .01ms !important; }
  .js [data-gir], .js .giris-ic > *, .js .kanallar, .js .giris h1 .satir, .js .sohbet .mesaj, .js .sohbet .kayit,
  .js .sayfa-basi-ic > *, .js .sayfa-basi h1 .satir, .js .aylar-giris { opacity: 1; transform: none; }
}
