/* Kare: teknoloji / bilisim hizmetleri temasi. Derin petrol (--ct-ink), kirmizi vurgu (--ct-accent), ince beyaz /
   gri cizgili izgara dili; Inter Tight (baslik) + Inter. Hucreli petrol ust bar, tam ekran acilis + sag yarida 2x2
   cozum izgarasi, cizgili cozum ve hizmet izgaralari, cizgi cerceveli hakkimizda, petrol rakam bandi, hucreli kapanis
   ve cizgi sutunlu alt bilgi. */

:root {
    --ct-line: color-mix(in srgb, var(--ct-ink) 13%, transparent);
    --ct-muted: color-mix(in srgb, var(--ct-ink) 60%, #fff);
    --ct-wrap: 1320px;
    --ct-head: 'Inter Tight', 'Inter', system-ui, sans-serif;
    --ct-shadow: 0 30px 60px -40px color-mix(in srgb, var(--ct-ink) 60%, transparent);
    --ka-body: 'Inter', system-ui, sans-serif;
    --ka-deep: color-mix(in srgb, var(--ct-ink) 82%, #000);
    --ka-wline: rgba(255, 255, 255, .22);
    --ka-dline: rgba(255, 255, 255, .12);
    --ka-ease: cubic-bezier(.2, .7, .1, 1);
    --ka-bar: 72px;
}

body.ct-body { background: var(--ct-bg); color: var(--ct-ink); font-family: var(--ka-body); }
.ct-section { padding: 120px 0; }
::selection { background: var(--ct-accent); color: #fff; }
:focus-visible { outline: 2px solid var(--ct-accent); outline-offset: 3px; }

/* ---------- Ortak ---------- */
.ka-eyebrow, .ka-mono { display: inline-flex; align-items: center; gap: 12px; font-family: var(--ct-head); font-size: 13px; font-weight: 600; letter-spacing: .2em; text-transform: uppercase; color: var(--ct-accent); }
.ka-eyebrow::before { content: ''; width: 26px; height: 2px; background: currentColor; }
.ka-mono { color: var(--ct-muted); letter-spacing: .1em; font-size: 12px; }
.ka-mono em, .ka-eyebrow em { font-style: normal; }
.ka-title { margin: 16px 0 0; font-family: var(--ct-head); font-size: clamp(32px, 3.8vw, 52px); font-weight: 600; line-height: 1.08; letter-spacing: -.02em; color: var(--ct-ink); }
.ka-title.is-md { font-size: clamp(28px, 3vw, 40px); }
.ka-title.is-sm { font-size: clamp(24px, 2.4vw, 32px); }
.ka-lead { margin: 0; max-width: 520px; font-size: 17px; line-height: 1.7; color: var(--ct-muted); }
.ka-head { margin-bottom: 56px; }
.ka-head.is-row, .ka-head.is-split { display: flex; align-items: flex-end; justify-content: space-between; gap: 48px; }
.ka-head-side { display: grid; justify-items: start; gap: 22px; max-width: 460px; }
.ka-head.is-center { display: grid; justify-items: center; text-align: center; }
.ka-head.is-center .ka-lead { margin: 18px auto 0; }
.ka-center { display: flex; justify-content: center; margin-top: 50px; }
.ka-kicker { font-family: var(--ct-head); font-size: 12px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: var(--ct-accent); }
.ka-pill { justify-self: start; padding: 5px 12px; background: var(--ct-accent); color: #fff; font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }

.ka-btn { display: inline-flex; align-items: center; justify-content: center; gap: 12px; height: 50px; padding: 0 26px; border: 1px solid transparent; border-radius: var(--ct-radius, 2px); font-family: var(--ct-head); font-size: 15px; font-weight: 600; letter-spacing: .03em; white-space: nowrap; cursor: pointer; transition: background .3s ease, color .3s ease, border-color .3s ease; }
.ka-btn i { transition: transform .35s var(--ka-ease); }
.ka-btn:hover i { transform: translateX(5px); }
.ka-btn.is-accent { background: var(--ct-accent); color: #fff; }
.ka-btn.is-accent:hover { background: var(--ct-ink); }
.ka-btn.is-ink { background: var(--ct-ink); color: #fff; }
.ka-btn.is-ink:hover { background: var(--ct-accent); }
.ka-btn.is-line { border-color: var(--ct-ink); color: var(--ct-ink); }
.ka-btn.is-line:hover { background: var(--ct-ink); color: #fff; }
.ka-btn.is-white { background: #fff; color: var(--ct-ink); }
.ka-link { display: inline-flex; align-items: center; gap: 10px; font-family: var(--ct-head); font-weight: 600; color: var(--ct-accent); }
.ka-link i { transition: transform .35s var(--ka-ease); }
.ka-link:hover i { transform: translateX(5px); }
.ka-link.is-white { color: #fff; }
.ka-link.is-white i { color: var(--ct-accent); }

.ka-js [data-ka-reveal] { opacity: 0; transform: translateY(28px); transition: opacity .9s var(--ka-ease), transform .9s var(--ka-ease); transition-delay: var(--ka-d, 0ms); }
.ka-js [data-ka-reveal].is-in { opacity: 1; transform: none; }

/* ---------- Ust bar (hucreli) ---------- */
.ka-header { position: sticky; top: 0; z-index: 60; background: var(--ct-ink); color: #fff; transition: box-shadow .3s ease; }
.ka-header.is-scrolled { box-shadow: 0 16px 40px -24px rgba(0, 0, 0, .55); }
.ka-bar { display: flex; align-items: stretch; height: var(--ka-bar); }
.ka-cell { display: grid; place-items: center; flex: none; padding: 0 clamp(18px, 2.4vw, 44px); border: 0; border-inline: 1px solid transparent; background: none; color: #fff; font: inherit; cursor: pointer; transition: background .25s ease, color .25s ease; }
.ka-cell:hover { background: rgba(255, 255, 255, .06); }
.ka-burger { width: clamp(62px, 6.6vw, 120px); padding: 0; display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 6px; border-inline-end-color: var(--ka-wline); }
.ka-burger span { display: block; width: 26px; height: 3px; background: #fff; transition: width .3s var(--ka-ease), background .3s ease; }
.ka-burger:hover span:nth-child(2) { width: 18px; background: var(--ct-accent); }
.ka-logo { display: inline-flex; align-items: center; gap: 10px; flex: none; padding: 0 clamp(16px, 2.2vw, 46px); color: #fff; }
.ka-logo img { height: 42px; width: auto; max-width: 190px; object-fit: contain; }
.ka-logo b { font-family: var(--ct-head); font-size: 22px; font-weight: 700; letter-spacing: -.02em; }
.ka-mark { height: 32px; }
.ka-nav { display: flex; flex: 1 1 auto; align-items: stretch; justify-content: center; gap: 0; min-width: 0; padding-inline: clamp(6px, 1vw, 28px); }
.ka-nav > a, .ka-nav > button { position: relative; display: inline-flex; align-items: center; padding: 0 clamp(8px, 1vw, 20px); border: 0; background: none; color: rgba(255, 255, 255, .88); font: inherit; font-family: var(--ct-head); font-size: 15px; font-weight: 500; letter-spacing: .06em; white-space: nowrap; cursor: pointer; transition: color .2s ease; }
.ka-nav > a::after, .ka-nav > button::after { content: ''; position: absolute; left: clamp(10px, 1.3vw, 20px); right: clamp(10px, 1.3vw, 20px); bottom: 0; height: 3px; background: var(--ct-accent); transform: scaleX(0); transform-origin: left; transition: transform .35s var(--ka-ease); }
.ka-nav > :is(a, button):is(:hover, .is-current, .is-open) { color: #fff; }
.ka-nav > :is(a, button):is(:hover, .is-current, .is-open)::after { transform: scaleX(1); }
.ka-lang { border-inline-start-color: var(--ka-wline); padding: 0 clamp(12px, 1.4vw, 24px); }
.ka-langmenu .ct-langmenu-btn { height: var(--ka-bar); padding: 0; border: 0; background: none; color: #fff; font-weight: 600; letter-spacing: .06em; }
.ka-lang .ct-langinline a { color: rgba(255, 255, 255, .7); }
.ka-lang .ct-langinline a.is-active { color: #fff; }
.ka-contact { min-width: clamp(110px, 10vw, 160px); white-space: nowrap; border-inline-start-color: var(--ka-wline); border-inline-end-color: var(--ka-wline); font-family: var(--ct-head); font-size: 15px; font-weight: 500; letter-spacing: .06em; }
.ka-contact:hover { background: var(--ct-accent); }
.ka-search-btn { width: clamp(58px, 6.6vw, 120px); padding: 0; font-size: 22px; }
.ka-search-btn:hover { color: var(--ct-accent); background: transparent; }

.ka-mega { position: absolute; left: 0; right: 0; top: 100%; z-index: 70; display: grid; grid-template-columns: minmax(260px, 30%) minmax(0, 1fr); background: var(--ka-deep); color: #fff; border-top: 1px solid var(--ka-wline); box-shadow: 0 50px 90px -50px rgba(0, 0, 0, .7); }
.ka-mega-tr { transition: opacity .25s ease, transform .35s var(--ka-ease); }
.ka-mega-from { opacity: 0; transform: translateY(-6px); }
.ka-mega-head { display: flex; flex-direction: column; gap: 14px; padding: 44px clamp(24px, 4vw, 60px); border-inline-end: 1px solid var(--ka-dline); }
.ka-mega-head b { font-family: var(--ct-head); font-size: 32px; font-weight: 600; line-height: 1.1; }
.ka-mega-head p { margin: 0; color: rgba(255, 255, 255, .65); line-height: 1.6; }
.ka-mega-head .ka-link { margin-top: auto; }
.ka-mega-links { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); }
.ka-mega-links a { position: relative; display: grid; grid-template-columns: 28px minmax(0, 1fr); column-gap: 14px; align-content: start; padding: 28px 28px 30px; border-inline-end: 1px solid var(--ka-dline); border-bottom: 1px solid var(--ka-dline); animation: ka-in .45s var(--ka-ease) both; animation-delay: calc(var(--ka-i) * 35ms); transition: background .25s ease; }
.ka-mega-links a > i { grid-row: span 2; font-size: 20px; color: var(--ct-accent); }
.ka-mega-links b { font-family: var(--ct-head); font-size: 16px; font-weight: 600; }
.ka-mega-links small { margin-top: 4px; color: rgba(255, 255, 255, .6); line-height: 1.5; }
.ka-mega-links a:hover { background: rgba(255, 255, 255, .05); }
.ka-mega-links a::after { content: ''; position: absolute; left: 0; right: 0; bottom: -1px; height: 2px; background: var(--ct-accent); transform: scaleX(0); transform-origin: left; transition: transform .4s var(--ka-ease); }
.ka-mega-links a:hover::after { transform: scaleX(1); }
@keyframes ka-in { from { opacity: 0; transform: translateY(8px); } }

/* Ust bar renk secenekleri (Temalar > Kare > Ayarlar > "Ust bar rengi"). Varsayilan: beyaz kurumsal. */
.ka-header.is-navy { background: #0B1F44; }
.ka-header.is-navy .ka-mega { background: #081736; }
.ka-header.is-light { background: #fff; color: var(--ct-ink); border-bottom: 1px solid var(--ct-line); }
.ka-header.is-light.is-scrolled { box-shadow: 0 14px 34px -26px color-mix(in srgb, var(--ct-ink) 55%, transparent); }
.ka-header.is-light .ka-cell, .ka-header.is-light .ka-logo { color: var(--ct-ink); }
.ka-header.is-light .ka-cell:hover { background: var(--ct-bg); }
.ka-header.is-light .ka-burger, .ka-header.is-light .ka-lang, .ka-header.is-light .ka-contact { border-color: var(--ct-line); }
.ka-header.is-light .ka-burger span { background: var(--ct-ink); }
.ka-header.is-light .ka-burger:hover span:nth-child(2) { background: var(--ct-accent); }
.ka-header.is-light .ka-nav > a, .ka-header.is-light .ka-nav > button { color: color-mix(in srgb, var(--ct-ink) 82%, #fff); }
.ka-header.is-light .ka-nav > :is(a, button):is(:hover, .is-current, .is-open) { color: var(--ct-ink); }
.ka-header.is-light .ka-langmenu .ct-langmenu-btn { color: var(--ct-ink); }
.ka-header.is-light .ka-lang .ct-langinline a { color: var(--ct-muted); }
.ka-header.is-light .ka-lang .ct-langinline a.is-active { color: var(--ct-ink); }
/* Kurumsal cagri hucresi: kirmizi zemin, beyaz yazi. */
.ka-header.is-light .ka-contact { background: var(--ct-accent); color: #fff; border-color: var(--ct-accent); }
.ka-header.is-light .ka-contact:hover { background: var(--ct-ink); border-color: var(--ct-ink); }
.ka-header.is-light .ka-search-btn { color: var(--ct-ink); }
.ka-header.is-light .ka-search-btn:hover { color: var(--ct-accent); }
.ka-header.is-light .ka-mega { background: #fff; color: var(--ct-ink); border-top-color: var(--ct-line); box-shadow: 0 40px 70px -40px color-mix(in srgb, var(--ct-ink) 50%, transparent); }
.ka-header.is-light .ka-mega-head { background: var(--ct-bg); border-color: var(--ct-line); }
.ka-header.is-light .ka-mega-head p, .ka-header.is-light .ka-mega-links small { color: var(--ct-muted); }
.ka-header.is-light .ka-mega-head .ka-link.is-white { color: var(--ct-ink); }
.ka-header.is-light .ka-mega-links a { border-color: var(--ct-line); }
.ka-header.is-light .ka-mega-links a:hover { background: var(--ct-bg); }

.ka-drawer { position: fixed; z-index: 120; top: 0; left: 0; bottom: 0; display: flex; flex-direction: column; width: min(460px, 92vw); overflow-y: auto; background: var(--ct-ink); color: #fff; }
.ka-drawer-tr { transition: transform .5s var(--ka-ease), opacity .3s ease; }
.ka-drawer-from { transform: translateX(-100%); opacity: .4; }
.ka-drawer-head { display: flex; align-items: center; justify-content: space-between; height: var(--ka-bar); padding-inline-start: 34px; border-bottom: 1px solid var(--ka-wline); }
.ka-drawer-head b { font-family: var(--ct-head); font-size: 20px; font-weight: 700; }
.ka-drawer-head button { width: var(--ka-bar); height: var(--ka-bar); border: 0; border-inline-start: 1px solid var(--ka-wline); background: none; color: #fff; font-size: 24px; cursor: pointer; }
.ka-drawer-head button:hover { background: var(--ct-accent); }
.ka-drawer-nav { display: grid; padding: 16px 34px; }
.ka-drawer-item { display: flex; align-items: center; justify-content: space-between; width: 100%; padding: 18px 0; border: 0; border-bottom: 1px solid var(--ka-dline); background: none; color: #fff; font: inherit; font-family: var(--ct-head); font-size: 22px; font-weight: 500; text-align: left; cursor: pointer; transition: color .2s ease, padding .3s var(--ka-ease); }
.ka-drawer-item:hover { color: var(--ct-accent); padding-inline-start: 8px; }
.ka-drawer-sub { display: grid; padding: 6px 0 14px 14px; border-inline-start: 2px solid var(--ct-accent); margin: 8px 0; }
.ka-drawer-sub a { padding: 8px 0; color: rgba(255, 255, 255, .72); }
.ka-drawer-sub a:hover { color: #fff; }
.ka-drawer-foot { display: grid; gap: 12px; margin-top: auto; padding: 26px 34px 34px; border-top: 1px solid var(--ka-wline); }
.ka-drawer-foot > a:not(.ka-btn) { display: inline-flex; align-items: center; gap: 10px; color: rgba(255, 255, 255, .85); }
.ka-drawer-foot i { color: var(--ct-accent); }
.ka-drawer-foot .ka-btn i { color: #fff; }
/* Yan menu ust barin rengini izler (Temalar > Kare > "Ust bar rengi"). Beyaz: acik zemin, koyu yazi, gri cizgiler. */
.ka-drawer.is-navy { background: #0B1F44; }
.ka-drawer.is-light { background: #fff; color: var(--ct-ink); box-shadow: 30px 0 60px -30px color-mix(in srgb, var(--ct-ink) 45%, transparent); }
.ka-drawer.is-light .ka-drawer-head, .ka-drawer.is-light .ka-drawer-foot { border-color: var(--ct-line); }
.ka-drawer.is-light .ka-drawer-head button { border-color: var(--ct-line); color: var(--ct-ink); }
.ka-drawer.is-light .ka-drawer-head button:hover { background: var(--ct-accent); color: #fff; }
.ka-drawer.is-light .ka-drawer-item { color: var(--ct-ink); border-color: var(--ct-line); }
.ka-drawer.is-light .ka-drawer-item:hover { color: var(--ct-accent); }
.ka-drawer.is-light .ka-drawer-item i { color: var(--ct-accent); }
.ka-drawer.is-light .ka-drawer-sub a { color: var(--ct-muted); }
.ka-drawer.is-light .ka-drawer-sub a:hover { color: var(--ct-ink); }
.ka-drawer.is-light .ka-drawer-foot > a:not(.ka-btn) { color: var(--ct-ink); }

.ka-search { position: fixed; inset: 0; z-index: 160; display: grid; align-content: start; padding: 18vh 24px 40px; background: color-mix(in srgb, var(--ka-deep) 95%, transparent); color: #fff; }
.ka-search-in { width: min(900px, 100%); margin: 0 auto; }
.ka-search-bar { display: flex; align-items: center; gap: 16px; border-bottom: 1px solid var(--ka-wline); }
.ka-search-bar input { flex: 1; min-width: 0; height: 80px; border: 0; background: none; color: #fff; font: inherit; font-family: var(--ct-head); font-size: clamp(26px, 3.4vw, 46px); font-weight: 300; outline: none; }
.ka-search-bar input::placeholder { color: rgba(255, 255, 255, .4); }
.ka-search-bar button { width: 56px; height: 56px; border: 1px solid var(--ka-wline); background: none; color: #fff; font-size: 22px; cursor: pointer; }
.ka-search-bar button:hover { background: var(--ct-accent); border-color: var(--ct-accent); }
.ka-search-results { display: grid; margin: 16px 0 0; padding: 0; list-style: none; }
.ka-search-results a { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 0; border-bottom: 1px solid var(--ka-dline); color: #fff; }
.ka-search-results small { display: block; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--ct-accent); }
.ka-search-results b { font-size: 20px; font-weight: 500; }
.ka-search-results a:hover b { color: var(--ct-accent); }
.ka-search-note { margin-top: 20px; color: rgba(255, 255, 255, .7); }

/* ---------- Acilis ---------- */
.ka-hero { position: relative; height: max(620px, calc(100vh - var(--ka-bar))); height: max(620px, calc(100svh - var(--ka-bar))); overflow: hidden; background: var(--ka-deep); color: #fff; isolation: isolate; }
.ka-hero > .ka-hero-bg { position: absolute; inset: 0; z-index: -2; margin: 0; opacity: 0; transition: opacity 1.2s ease; }
.ka-hero-bg.is-active { opacity: 1; }
.ka-hero-bg :is(img, video) { width: 100%; height: 100%; object-fit: cover; transform: scale(1.06); transition: transform calc(var(--ct-interval, 7s) * 1.6) linear; }
.ka-hero-bg.is-active :is(img, video) { transform: scale(1); }
.ka-hero-shade { position: absolute; inset: 0; z-index: -1; pointer-events: none; background: linear-gradient(90deg, color-mix(in srgb, var(--ka-deep) 78%, transparent) 0%, color-mix(in srgb, var(--ka-deep) 55%, transparent) 50%, color-mix(in srgb, var(--ka-deep) 45%, transparent) 100%); }
.ka-hero-grid { display: grid; grid-template-columns: 1fr 1fr; height: 100%; }
.ka-hero-left { display: flex; flex-direction: column; justify-content: flex-end; padding: 60px clamp(24px, 9vw, 130px) 34px; }
.ka-hero-copies { display: grid; }
.ka-hero-copy { grid-area: 1 / 1; opacity: 0; visibility: hidden; transition: opacity .25s ease, visibility 0s linear .25s; }
.ka-hero-copy.is-active { opacity: 1; visibility: visible; transition: opacity .3s ease .25s, visibility 0s; }
.ka-hero-copy > * { opacity: 0; transform: translateY(22px); transition: opacity .2s ease, transform .2s ease; }
.ka-hero-copy.is-active > * { opacity: 1; transform: none; transition: opacity .7s ease, transform .9s var(--ka-ease); }
.ka-hero-copy.is-active > :nth-child(1) { transition-delay: .3s; }
.ka-hero-copy.is-active > :nth-child(2) { transition-delay: .42s; }
.ka-hero-copy.is-active > :nth-child(3) { transition-delay: .54s; }
.ka-hero-copy.is-active > :nth-child(4) { transition-delay: .66s; }
.ka-hero-kick { display: block; font-family: var(--ct-head); font-size: clamp(34px, 4.4vw, 68px); font-weight: 700; line-height: 1.05; letter-spacing: -.01em; color: var(--ct-accent); }
.ka-display { margin: 4px 0 0; font-family: var(--ct-head); font-size: clamp(38px, 4.6vw, 72px); font-weight: 400; line-height: 1.05; letter-spacing: -.01em; color: #fff; text-wrap: balance; }
.ka-hero-sub { margin: 18px 0 0; max-width: 560px; font-size: clamp(17px, 1.5vw, 22px); font-weight: 300; line-height: 1.5; color: rgba(255, 255, 255, .9); }
.ka-hero-btn { display: inline-flex; align-items: center; gap: 10px; margin-top: 22px; padding: 10px 16px; border-radius: var(--ct-radius, 2px); background: color-mix(in srgb, var(--ka-deep) 85%, #555); color: #fff; font-family: var(--ct-head); font-size: 15px; font-weight: 600; transition: background .3s ease; }
.ka-hero-btn:hover { background: var(--ct-accent); }
.ka-hero-btn i { transition: transform .3s var(--ka-ease); }
.ka-hero-btn:hover i { transform: translateX(4px); }
.ka-hero-dots { display: flex; gap: 8px; margin-top: 34px; }
.ka-hero-dots button { width: 44px; height: 14px; padding: 6px 0; border: 0; background: none; cursor: pointer; }
.ka-hero-dots i { position: relative; display: block; height: 2px; background: rgba(255, 255, 255, .3); overflow: hidden; }
.ka-hero-dots i::after { content: ''; position: absolute; inset: 0; background: var(--ct-accent); transform: scaleX(0); transform-origin: left; }
.ka-hero-dots button.is-active i::after { animation: ka-progress var(--ct-interval, 7s) linear forwards; }
.ka-hero.is-paused .ka-hero-dots button.is-active i::after { animation-play-state: paused; }
@keyframes ka-progress { to { transform: scaleX(1); } }
/* Is ortagi logolari: beyaz kart icinde (logolarin cogu beyaz zeminli; beyaza boyamak onlari bos kutuya ceviriyordu).
   Kartlar ayni olcude, logo gri ve kutuya sigar; uzerine gelince renklenir. Sigmayan logolar alt satira iner. */
.ka-hero-logos { display: grid; grid-template-columns: repeat(4, 92px); gap: 8px; margin-top: 36px; }
.ka-hero-logo { box-sizing: border-box; display: grid; place-items: center; flex: none; width: 92px; height: 44px; padding: 8px 10px; border-radius: 10px; background: rgba(255, 255, 255, .94); box-shadow: 0 10px 24px -16px rgba(0, 0, 0, .6); transition: transform .3s var(--ka-ease), background .3s ease; }
.ka-hero-logo img { display: block; width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply; filter: grayscale(1); opacity: .8; transition: filter .25s ease, opacity .25s ease; }
.ka-hero-logo:hover { background: #fff; transform: translateY(-3px); }
.ka-hero-logo:hover img { filter: none; opacity: 1; }

/* Cozum kartlari (sag yari): 2x2 cam kartlar, dikeyde ortali; simge, baslik, kisa aciklama ve ok hep gorunur, yazi
   yari saydam zeminde arka plandan ayrisir. Uzerine gelince kart ana renkle dolar, yukselir, ok kayar. */
.ka-hero-tiles { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-content: center; gap: 14px; padding: clamp(24px, 4vh, 48px) clamp(20px, 4vw, 64px) clamp(24px, 4vh, 48px) clamp(16px, 2vw, 32px); }
.ka-hero-tiles.is-n1 { grid-template-columns: 1fr; }
.ka-hero-tiles.is-n3 .ka-tile:last-child { grid-column: span 2; }
.ka-tile { position: relative; display: grid; grid-template-rows: auto 1fr; gap: 14px; min-height: clamp(150px, 19vh, 200px); padding: 22px 22px 20px; border: 1px solid rgba(255, 255, 255, .16); border-radius: 18px; background: linear-gradient(160deg, rgba(255, 255, 255, .13), rgba(255, 255, 255, .05)); backdrop-filter: blur(14px) saturate(140%); -webkit-backdrop-filter: blur(14px) saturate(140%); color: #fff; overflow: hidden; isolation: isolate; box-shadow: 0 24px 50px -30px rgba(0, 0, 0, .7); transition: transform .45s var(--ka-ease), border-color .3s ease, box-shadow .3s ease; }
.ka-tile::before { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(150deg, var(--ct-accent), color-mix(in srgb, var(--ct-accent) 70%, #000)); opacity: 0; transition: opacity .4s ease; }
.ka-tile:hover, .ka-tile:focus-visible { transform: translateY(-6px); border-color: transparent; box-shadow: 0 30px 60px -28px color-mix(in srgb, var(--ct-accent) 70%, #000); }
.ka-tile:hover::before, .ka-tile:focus-visible::before { opacity: 1; }
.ka-tile-ico { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 14px; background: rgba(255, 255, 255, .14); color: #fff; font-size: 21px; transition: background .3s ease, transform .5s var(--ka-ease); }
.ka-tile:hover .ka-tile-ico { background: #fff; color: var(--ct-accent); transform: rotate(-6deg) scale(1.05); }
.ka-tile-body { display: grid; align-content: end; gap: 6px; padding-inline-end: 40px; }
.ka-tile b { font-family: var(--ct-head); font-size: clamp(17px, 1.35vw, 21px); font-weight: 600; line-height: 1.25; letter-spacing: -.01em; text-shadow: 0 1px 10px rgba(0, 0, 0, .35); }
.ka-tile small { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: 13.5px; line-height: 1.5; color: rgba(255, 255, 255, .78); }
.ka-tile:hover small { color: rgba(255, 255, 255, .95); }
.ka-tile-go { position: absolute; right: 18px; bottom: 18px; display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; background: rgba(255, 255, 255, .14); font-size: 14px; transition: background .3s ease, color .3s ease, transform .45s var(--ka-ease); }
.ka-tile:hover .ka-tile-go { background: #fff; color: var(--ct-accent); transform: translateX(3px); }

/* Gorunum 2 - Cizgili izgara: sag yari kenardan kenara 2x2 hucre, ince beyaz cizgiler; yazilar hep gorunur, hucrenin
   ustunde simge, altinda baslik + aciklama. Uzerine gelince hucre ana renkle alttan dolar. */
.ka-hero-tiles.is-lines { grid-template-rows: repeat(2, minmax(0, 1fr)); align-content: stretch; gap: 0; padding: 0; border-inline-start: 1px solid rgba(255, 255, 255, .22); }
.ka-hero-tiles.is-n2.is-lines { grid-template-rows: 1fr; }
.is-lines .ka-tile { align-content: space-between; min-height: 0; padding: clamp(20px, 3vh, 34px) clamp(20px, 2.2vw, 32px); border: 0; border-radius: 0; border-inline-end: 1px solid rgba(255, 255, 255, .22); border-bottom: 1px solid rgba(255, 255, 255, .22); background: linear-gradient(180deg, transparent 35%, rgba(5, 15, 25, .45)); backdrop-filter: none; -webkit-backdrop-filter: none; box-shadow: none; }
.is-lines .ka-tile:nth-child(2n) { border-inline-end: 0; }
.is-lines .ka-tile:nth-last-child(-n + 2) { border-bottom: 0; }
.is-lines .ka-tile::before { opacity: 1; transform: scaleY(0); transform-origin: bottom; transition: transform .55s var(--ka-ease); }
.is-lines .ka-tile:hover, .is-lines .ka-tile:focus-visible { transform: none; box-shadow: none; }
.is-lines .ka-tile:hover::before, .is-lines .ka-tile:focus-visible::before { transform: scaleY(1); }
.is-lines .ka-tile-ico { width: 52px; height: 52px; background: transparent; border: 1px solid rgba(255, 255, 255, .35); border-radius: 50%; font-size: 22px; }
.is-lines .ka-tile b { font-size: clamp(18px, 1.6vw, 26px); font-weight: 500; letter-spacing: .01em; text-transform: uppercase; }
.is-lines .ka-tile-go { right: clamp(20px, 2.2vw, 32px); bottom: auto; top: clamp(20px, 3vh, 34px); border-radius: 0; background: transparent; border: 1px solid rgba(255, 255, 255, .45); }

/* Gorunum 3 - Dikey liste: sag yarida dikeyde ortali, alt alta yatay satirlar; solda renkli serit ve simge, ortada
   baslik + aciklama, sagda ok. Uzerine gelince satir ana renkle dolar ve hafifce sola kayar. */
.ka-hero-tiles.is-list { grid-template-columns: 1fr; gap: 10px; max-width: 560px; margin-inline-start: auto; width: 100%; }
.is-list .ka-tile { grid-template-columns: auto minmax(0, 1fr); grid-template-rows: none; align-items: center; gap: 18px; min-height: 0; padding: 16px 64px 16px 18px; border: 0; border-inline-start: 3px solid var(--ct-accent); border-radius: 12px; background: rgba(6, 18, 30, .58); }
.is-list .ka-tile-body { align-content: center; padding-inline-end: 0; gap: 3px; }
.is-list .ka-tile small { -webkit-line-clamp: 1; }
.is-list .ka-tile-go { top: 50%; bottom: auto; right: 18px; margin-top: -18px; }
.is-list .ka-tile:hover, .is-list .ka-tile:focus-visible { transform: translateX(-8px); }
.is-list .ka-tile:hover .ka-tile-ico { transform: none; }
html[dir="rtl"] .is-list .ka-tile:hover { transform: translateX(8px); }

/* ---------- Cozumler (cizgili hucreler, gorsel uzerine gelince) ---------- */
.ka-sol-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--ct-line); border-left: 1px solid var(--ct-line); }
.ka-sol { position: relative; display: grid; align-content: start; gap: 12px; min-height: 280px; padding: 36px 34px 70px; border-right: 1px solid var(--ct-line); border-bottom: 1px solid var(--ct-line); background: #fff; color: var(--ct-ink); overflow: hidden; isolation: isolate; transition: color .4s ease; }
.ka-sol-img { position: absolute; inset: 0; z-index: -2; opacity: 0; transition: opacity .5s ease; }
.ka-sol-img img { width: 100%; height: 100%; object-fit: cover; transform: scale(1.08); transition: transform 1.2s var(--ka-ease); }
.ka-sol::before { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, color-mix(in srgb, var(--ct-ink) 70%, transparent), color-mix(in srgb, var(--ka-deep) 92%, transparent)); opacity: 0; transition: opacity .5s ease; }
.ka-sol::after { content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background: var(--ct-accent); transform: scaleX(0); transform-origin: left; transition: transform .5s var(--ka-ease); }
.ka-sol:hover { color: #fff; }
.ka-sol:hover .ka-sol-img, .ka-sol:hover::before { opacity: 1; }
.ka-sol:hover .ka-sol-img img { transform: scale(1); }
.ka-sol:hover::after { transform: scaleX(1); }
.ka-sol em { font-style: normal; font-family: var(--ct-head); font-size: 14px; font-weight: 600; color: var(--ct-accent); }
.ka-sol b { font-family: var(--ct-head); font-size: 23px; font-weight: 600; line-height: 1.2; }
.ka-sol small { color: var(--ct-muted); font-size: 15px; line-height: 1.6; transition: color .4s ease; }
.ka-sol:hover small { color: rgba(255, 255, 255, .85); }
.ka-sol-go { position: absolute; left: 34px; bottom: 30px; font-size: 20px; color: var(--ct-accent); transition: transform .4s var(--ka-ease); }
.ka-sol:hover .ka-sol-go { transform: translateX(8px); }

/* ---------- Hakkimizda ---------- */
.ka-about { padding: 130px 0; background: #fff; overflow: hidden; }
.ka-about-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; gap: clamp(50px, 7vw, 110px); }
.ka-about-visual { position: relative; padding: 34px 0 0 34px; }
.ka-about-lines { position: absolute; left: 0; top: 0; right: 34px; bottom: 34px; border: 1px solid var(--ct-line); pointer-events: none; }
.ka-about-lines::before, .ka-about-lines::after { content: ''; position: absolute; background: var(--ct-line); }
.ka-about-lines::before { left: -60px; right: -60px; top: 34px; height: 1px; }
.ka-about-lines::after { top: -60px; bottom: -60px; left: 34px; width: 1px; }
.ka-about-img { position: relative; aspect-ratio: 4 / 3.3; overflow: hidden; background: var(--ct-bg); }
.ka-about-img img { width: 100%; height: 100%; object-fit: cover; transform: scale(1.06); transition: transform 1.5s var(--ka-ease); }
.ka-about-visual.is-in .ka-about-img img { transform: scale(1); }
.ka-about-badge { position: absolute; right: -1px; bottom: -1px; display: grid; gap: 4px; min-width: 170px; padding: 24px 26px; background: var(--ct-accent); color: #fff; }
.ka-about-badge b { font-family: var(--ct-head); font-size: 56px; font-weight: 300; line-height: .9; }
.ka-about-badge span { font-size: 14px; font-weight: 500; }
.ka-about-sub { margin: 22px 0 0; font-family: var(--ct-head); font-size: 20px; font-weight: 500; line-height: 1.5; color: var(--ct-ink); }
.ka-about-body { margin: 16px 0 0; line-height: 1.8; color: var(--ct-muted); }
.ka-about-foot { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 28px; margin-top: 36px; }
.ka-about-line { display: inline-flex; align-items: center; gap: 10px; font-family: var(--ct-head); font-weight: 600; color: var(--ct-ink); }
.ka-about-line i { color: var(--ct-accent); }

/* ---------- Rakamlar ---------- */
.ka-stats { position: relative; padding: 100px 0; background: var(--ct-ink); color: #fff; overflow: hidden; isolation: isolate; }
.ka-stats::before { content: ''; position: absolute; inset: 0; z-index: -1; background-image: linear-gradient(var(--ka-dline) 1px, transparent 1px), linear-gradient(90deg, var(--ka-dline) 1px, transparent 1px); background-size: 80px 80px; -webkit-mask-image: radial-gradient(ellipse at 70% 50%, #000 15%, transparent 70%); mask-image: radial-gradient(ellipse at 70% 50%, #000 15%, transparent 70%); }
.ka-stats-grid { display: grid; grid-template-columns: repeat(var(--ka-cols), minmax(0, 1fr)); row-gap: 50px; }
.ka-stat { display: grid; align-content: start; gap: 12px; padding: 0 34px; border-inline-start: 1px solid var(--ka-wline); }
/* Her satirin ilk hucresi kenara dayali, cizgisiz (sutun sayisina gore). */
.is-c1 .ka-stat, .is-c2 .ka-stat:nth-child(2n+1), .is-c3 .ka-stat:nth-child(3n+1), .is-c4 .ka-stat:nth-child(4n+1) { padding-inline-start: 0; border-inline-start: 0; }
.ka-stat::before { content: ''; width: 30px; height: 3px; margin-bottom: 8px; background: var(--ct-accent); }
.ka-stat b { font-family: var(--ct-head); font-size: clamp(46px, 5vw, 78px); font-weight: 300; line-height: .95; letter-spacing: -.03em; }
.ka-stat em { font-style: normal; font-weight: 500; color: var(--ct-accent); }
.ka-stat > span { max-width: 220px; font-size: 13px; font-weight: 600; letter-spacing: .14em; line-height: 1.5; text-transform: uppercase; color: rgba(255, 255, 255, .7); }

/* ---------- Hizmetler (cizgili izgara) ---------- */
.ka-services { background: var(--ct-bg); }
.ka-svc-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid var(--ct-line); border-left: 1px solid var(--ct-line); }
.ka-svc { position: relative; display: grid; align-content: space-between; gap: 40px; min-height: 210px; padding: 32px 30px; border-right: 1px solid var(--ct-line); border-bottom: 1px solid var(--ct-line); background: #fff; color: var(--ct-ink); transition: background .4s ease, color .4s ease; }
.ka-svc::after { content: ''; position: absolute; left: 0; right: 0; bottom: -1px; height: 3px; background: var(--ct-accent); transform: scaleX(0); transform-origin: left; transition: transform .45s var(--ka-ease); }
.ka-svc:hover { background: var(--ct-ink); color: #fff; }
.ka-svc:hover::after { transform: scaleX(1); }
.ka-svc-ico { font-size: 34px; color: var(--ct-accent); transition: transform .45s var(--ka-ease); }
.ka-svc:hover .ka-svc-ico { transform: translateY(-4px); }
.ka-svc b { padding-inline-end: 28px; font-family: var(--ct-head); font-size: 16px; font-weight: 600; letter-spacing: .1em; line-height: 1.35; text-transform: uppercase; }
.ka-svc-go { position: absolute; right: 26px; bottom: 32px; color: var(--ct-accent); transition: transform .4s var(--ka-ease); }
.ka-svc:hover .ka-svc-go { transform: translateX(6px); }

/* ---------- One cikan + etkinlikler ---------- */
.ka-duo-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 48px; align-items: start; }
.ka-feature { display: grid; overflow: hidden; background: var(--ct-ink); color: #fff; }
.ka-feature-img { display: block; aspect-ratio: 16 / 9; overflow: hidden; }
.ka-feature-img img { width: 100%; height: 100%; object-fit: cover; transition: transform .9s var(--ka-ease); }
.ka-feature:hover .ka-feature-img img { transform: scale(1.05); }
.ka-feature-body { display: grid; gap: 12px; padding: 34px; }
.ka-feature-body b { font-family: var(--ct-head); font-size: 28px; font-weight: 600; }
.ka-feature-body small { color: rgba(255, 255, 255, .78); font-size: 15px; line-height: 1.6; }
.ka-feature-go { display: inline-flex; align-items: center; gap: 8px; margin-top: 6px; font-weight: 600; color: var(--ct-accent); }
.ka-duo-side .ka-head { margin-bottom: 26px; }
.ka-events { display: grid; border-top: 1px solid var(--ct-line); }
.ka-event { display: grid; grid-template-columns: 70px minmax(0, 1fr) 24px; align-items: center; gap: 18px; padding: 16px 0; border-bottom: 1px solid var(--ct-line); color: var(--ct-ink); transition: padding .3s var(--ka-ease); }
.ka-event:hover { padding-inline-start: 10px; }
.ka-event-date { display: grid; place-items: center; height: 70px; background: var(--ct-ink); color: #fff; text-align: center; }
.ka-event-date b { font-family: var(--ct-head); font-size: 24px; line-height: 1; }
.ka-event-date small { font-size: 12px; text-transform: uppercase; color: var(--ct-accent); }
.ka-event-text b { display: block; font-weight: 600; }
.ka-event-text small { color: var(--ct-muted); }
.ka-events-more { margin-top: 22px; }

/* ---------- Yazilar ---------- */
.ka-posts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--ct-line); border-left: 1px solid var(--ct-line); }
.ka-post { display: grid; align-content: start; gap: 14px; padding: 20px 20px 28px; border-right: 1px solid var(--ct-line); border-bottom: 1px solid var(--ct-line); background: #fff; color: var(--ct-ink); transition: background .3s ease; }
.ka-post:hover { background: var(--ct-bg); }
.ka-post-img { position: relative; display: block; aspect-ratio: 16 / 10; overflow: hidden; background: var(--ct-bg); }
.ka-post-img img { width: 100%; height: 100%; object-fit: cover; transition: transform .9s var(--ka-ease); }
.ka-post:hover .ka-post-img img { transform: scale(1.05); }
.ka-post-img i { position: absolute; right: 0; top: 0; display: grid; place-items: center; width: 46px; height: 46px; background: var(--ct-accent); color: #fff; opacity: 0; transition: opacity .3s ease; }
.ka-post:hover .ka-post-img i { opacity: 1; }
.ka-post b { font-family: var(--ct-head); font-size: 20px; font-weight: 600; line-height: 1.3; }

/* ---------- Referanslar ---------- */
.ka-logos { padding: 100px 0; background: #fff; }
.ka-logos-inner { display: grid; grid-template-columns: 300px minmax(0, 1fr); gap: 56px; align-items: center; }
.ka-logo-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid var(--ct-line); border-left: 1px solid var(--ct-line); }
.ka-logo-cell { display: grid; place-items: center; height: 110px; padding: 22px; border-right: 1px solid var(--ct-line); border-bottom: 1px solid var(--ct-line); }
.ka-logo-cell img { max-width: 100%; max-height: 46px; object-fit: contain; filter: grayscale(1); opacity: .6; transition: filter .3s ease, opacity .3s ease; }
.ka-logo-cell:hover img { filter: none; opacity: 1; }

/* ---------- Kapanis (hucreli petrol bant) ---------- */
.ka-cta { background: var(--ct-ink); color: #fff; }
.ka-cta-grid { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(0, .8fr) minmax(0, .8fr); align-items: stretch; gap: 16px; padding: 70px 0 60px; }
.ka-cta-copy { padding: 10px clamp(24px, 4vw, 60px) 10px 0; }
.ka-cta-copy .ka-hero-kick { font-size: clamp(18px, 1.6vw, 22px); font-weight: 600; letter-spacing: .12em; text-transform: uppercase; }
.ka-cta h2 { margin: 14px 0 0; font-family: var(--ct-head); font-size: clamp(30px, 3.4vw, 50px); font-weight: 400; line-height: 1.1; }
.ka-cta p { margin: 18px 0 0; max-width: 520px; line-height: 1.7; color: rgba(255, 255, 255, .72); }
.ka-cta-cell { position: relative; display: grid; align-content: end; gap: 8px; min-height: 220px; padding: 32px clamp(22px, 2.6vw, 38px); border-radius: 16px; background: rgba(255, 255, 255, .05); color: #fff; transition: background .3s ease, transform .4s var(--ka-ease); }
.ka-cta-cell small { font-size: 12px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: rgba(255, 255, 255, .65); }
.ka-cta-cell b { font-family: var(--ct-head); font-size: clamp(22px, 2vw, 30px); font-weight: 500; }
.ka-cta-cell:hover { background: rgba(255, 255, 255, .09); transform: translateY(-4px); }
.ka-cta-cell.is-accent { background: var(--ct-accent); }
.ka-cta-cell.is-accent small { color: rgba(255, 255, 255, .85); }
.ka-cta-cell.is-accent > i { position: absolute; top: 34px; right: 34px; font-size: 30px; transition: transform .45s var(--ka-ease); }
.ka-cta-cell.is-accent:hover { background: color-mix(in srgb, var(--ct-accent) 85%, #000); }
.ka-cta-cell.is-accent:hover > i { transform: translateX(8px); }

/* ---------- Alt bilgi ---------- */
.ka-footer { position: relative; overflow: hidden; background: var(--ka-deep); color: rgba(255, 255, 255, .68); isolation: isolate; }
.ka-footer-glow { position: absolute; z-index: -1; right: -12%; top: -40%; width: 60%; aspect-ratio: 1; border-radius: 50%; background: radial-gradient(circle, color-mix(in srgb, var(--ct-accent) 26%, transparent), transparent 65%); pointer-events: none; }
.ka-footer-top { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); align-items: center; gap: clamp(30px, 5vw, 80px); padding: 80px 0 64px; }
.ka-footer-brand img { height: 50px; width: auto; max-width: 220px; object-fit: contain; }
.ka-footer-brand b { font-family: var(--ct-head); font-size: 26px; font-weight: 700; color: #fff; }
.ka-footer-brand p { margin: 22px 0 0; max-width: 520px; font-size: 16px; line-height: 1.75; }
.ka-footer-reach { display: grid; gap: 14px; }
.ka-reach { display: flex; align-items: center; gap: 18px; padding: 18px 22px; border-radius: 16px; background: rgba(255, 255, 255, .05); color: #fff; transition: background .3s ease, transform .4s var(--ka-ease); }
.ka-reach:hover { background: rgba(255, 255, 255, .1); transform: translateX(6px); }
.ka-reach > i { display: grid; place-items: center; flex: none; width: 52px; height: 52px; border-radius: 50%; background: var(--ct-accent); color: #fff; font-size: 20px; }
.ka-reach small { display: block; font-size: 12px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: rgba(255, 255, 255, .6); }
.ka-reach b { display: block; margin-top: 2px; font-family: var(--ct-head); font-size: clamp(20px, 2vw, 28px); font-weight: 500; overflow-wrap: anywhere; }
.ka-footer-cols { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 40px clamp(24px, 4vw, 60px); padding: 10px 0 70px; }
.ka-footer h4 { display: flex; align-items: center; gap: 10px; margin: 0 0 22px; font-family: var(--ct-head); font-size: 13px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: #fff; }
.ka-footer h4::before { content: ''; width: 8px; height: 8px; background: var(--ct-accent); }
.ka-footer-col ul { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
.ka-footer-col li a { display: inline-flex; align-items: center; gap: 0; transition: color .2s ease, gap .3s var(--ka-ease); }
.ka-footer-col li a i { width: 0; overflow: hidden; color: var(--ct-accent); font-size: 12px; opacity: 0; transition: width .3s var(--ka-ease), opacity .3s ease; }
.ka-footer-col li a:hover { color: #fff; gap: 8px; }
.ka-footer-col li a:hover i { width: 14px; opacity: 1; }
.ka-footer-address p { display: grid; grid-template-columns: 20px minmax(0, 1fr); gap: 10px; margin: 0 0 18px; line-height: 1.6; }
.ka-footer-address p i { margin-top: 4px; color: var(--ct-accent); }
.ka-footer-bottom { background: rgba(0, 0, 0, .22); font-size: 14px; }
.ka-footer-bottom-in { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px 28px; padding: 20px 20px; }
.ka-footer-bottom nav { display: flex; flex-wrap: wrap; gap: 24px; margin-inline-start: auto; }
.ka-footer-bottom a:hover { color: #fff; }
.ka-social { display: flex; gap: 8px; }
.ka-social a { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: rgba(255, 255, 255, .08); color: #fff; transition: background .25s ease, transform .3s var(--ka-ease); }
.ka-social a:hover { background: var(--ct-accent); transform: translateY(-3px); }
/* Bolum ayiricilari: alt bilgi tek parca gorunmesin; soldan vurgu renginde baslayip sola-saga solan ince cizgi. */
.ka-footer { border-top: 1px solid var(--ka-dline); }
.ka-footer-top { position: relative; margin-bottom: 56px; }
.ka-footer-top::after, .ka-footer-bottom::before { content: ''; position: absolute; left: 0; right: 0; height: 1px; background: linear-gradient(90deg, var(--ct-accent) 0, color-mix(in srgb, var(--ct-accent) 40%, rgba(255, 255, 255, .14)) 18%, rgba(255, 255, 255, .14) 60%, rgba(255, 255, 255, .04)); }
.ka-footer-top::after { bottom: 0; }
.ka-footer-bottom { position: relative; }
.ka-footer-bottom::before { top: 0; background: rgba(255, 255, 255, .1); }
.ka-footer-cols { padding-bottom: 64px; }

/* ---------- Ic sayfalar ---------- */
.ct-page-hero { background: var(--ct-ink); }
.ct-page-hero::after { background: color-mix(in srgb, var(--ct-accent) 26%, transparent); }
.ct-page-hero h1 { font-family: var(--ct-head); font-weight: 500; letter-spacing: -.01em; }
.ct-page-hero .ct-eyebrow { color: var(--ct-accent); }
.ct-btn { border-radius: var(--ct-radius); }
.ct-body :is(h1, h2, h3) { font-family: var(--ct-head); }
.ct-contact, .ct-map, .ct-card, .ct-faq { border-radius: 2px; }

/* ---------- Duyarli ---------- */
@media (max-width: 1360px) {
    .ka-nav > a, .ka-nav > button { font-size: 14px; letter-spacing: .02em; }
    .ka-cell { padding: 0 16px; }
    .ka-logo img { height: 38px; max-width: 160px; }
}
@media (max-width: 1180px) {
    .ka-nav { display: none; }
    .ka-mega { display: none !important; }
    .ka-logo { margin-inline-end: auto; }
    .ka-hero { height: auto; min-height: 0; }
    .ka-hero-grid { grid-template-columns: 1fr; }
    .ka-hero-left { min-height: 70vh; padding-top: 120px; }
    .ka-hero-tiles { padding: 0 clamp(20px, 4vw, 48px) 40px; }
    .ka-tile { min-height: 150px; }
    .ka-hero-tiles.is-lines { border-inline-start: 0; border-top: 1px solid rgba(255, 255, 255, .22); }
    .is-lines .ka-tile { min-height: 170px; }
    .ka-hero-tiles.is-list { margin-inline: 0; max-width: none; }
    .ka-sol-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ka-svc-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ka-about-grid, .ka-duo-grid, .ka-logos-inner { grid-template-columns: 1fr; }
    .ka-stats-grid { grid-template-columns: repeat(min(var(--ka-cols), 2), minmax(0, 1fr)); }
    .ka-stats-grid .ka-stat { padding-inline-start: 34px; border-inline-start: 1px solid var(--ka-wline); }
    .ka-stats-grid .ka-stat:nth-child(odd) { padding-inline-start: 0; border-inline-start: 0; }
    .ka-cta-grid { grid-template-columns: 1fr 1fr; }
    .ka-cta-copy { grid-column: 1 / -1; padding: 0 0 16px; }
    .ka-footer-top { grid-template-columns: 1fr; padding: 60px 0 44px; }
    .ka-head.is-split { flex-direction: column; align-items: flex-start; gap: 24px; }
}
@media (max-width: 760px) {
    :root { --ka-bar: 62px; }
    .ct-section, .ka-about { padding: 80px 0; }
    .ka-lang, .ka-contact { display: none; }
    .ka-logo { padding: 0 16px; }
    .ka-logo img { height: 34px; max-width: 150px; }
    .ka-hero-left { min-height: 76vh; padding: 90px 22px 30px; }
    .ka-hero-tiles { grid-template-columns: 1fr 1fr; }
    .ka-hero-tiles { gap: 10px; padding: 0 16px 28px; }
    .ka-hero-logos { grid-template-columns: repeat(4, minmax(0, 1fr)); width: 100%; max-width: 420px; }
    .ka-hero-logo { width: auto; height: 40px; padding: 7px 8px; }
    .ka-hero-left, .ka-hero-grid { min-width: 0; }
    .ka-tile { min-height: 130px; padding: 16px; gap: 10px; }
    .ka-tile b { font-size: 15.5px; }
    .ka-tile-body { padding-inline-end: 0; }
    .ka-tile-go { display: none; }
    .ka-sol-grid, .ka-svc-grid, .ka-posts { grid-template-columns: 1fr; }
    .ka-stat { padding: 0 16px; }
    .ka-cta-grid { grid-template-columns: 1fr; }
    .ka-cta-cell { min-height: 150px; }
    .ka-logo-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ka-footer-cols { grid-template-columns: 1fr 1fr; gap: 34px 20px; }
    .ka-footer-address { grid-column: 1 / -1; }
    .ka-footer-bottom nav { margin-inline-start: 0; }
}

/* Sag-sol (Arapca). */
html[dir="rtl"] .ka-hero-shade { transform: scaleX(-1); }
html[dir="rtl"] :is(.ka-btn, .ka-link, .ka-hero-btn, .ka-sol-go, .ka-svc-go) i, html[dir="rtl"] .ka-sol-go, html[dir="rtl"] .ka-svc-go { transform: scaleX(-1); }
html[dir="rtl"] .ka-tile-go { right: auto; left: 18px; }
html[dir="rtl"] .ka-drawer { left: auto; right: 0; }

@media (prefers-reduced-motion: reduce) {
    .ka-js [data-ka-reveal] { opacity: 1; transform: none; transition: none; }
    .ka-hero-bg :is(img, video), .ka-about-img img, .ka-sol-img img { transform: none; transition: none; }
    .ka-hero-copy > * { transform: none; transition: none; }
    .ka-mega-links a { animation: none; } .ka-tile, .ka-tile-ico { transition: none; }
    .ka-hero-dots button.is-active i::after { animation: none; transform: scaleX(1); }
}

@media print {
    .ka-header, .ka-hero-dots { display: none !important; }
    .ka-js [data-ka-reveal] { opacity: 1; transform: none; }
}
