/* =============================================================================
   Kanun (Avukat · Mali Müşavir) — bağımsız kabuk, v2.
   Fikir: dosya. Madde dizini çubuğu · mühür damgalı sayfa geçişi · kâğıt ve çift çizgi · resmî alt bilgi.
   Önek: kn-. Display: Cormorant 700 (OFL). Gövde: Inter (OFL). Renkler yalnızca --c-* belirteçlerinden.
   Hareket yalnızca prefers-reduced-motion: no-preference içinde; aksi hâlde her şey SON hâlinde görünür.
   ========================================================================== */
@font-face { font-family: "Cormorant"; src: url("../fonts/cormorant-latin-ext.woff2") format("woff2"); font-weight: 700; font-style: normal; font-display: swap;
    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: "Cormorant"; src: url("../fonts/cormorant-latin.woff2") format("woff2"); font-weight: 700; font-style: normal; font-display: swap;
    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; }
@font-face { font-family: "Cormorant"; src: url("../fonts/cormorant-italic-latin-ext.woff2") format("woff2"); font-weight: 700; font-style: italic; font-display: swap;
    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: "Cormorant"; src: url("../fonts/cormorant-italic-latin.woff2") format("woff2"); font-weight: 700; font-style: italic; font-display: swap;
    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; }
@font-face { font-family: "Inter"; src: url("../fonts/inter-latin-ext.woff2") format("woff2"); font-weight: 100 900; font-display: swap;
    unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Inter"; src: url("../fonts/inter-latin.woff2") format("woff2"); font-weight: 100 900; font-display: swap;
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

:root {
    --f-d: "Cormorant", "Cormorant Garamond", Georgia, "Times New Roman", serif;
    --f-b: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
    --bar-h: 4.7rem;
    --wrap: 80rem;
    --gut: clamp(1rem, 0.4rem + 2.6vw, 2.5rem);
    --ease: cubic-bezier(.2, .8, .2, 1);
    --rule: 3px double var(--c-ink);
    --grain: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .55 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
    --focus: 0 0 0 2px var(--c-bg), 0 0 0 4px var(--c-accent-dark);
    --t-1: clamp(1.15rem, 1.05rem + 0.5vw, 1.4rem);
    --t-2: clamp(1.7rem, 1.4rem + 1vw, 2.3rem);
    --t-3: clamp(2.2rem, 1.6rem + 2.2vw, 3.5rem);
    --t-4: clamp(2.8rem, 1.9rem + 3.6vw, 5.4rem);
}
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; scroll-padding-top: calc(var(--bar-h) + 4.4rem); }
body { margin: 0; background: var(--c-bg); color: var(--c-ink-soft); font: 400 clamp(1rem, 0.97rem + 0.14vw, 1.07rem)/1.65 var(--f-b); font-variant-numeric: lining-nums; -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; overflow-x: clip; }
h1, h2, h3, h4, p, ul, ol, dl, dd, figure, blockquote { margin: 0; }
ul, ol { padding: 0; list-style: none; }
img, svg { display: block; max-width: 100%; }
img { height: auto; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; color: inherit; }
button { cursor: pointer; background: none; border: 0; padding: 0; }
h1, h2, h3, h4 { font-family: var(--f-d); font-weight: 700; line-height: 1.04; letter-spacing: -0.005em; color: var(--c-ink); font-feature-settings: "lnum" 1, "kern" 1; text-wrap: balance; }
::selection { background: var(--c-accent); color: var(--c-on-accent); }
:focus-visible { outline: none; box-shadow: var(--focus); border-radius: 2px; }
[hidden] { display: none !important; }
.icon { width: 1.15em; height: 1.15em; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; flex: none; }
.kn-skip { position: fixed; left: 1rem; top: -4rem; z-index: 500; background: var(--c-accent); color: var(--c-on-accent); padding: 0.7rem 1rem; font-weight: 700; transition: top .2s; }
.kn-skip:focus { top: 1rem; }
.kn-preview { background: var(--c-accent); color: var(--c-on-accent); text-align: center; padding: 0.4rem; font-size: 0.8rem; font-weight: 600; }
.kn-wrap { width: 100%; max-width: var(--wrap); margin-inline: auto; padding-inline: var(--gut); }
.kn-main { display: block; min-height: 60vh; }
.kn-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

/* ── düğmeler: dikdörtgen, sertifika gibi iç çizgili ─────────────────── */
.kn-btn { --bg: var(--c-accent); --fg: var(--c-on-accent); --bd: var(--c-accent); display: inline-flex; align-items: center; justify-content: center; gap: 0.6rem; background: var(--bg); color: var(--fg); border: 1px solid var(--bd); border-radius: 2px; padding: 0.85rem 1.4rem; font-size: 0.74rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; line-height: 1.2; white-space: nowrap; position: relative; outline: 1px solid color-mix(in srgb, var(--fg) 38%, transparent); outline-offset: -5px; transition: background-color .2s, color .2s, transform .15s, box-shadow .2s; }
.kn-btn:hover { transform: translateY(-1px); box-shadow: 0 10px 18px -12px color-mix(in srgb, var(--c-accent-dark) 80%, transparent); }
.kn-btn--lg { padding: 1.05rem 1.7rem; font-size: 0.78rem; }
.kn-btn--block { width: 100%; }
.kn-btn--brass { --bg: var(--c-accent); --fg: var(--c-on-accent); --bd: var(--c-accent); }
.kn-btn--line { --bg: transparent; --fg: var(--c-ink); --bd: var(--c-ink); box-shadow: none; }
.kn-btn--line:hover { --bg: var(--c-ink); --fg: var(--c-bg); box-shadow: none; }
.kn-btn--ghost-l { --bg: transparent; --fg: var(--c-on-contrast-strong); --bd: color-mix(in srgb, var(--c-on-contrast) 55%, transparent); }
.kn-btn--ghost-l:hover { --bg: var(--c-accent); --fg: var(--c-on-accent); --bd: var(--c-accent); }
.kn-btn--call { white-space: normal; text-align: left; letter-spacing: 0.02em; text-transform: none; font-size: 1.05rem; font-family: var(--f-b); }
.kn-btn--call small { display: block; font-size: 0.62rem; letter-spacing: 0.14em; text-transform: uppercase; opacity: 0.8; margin-bottom: 0.1rem; }
.kn-btn .icon { width: 1.2em; height: 1.2em; }
.kn-linkbtn { color: var(--c-accent-ink); font-weight: 700; font-size: 0.78rem; letter-spacing: 0.08em; text-transform: uppercase; border-bottom: 1px solid currentColor; padding-bottom: 1px; }
.kn-linkbtn:hover { color: var(--c-ink); }

/* ── formlar ───────────────────────────────────────────────────────────── */
.kn-field { display: grid; gap: 0.35rem; margin-bottom: 1rem; position: relative; }
.kn-field label, .kn-field > span.kn-lab { font-size: 0.68rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--c-muted); }
.kn-field input, .kn-field select, .kn-field textarea { width: 100%; background: transparent; border: 0; border-bottom: 1.5px solid var(--c-border-2); border-radius: 0; padding: 0.55rem 0.1rem; font-size: 1rem; color: var(--c-ink); min-height: 2.8rem; transition: border-color .2s, background-color .2s; }
.kn-field textarea { min-height: 7rem; resize: vertical; border: 1.5px solid var(--c-border-2); padding: 0.7rem; background: color-mix(in srgb, var(--c-soft) 60%, transparent); }
.kn-field input:hover, .kn-field select:hover, .kn-field textarea:hover { border-color: var(--c-ink-soft); }
.kn-field input:focus, .kn-field select:focus, .kn-field textarea:focus { outline: none; border-color: var(--c-accent-dark); background: color-mix(in srgb, var(--c-accent-soft) 20%, transparent); box-shadow: none; }
.kn-field select { appearance: none; padding-right: 1.6rem; background-image: linear-gradient(45deg, transparent 50%, var(--c-ink) 50%), linear-gradient(135deg, var(--c-ink) 50%, transparent 50%); background-position: calc(100% - 10px) 52%, calc(100% - 5px) 52%; background-size: 5px 5px; background-repeat: no-repeat; }
.kn-field.is-bad input, .kn-field.is-bad textarea { border-color: #8a2c1c; }
.kn-field__err, .kn-err { color: #8a2c1c; font-size: 0.85rem; font-weight: 600; }
.kn-err { border-left: 3px solid #8a2c1c; padding: 0.6rem 0.9rem; background: color-mix(in srgb, #8a2c1c 8%, var(--c-bg)); margin-bottom: 1rem; }

/* ── ortak başlıklar, yazı kalıpları ─────────────────────────────────── */
.kn-kicker { font-size: 0.7rem; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase; color: var(--c-accent-ink); max-width: 60ch; line-height: 1.5; }
.kn-sec { padding-block: clamp(2.8rem, 1.6rem + 4.4vw, 5.4rem); position: relative; }
.kn-sec:not(.kn-sec--paper):not(.kn-cta-wrap) + .kn-sec:not(.kn-sec--paper) { padding-top: 0; }
.kn-sec--paper { background: var(--c-surface); border-block: 1px solid var(--c-border-2); }
.kn-sec--paper::before { content: ""; position: absolute; inset: 0; background: var(--grain); opacity: 0.06; mix-blend-mode: multiply; pointer-events: none; }
.kn-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 1.5rem; margin-bottom: clamp(1.6rem, 1rem + 2vw, 3rem); padding-bottom: 1rem; border-bottom: var(--rule); position: relative; }
.kn-head__t { font-size: var(--t-3); margin-top: 0.5rem; }
.kn-head__link { display: inline-flex; align-items: center; gap: 0.5rem; font-weight: 700; font-size: 0.74rem; letter-spacing: 0.12em; text-transform: uppercase; color: var(--c-accent-ink); white-space: nowrap; padding-bottom: 0.3rem; }
.kn-head__link .icon { transition: transform .25s var(--ease); }
.kn-head__link:hover .icon { transform: translateX(5px); }
.kn-empty { color: var(--c-muted); padding: 2rem 0; font-style: italic; }
.kn-tag { display: inline-flex; align-items: center; gap: 0.6rem; font-weight: 700; font-size: 0.72rem; letter-spacing: 0.16em; text-transform: uppercase; color: var(--c-accent); border: 1px solid color-mix(in srgb, var(--c-accent) 70%, transparent); padding: 0.4rem 0.8rem; line-height: 1.35; }
.kn-tag--ink { color: var(--c-accent-ink); border-color: var(--c-accent-ink); }
.kn-tag__dot { width: 7px; height: 7px; background: currentColor; transform: rotate(45deg); flex: none; }

.kn-prose { font-size: 1.04rem; line-height: 1.78; color: var(--c-ink-soft); max-width: 68ch; }
.kn-prose > * + * { margin-top: 1.1em; }
.kn-prose h2 { font-size: var(--t-2); margin-top: 2em; scroll-margin-top: calc(var(--bar-h) + 4.4rem); }
.kn-prose h3 { font-size: 1.5rem; margin-top: 1.6em; }
.kn-prose ul, .kn-prose ol { padding-left: 1.3rem; }
.kn-prose ul { list-style: square; } .kn-prose ol { list-style: decimal; }
.kn-prose li + li { margin-top: 0.4em; }
.kn-prose li::marker { color: var(--c-accent-ink); }
.kn-prose a { color: var(--c-accent-ink); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.kn-prose strong { color: var(--c-ink); }
.kn-prose blockquote { border-left: 3px double var(--c-accent-dark); padding: 0.2rem 0 0.2rem 1.2rem; font-family: var(--f-d); font-size: 1.5rem; line-height: 1.3; color: var(--c-ink); }
.kn-prose img { border: 1px solid var(--c-border-2); }
.kn-prose--drop > p:first-child::first-letter { font-family: var(--f-d); font-weight: 700; float: left; font-size: 4.6em; line-height: 0.8; padding: 0.06em 0.1em 0 0; color: var(--c-accent-ink); }
.kn-hl { position: relative; border: 1px solid var(--c-border-2); border-left: 4px solid var(--c-accent-dark); background: var(--c-soft); padding: 1.1rem 1.3rem 1.1rem 1.4rem; max-width: 68ch; }
.kn-hl__tag { display: inline-block; font-size: 0.64rem; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; color: var(--c-accent-ink); margin-bottom: 0.4rem; }
.kn-hl p { color: var(--c-ink-soft); } .kn-hl a { color: var(--c-accent-ink); text-decoration: underline; text-underline-offset: 3px; }
.kn-hl--end { margin-top: 2.4rem; }
.kn-fk { display: grid; gap: 0.55rem; counter-reset: fk; }
.kn-fk li { display: grid; grid-template-columns: 1.6rem 1fr; gap: 0.4rem; line-height: 1.5; }
.kn-fk i { font-style: italic; font-family: var(--f-d); font-weight: 700; font-size: 1.2em; color: var(--c-accent-ink); }
.kn-fk--big li { font-size: 1.04rem; padding: 0.65rem 0; border-bottom: 1px dotted var(--c-border-2); grid-template-columns: 2rem 1fr; }
.kn-ok { border: 3px double var(--c-ink); background: var(--c-soft); padding: clamp(1.4rem, 1rem + 2vw, 2.6rem); position: relative; max-width: 40rem; }
.kn-ok h2 { font-size: var(--t-2); } .kn-ok p { margin-top: 0.7rem; }
.kn-ok__stamp { position: absolute; right: 1rem; top: 1rem; border: 3px solid var(--c-accent-ink); color: var(--c-accent-ink); padding: 0.25rem 0.7rem; font-weight: 800; letter-spacing: 0.14em; font-size: 0.78rem; transform: rotate(7deg); mix-blend-mode: multiply; opacity: 0.9; }

/* ── ilerleme ve mühür (sayfa geçişi unsuru) ────────────────────────── */
.kn-prog { position: fixed; top: 0; left: 0; right: 0; height: 3px; z-index: 300; background: var(--c-accent); transform-origin: 0 50%; transform: scaleX(var(--sp, 0)); pointer-events: none; }
.kn-seal { position: fixed; left: -420px; top: 42%; width: 170px; height: 170px; z-index: 260; color: var(--c-accent-ink); pointer-events: none; opacity: 1; }
.kn-seal svg { width: 100%; height: 100%; } .kn-seal text { font-family: var(--f-d); }

/* ═══ MADDE DİZİNİ ÇUBUĞU ═══════════════════════════════════════════════ */
.kn-bar { position: sticky; top: 0; z-index: 200; background: var(--c-contrast); color: var(--c-on-contrast); height: var(--bar-h); }
.kn-bar::before { content: ""; position: absolute; inset: 0; background: var(--grain); opacity: 0.09; mix-blend-mode: screen; pointer-events: none; }
.kn-bar__in { position: relative; height: 100%; max-width: 92rem; margin-inline: auto; padding-inline: var(--gut); display: flex; align-items: center; gap: clamp(1rem, 0.4rem + 2vw, 2.4rem); }
.kn-bar__rule { position: absolute; left: 0; right: 0; bottom: 0; height: 5px; border-top: 1px solid color-mix(in srgb, var(--c-accent) 70%, transparent); border-bottom: 1px solid color-mix(in srgb, var(--c-accent) 38%, transparent); pointer-events: none; transition: opacity .3s; }
.kn-bar.is-stuck { box-shadow: 0 14px 24px -18px rgba(0, 0, 0, 0.7); }
.kn-logo { display: inline-flex; align-items: center; gap: 0.7rem; color: var(--c-on-contrast-strong); flex: none; }
.kn-logo__mark { display: grid; place-items: center; width: 2.45rem; height: 2.45rem; border-radius: 50%; border: 1.5px solid var(--c-accent); box-shadow: inset 0 0 0 3px var(--c-contrast), inset 0 0 0 4px color-mix(in srgb, var(--c-accent) 55%, transparent); font-family: var(--f-d); font-weight: 700; font-size: 1.5rem; line-height: 1; color: var(--c-accent-soft); padding-top: 0.12rem; transition: transform .5s var(--ease); }
.kn-logo:hover .kn-logo__mark { transform: rotate(-12deg) scale(1.06); }
.kn-logo__txt { font-family: var(--f-d); font-weight: 700; font-size: 1.45rem; letter-spacing: 0.16em; line-height: 1; }
.kn-logo__img { height: 2.2rem; width: auto; }
.kn-index { flex: 1; min-width: 0; display: none; }
.kn-index__list { display: flex; align-items: stretch; justify-content: center; gap: clamp(0.8rem, 0.2rem + 1.5vw, 2rem); height: var(--bar-h); }
.kn-index__li { position: relative; display: flex; }
.kn-index__a { position: relative; display: flex; flex-direction: column; justify-content: center; gap: 0.1rem; padding-inline: 0.15rem; color: var(--c-on-contrast); white-space: nowrap; transition: color .2s; }
.kn-index__a small { font-size: 0.56rem; font-weight: 700; letter-spacing: 0.2em; text-transform: uppercase; color: color-mix(in srgb, var(--c-on-contrast) 62%, transparent); transition: color .2s; }
.kn-index__a span { font-family: var(--f-d); font-weight: 700; font-size: 1.12rem; letter-spacing: 0.01em; line-height: 1.1; }
.kn-index__a::after { content: ""; position: absolute; left: 0; right: 0; bottom: 5px; height: 2px; background: var(--c-accent); transform: scaleX(0); transform-origin: 0 50%; transition: transform .35s var(--ease); }
.kn-index__a:hover, .kn-index__a.is-cur { color: var(--c-on-contrast-strong); }
.kn-index__a:hover small, .kn-index__a.is-cur small { color: var(--c-accent); }
.kn-index__a:hover::after, .kn-index__a.is-cur::after { transform: scaleX(1); }
.kn-index__a.is-cur span { color: var(--c-accent-soft); }
.kn-index__a.is-cur small::before { content: "§ "; }
.kn-index__subtoggle { align-self: center; color: var(--c-on-contrast); margin-left: 0.15rem; font-size: 0.7rem; padding: 0.35rem; line-height: 1; transition: transform .25s var(--ease); }
.kn-index__subtoggle[aria-expanded="true"] { transform: rotate(180deg); color: var(--c-accent); }
.kn-index__sub { position: absolute; left: -0.6rem; top: 100%; min-width: 14rem; background: var(--c-bg); color: var(--c-ink); border: 1px solid var(--c-border-2); border-top: 3px double var(--c-accent-dark); box-shadow: 0 24px 40px -22px rgba(0, 0, 0, 0.7); padding: 0.4rem; visibility: hidden; opacity: 0; transform: translateY(-6px); transition: opacity .2s, transform .25s var(--ease), visibility 0s .25s; z-index: 5; }
.kn-index__li.is-sub > .kn-index__sub, .kn-index__li:focus-within > .kn-index__sub { visibility: visible; opacity: 1; transform: none; transition-delay: 0s; }
.kn-index__sub a { display: block; padding: 0.55rem 0.8rem; font-size: 0.92rem; }
.kn-index__sub a:hover { background: var(--c-surface); color: var(--c-accent-ink); }
.kn-bar__act { margin-left: auto; display: flex; align-items: center; gap: 0.9rem; }
.kn-bar__tel { display: none; align-items: center; gap: 0.5rem; color: var(--c-on-contrast-strong); font-weight: 600; font-size: 0.86rem; white-space: nowrap; }
.kn-bar__tel .icon { color: var(--c-accent); }
.kn-bar__cta { display: none; align-items: center; background: var(--c-accent); color: var(--c-on-accent); padding: 0.62rem 1.05rem; font-size: 0.68rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; border-radius: 2px; white-space: nowrap; outline: 1px solid color-mix(in srgb, var(--c-on-accent) 38%, transparent); outline-offset: -4px; transition: background-color .2s; }
.kn-bar__cta:hover, .kn-bar__cta.is-cur { background: var(--c-accent-soft); }
.kn-idxbtn { display: inline-flex; align-items: center; gap: 0.6rem; color: var(--c-on-contrast-strong); border: 1px solid color-mix(in srgb, var(--c-on-contrast) 40%, transparent); padding: 0.5rem 0.85rem; font-size: 0.68rem; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; border-radius: 2px; transition: background-color .2s, border-color .2s, color .2s; }
.kn-idxbtn:hover, .kn-idxbtn[aria-expanded="true"] { background: var(--c-accent); border-color: var(--c-accent); color: var(--c-on-accent); }
.kn-idxbtn__ic { display: grid; gap: 3px; width: 1.05rem; }
.kn-idxbtn__ic i { display: block; height: 1.5px; background: currentColor; transform-origin: 0 50%; transition: transform .35s var(--ease), opacity .2s; }
.kn-idxbtn__ic i:nth-child(2) { width: 70%; }
.kn-idxbtn[aria-expanded="true"] .kn-idxbtn__ic i:nth-child(1) { transform: translate(1px, -1px) rotate(24deg); }
.kn-idxbtn[aria-expanded="true"] .kn-idxbtn__ic i:nth-child(2) { opacity: 0; }
.kn-idxbtn[aria-expanded="true"] .kn-idxbtn__ic i:nth-child(3) { transform: translate(1px, 1px) rotate(-24deg); }
@media (min-width: 1100px) { .kn-index { display: block; } .kn-bar__cta { display: inline-flex; } }
@media (min-width: 1480px) { .kn-bar__tel { display: inline-flex; } }
@media (max-width: 1099.98px) { .kn-bar__act { gap: 0.6rem; } }
@media (max-width: 420px) { .kn-logo__txt { font-size: 1.25rem; letter-spacing: 0.12em; } .kn-logo__mark { width: 2.2rem; height: 2.2rem; } .kn-idxbtn { padding-inline: 0.7rem; } }

/* ── içindekiler sayfası (kâğıt gibi iner / yükselir) ───────────────── */
.kn-sheet { position: fixed; z-index: 190; left: 0; right: 0; top: var(--bar-h); max-height: calc(100dvh - var(--bar-h)); overflow-y: auto; overscroll-behavior: contain; background: var(--c-bg); color: var(--c-ink); border-bottom: 3px double var(--c-ink); box-shadow: 0 40px 60px -30px rgba(0, 0, 0, 0.8); clip-path: inset(0 0 100% 0); visibility: hidden; transition: clip-path .6s var(--ease), visibility 0s .6s; }
.kn-sheet::before { content: ""; position: absolute; inset: 0; background: var(--grain); opacity: 0.07; mix-blend-mode: multiply; pointer-events: none; }
.kn-sheet.is-open { clip-path: inset(0 0 0 0); visibility: visible; transition: clip-path .6s var(--ease), visibility 0s; }
.kn-sheet__paper { position: relative; max-width: var(--wrap); margin-inline: auto; padding: clamp(1.4rem, 1rem + 2vw, 2.6rem) var(--gut) clamp(1.8rem, 1.2rem + 3vw, 3.2rem); }
.kn-sheet__head { display: flex; align-items: center; justify-content: space-between; padding-bottom: 0.9rem; border-bottom: var(--rule); margin-bottom: clamp(1.2rem, 1rem + 1.5vw, 2.2rem); }
.kn-sheet__title { font-family: var(--f-d); font-weight: 700; font-size: 1.9rem; display: flex; gap: 0.6rem; align-items: baseline; }
.kn-sheet__title span { color: var(--c-accent-ink); }
.kn-sheet__x { width: 2.6rem; height: 2.6rem; display: grid; place-items: center; border: 1px solid var(--c-ink); border-radius: 2px; transition: background-color .2s, color .2s, transform .35s var(--ease); }
.kn-sheet__x:hover { background: var(--c-ink); color: var(--c-bg); transform: rotate(90deg); }
.kn-sheet__cols { display: grid; gap: clamp(1.6rem, 1rem + 2.4vw, 3rem); }
@media (min-width: 900px) { .kn-sheet__cols { grid-template-columns: 1.5fr 1fr 1fr; } }
.kn-sheet__h { font-size: 0.66rem; font-weight: 700; letter-spacing: 0.2em; text-transform: uppercase; color: var(--c-accent-ink); padding-bottom: 0.6rem; margin-bottom: 0.8rem; border-bottom: 1px solid var(--c-border-2); }
.kn-leader { counter-reset: none; }
.kn-leader__li a { display: flex; align-items: baseline; gap: 0.7rem; padding: 0.55rem 0; transition: color .2s, padding-left .3s var(--ease); }
.kn-leader__li a:hover, .kn-leader__li a[aria-current] { color: var(--c-accent-ink); padding-left: 0.4rem; }
.kn-leader__n { font-size: 0.64rem; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; color: var(--c-accent-ink); min-width: 4.4rem; flex: none; }
.kn-leader__l { font-family: var(--f-d); font-weight: 700; font-size: clamp(1.5rem, 1.2rem + 1.4vw, 2.2rem); line-height: 1.1; }
.kn-leader__d { flex: 1; border-bottom: 2px dotted var(--c-border-2); transform: translateY(-0.35rem); min-width: 1rem; }
.kn-leader__li a::after { content: "→"; font-size: 1.1rem; color: var(--c-accent-ink); transform: translateX(-6px); opacity: 0; transition: opacity .25s, transform .3s var(--ease); }
.kn-leader__li a:hover::after, .kn-leader__li a[aria-current]::after { opacity: 1; transform: none; }
.kn-leader__sub { display: flex; flex-wrap: wrap; gap: 0.2rem 1rem; padding: 0 0 0.4rem 5.2rem; font-size: 0.9rem; }
.kn-fikra { display: grid; gap: 0.1rem; }
.kn-fikra a { display: grid; grid-template-columns: 1.5rem 1fr; padding: 0.42rem 0; line-height: 1.35; border-bottom: 1px dotted var(--c-border-2); transition: color .2s, padding-left .25s var(--ease); font-size: 0.96rem; }
.kn-fikra i { font-family: var(--f-d); font-style: italic; font-weight: 700; font-size: 1.15rem; color: var(--c-accent-ink); }
.kn-fikra a:hover { color: var(--c-accent-ink); padding-left: 0.3rem; }
.kn-sheet__addr { font-style: normal; line-height: 1.75; font-size: 0.96rem; }
.kn-sheet__addr a { color: var(--c-accent-ink); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.kn-sheet__cta { margin-top: 1.1rem; width: 100%; }
.kn-sheet__note { margin-top: 1rem; font-size: 0.78rem; line-height: 1.55; color: var(--c-muted); font-style: italic; border-top: 1px solid var(--c-border-2); padding-top: 0.8rem; }
.kn-scrim { position: fixed; inset: var(--bar-h) 0 0 0; z-index: 180; background: color-mix(in srgb, var(--c-contrast) 62%, transparent); opacity: 0; visibility: hidden; transition: opacity .4s, visibility 0s .4s; }
.kn-scrim.is-open { opacity: 1; visibility: visible; transition-delay: 0s; }
.no-js .kn-sheet { position: static; clip-path: none; visibility: visible; max-height: none; box-shadow: none; }
.no-js .kn-idxbtn, .no-js .kn-sheet__x, .no-js .kn-dock { display: none; }
@media (max-width: 899.98px) {
    .kn-sheet { max-height: calc(100dvh - var(--bar-h)); height: calc(100dvh - var(--bar-h)); clip-path: inset(100% 0 0 0); border-bottom: 0; }
    .kn-leader__n { min-width: 3.9rem; font-size: 0.58rem; }
    .kn-leader__sub { padding-left: 4.6rem; }
}

/* ── telefon alt çubuğu ─────────────────────────────────────────────── */
.kn-dock { position: fixed; z-index: 170; left: 0; right: 0; bottom: 0; display: flex; background: var(--c-contrast); border-top: 1px solid color-mix(in srgb, var(--c-accent) 70%, transparent); padding-bottom: env(safe-area-inset-bottom); }
.kn-dock__a { flex: 1; display: flex; align-items: center; justify-content: center; gap: 0.5rem; min-height: 3.4rem; color: var(--c-on-contrast-strong); font-size: 0.68rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; padding-inline: 0.5rem; text-align: center; line-height: 1.2; }
.kn-dock__a + .kn-dock__a { border-left: 1px solid color-mix(in srgb, var(--c-on-contrast) 22%, transparent); }
.kn-dock__a--main { background: var(--c-accent); color: var(--c-on-accent); flex: 1.7; }
.kn-dock .icon { color: var(--c-accent); } .kn-dock__a--main .icon { color: var(--c-on-accent); }
@media (min-width: 1100px) { .kn-dock { display: none; } }
@media (max-width: 1099.98px) { body { padding-bottom: calc(3.4rem + env(safe-area-inset-bottom)); } .kn-fab { --cms-fab-bottom: 4.8rem; } .kn-fab .cms-fab { bottom: calc(4.8rem + env(safe-area-inset-bottom)); } }

/* ═══ SAYFA BAŞLIĞI ═════════════════════════════════════════════════════ */
.kn-ph { position: relative; background: var(--c-contrast); color: var(--c-on-contrast); overflow: hidden; isolation: isolate; padding: clamp(1.6rem, 1rem + 2.6vw, 3.4rem) 0 clamp(2.4rem, 1.4rem + 3.4vw, 4.6rem); }
.kn-ph::before { content: ""; position: absolute; inset: 0; z-index: -2; background: radial-gradient(48% 70% at 88% 0%, color-mix(in srgb, var(--c-accent) 15%, transparent), transparent 70%), repeating-linear-gradient(to bottom, transparent 0 47px, color-mix(in srgb, var(--c-on-contrast) 6%, transparent) 47px 48px); }
.kn-ph::after { content: ""; position: absolute; inset: 0; z-index: -1; background: var(--grain); opacity: 0.09; mix-blend-mode: screen; pointer-events: none; }
.kn-ph__num { position: absolute; right: clamp(-1rem, 2vw, 4rem); top: 50%; transform: translateY(-50%); z-index: -1; font-family: var(--f-d); font-weight: 700; font-size: clamp(12rem, 6rem + 24vw, 30rem); line-height: 0.75; color: transparent; -webkit-text-stroke: 1.5px color-mix(in srgb, var(--c-accent) 34%, transparent); user-select: none; pointer-events: none; }
.kn-ph__in { max-width: var(--wrap); margin-inline: auto; padding-inline: var(--gut); }
.kn-ph__kicker { margin-top: clamp(1.4rem, 1rem + 2vw, 2.6rem); }
.kn-ph__kicker span { display: inline-block; font-size: 0.7rem; font-weight: 700; letter-spacing: 0.2em; text-transform: uppercase; color: var(--c-accent); border: 1px solid color-mix(in srgb, var(--c-accent) 60%, transparent); padding: 0.32rem 0.7rem; }
.kn-ph__title { margin-top: 0.9rem; color: var(--c-on-contrast-strong); font-size: clamp(2.5rem, 1.5rem + 4.4vw, 5.6rem); line-height: 0.96; max-width: 18ch; }
.kn-ph__lede { margin-top: 1.1rem; max-width: 56ch; font-size: clamp(1.02rem, 0.98rem + 0.3vw, 1.2rem); line-height: 1.6; color: var(--c-on-contrast); }
.kn-ph__act { margin-top: 1.6rem; display: flex; flex-wrap: wrap; gap: 0.7rem; }
.kn-ph__rule { position: absolute; left: 0; right: 0; bottom: 0; height: 6px; border-top: 1px solid color-mix(in srgb, var(--c-accent) 55%, transparent); border-bottom: 1px solid color-mix(in srgb, var(--c-accent) 30%, transparent); }
.kn-ph--law .kn-ph__title::after, .kn-ph--tarife .kn-ph__title::after { content: ""; display: block; width: 5.5rem; height: 5px; margin-top: 1.1rem; border-block: 1px solid var(--c-accent); }
.kn-ph--roster .kn-ph__title::after { content: ""; display: block; width: 5.5rem; height: 5px; margin-top: 1.1rem; border-block: 1px solid var(--c-accent); }
.kn-ph--yazi .kn-ph__title { max-width: 24ch; font-size: clamp(2.2rem, 1.4rem + 3.4vw, 4.4rem); }
.kn-ph--belge .kn-ph__title, .kn-ph--soru .kn-ph__title { max-width: 22ch; }
.kn-crumbs { display: flex; flex-wrap: wrap; align-items: center; gap: 0.15rem 0.55rem; font-size: 0.74rem; letter-spacing: 0.08em; text-transform: uppercase; color: color-mix(in srgb, var(--c-on-contrast) 80%, transparent); }
.kn-crumbs a:hover { color: var(--c-accent); }
.kn-crumbs span[aria-current] { color: var(--c-on-contrast-strong); max-width: 32ch; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* ═══ BELGE DÜZENİ: sol yapışkan içindekiler + gövde ═════════════════ */
.kn-doc { display: grid; grid-template-columns: minmax(0, 1fr); gap: clamp(1.4rem, 1rem + 2vw, 3rem); max-width: var(--wrap); margin-inline: auto; padding: clamp(1.4rem, 1rem + 2vw, 3rem) var(--gut) clamp(3rem, 2rem + 4vw, 5.5rem); }
.kn-doc__main { min-width: 0; }
.kn-toc { position: sticky; top: var(--bar-h); z-index: 40; margin-inline: calc(var(--gut) * -1); background: var(--c-bg); border-bottom: 1px solid var(--c-border-2); }
.kn-toc__box { display: flex; gap: 0.3rem; overflow-x: auto; padding: 0.55rem var(--gut); scrollbar-width: none; align-items: center; }
.kn-toc__box::-webkit-scrollbar { display: none; }
.kn-toc__h, .kn-toc__site, .kn-toc__cta { display: none; }
.kn-toc__list { display: flex; gap: 0.3rem; flex: none; }
.kn-toc__list a { display: flex; gap: 0.45rem; align-items: baseline; white-space: nowrap; padding: 0.4rem 0.75rem; border: 1px solid var(--c-border-2); font-size: 0.8rem; font-weight: 600; background: var(--c-soft); border-radius: 2px; }
.kn-toc__list i { font-family: var(--f-d); font-style: italic; font-weight: 700; color: var(--c-accent-ink); font-size: 1.05em; }
.kn-toc__list a.is-on { background: var(--c-ink); color: var(--c-bg); border-color: var(--c-ink); } .kn-toc__list a.is-on i { color: var(--c-accent-soft); }
.kn-toc:not(:has(.kn-toc__list)) { display: none; }
@media (min-width: 1024px) {
    .kn-doc { grid-template-columns: 15.5rem minmax(0, 1fr); align-items: start; }
    .kn-toc { top: calc(var(--bar-h) + 1.4rem); margin: 0; background: transparent; border: 0; align-self: start; max-height: calc(100dvh - var(--bar-h) - 2.4rem); overflow: auto; scrollbar-width: thin; }
    .kn-toc:not(:has(.kn-toc__list)) { display: block; }
    .kn-toc__box { display: block; overflow: visible; padding: 1.1rem 1.1rem 1.2rem; background: var(--c-soft); border: 1px solid var(--c-border-2); border-top: 3px double var(--c-ink); position: relative; }
    .kn-toc__box::after { content: ""; position: absolute; inset: 0; background: var(--grain); opacity: 0.06; mix-blend-mode: multiply; pointer-events: none; }
    .kn-toc__h, .kn-toc__site, .kn-toc__cta { display: block; }
    .kn-toc__h { font-size: 0.64rem; font-weight: 700; letter-spacing: 0.2em; text-transform: uppercase; color: var(--c-accent-ink); margin-bottom: 0.6rem; }
    .kn-toc__h span { font-family: var(--f-d); font-size: 1.1rem; margin-right: 0.2rem; }
    .kn-toc__h--site { margin-top: 1.2rem; padding-top: 0.9rem; border-top: 1px solid var(--c-border-2); }
    .kn-toc__box > .kn-toc__h--site:first-child { margin-top: 0; padding-top: 0; border-top: 0; }
    .kn-toc__list { display: grid; gap: 0; }
    .kn-toc__list a, .kn-toc__site a { display: grid; grid-template-columns: 1.4rem 1fr; padding: 0.42rem 0.2rem 0.42rem 0.5rem; border: 0; background: none; font-size: 0.86rem; line-height: 1.3; border-left: 2px solid var(--c-border-2); white-space: normal; transition: padding-left .25s var(--ease); }
    .kn-toc__list a:hover, .kn-toc__site a:hover { background: color-mix(in srgb, var(--c-accent-soft) 24%, transparent); padding-left: 0.75rem; }
    .kn-toc__list a.is-on { background: color-mix(in srgb, var(--c-accent-soft) 38%, transparent); color: var(--c-ink); border-left-color: var(--c-accent-dark); }
    .kn-toc__list a.is-on i { color: var(--c-accent-ink); }
    .kn-toc__site a i { font-family: var(--f-d); font-style: italic; font-weight: 700; color: var(--c-accent-ink); }
    .kn-toc__site a[aria-current] { border-left-color: var(--c-ink); font-weight: 700; background: color-mix(in srgb, var(--c-ink) 6%, transparent); }
    .kn-toc__cta { margin-top: 1.1rem; background: var(--c-ink); color: var(--c-bg); text-align: center; padding: 0.7rem 0.8rem; font-size: 0.66rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; position: relative; z-index: 1; transition: background-color .2s; }
    .kn-toc__cta:hover { background: var(--c-accent-dark); color: var(--c-on-accent); }
}
@media (min-width: 1024px) and (max-width: 1279.98px) { .kn-doc--3 > .kn-card, .kn-doc--3 > .kn-slip, .kn-doc--3 > .kn-antet { grid-column: 2; } .kn-doc--3 > .kn-toc { grid-row: 1 / span 2; } }
@media (min-width: 1280px) { .kn-doc--3 { grid-template-columns: 15.5rem minmax(0, 1fr) 20rem; } }

/* ═══ RESMÎ ALT BİLGİ ════════════════════════════════════════════════ */
.kn-foot { background: var(--c-contrast); color: var(--c-on-contrast); padding-top: clamp(2.6rem, 1.6rem + 4vw, 5rem); position: relative; border-top: 1px solid color-mix(in srgb, var(--c-accent) 55%, transparent); }
.kn-foot::before { content: ""; position: absolute; inset: 0; background: var(--grain); opacity: 0.07; mix-blend-mode: screen; pointer-events: none; }
.kn-foot__in { position: relative; max-width: var(--wrap); margin-inline: auto; padding-inline: var(--gut); }
.kn-foot__sheet { position: relative; background: var(--c-bg); color: var(--c-ink-soft); border: 3px double var(--c-ink); outline: 1px solid color-mix(in srgb, var(--c-accent) 60%, transparent); outline-offset: 5px; padding: clamp(1.4rem, 1rem + 2.4vw, 3rem); box-shadow: 0 40px 60px -40px rgba(0, 0, 0, 0.9); }
.kn-foot__sheet::after { content: ""; position: absolute; inset: 0; background: var(--grain); opacity: 0.07; mix-blend-mode: multiply; pointer-events: none; }
.kn-foot__stamp { position: absolute; right: clamp(0.8rem, 3vw, 2.4rem); top: clamp(0.4rem, 1vw, 1rem); font-family: var(--f-d); font-weight: 700; font-size: clamp(6rem, 4rem + 8vw, 11rem); line-height: 1; color: transparent; -webkit-text-stroke: 1.5px color-mix(in srgb, var(--c-accent-dark) 40%, transparent); transform: rotate(-9deg); pointer-events: none; user-select: none; }
.kn-foot__label { font-size: 0.68rem; font-weight: 700; letter-spacing: 0.22em; text-transform: uppercase; color: var(--c-accent-ink); }
.kn-foot__notice { position: relative; margin-top: 0.7rem; max-width: 62ch; font-family: var(--f-d); font-weight: 700; font-size: clamp(1.25rem, 1.05rem + 0.9vw, 1.7rem); line-height: 1.35; color: var(--c-ink); }
.kn-foot__grid { position: relative; z-index: 1; display: grid; gap: 2rem; margin-top: clamp(1.6rem, 1rem + 2vw, 2.8rem); padding-top: 1.6rem; border-top: 1px solid var(--c-border-2); }
@media (min-width: 760px) { .kn-foot__grid { grid-template-columns: 1.15fr 1fr 1.1fr 1.3fr; gap: 2.2rem; } }
.kn-foot__brand { font-family: var(--f-d); font-weight: 700; font-size: 1.7rem; letter-spacing: 0.14em; color: var(--c-ink); }
.kn-foot__st { margin-top: 0.5rem; font-size: 0.92rem; line-height: 1.6; }
.kn-foot__soc { display: flex; gap: 0.5rem; margin-top: 0.9rem; }
.kn-foot__soc a { display: grid; place-items: center; width: 2.2rem; height: 2.2rem; border: 1px solid var(--c-ink); border-radius: 2px; transition: background-color .2s, color .2s; }
.kn-foot__soc a:hover { background: var(--c-ink); color: var(--c-bg); }
.kn-foot__h { font-size: 0.64rem; font-weight: 700; letter-spacing: 0.2em; text-transform: uppercase; color: var(--c-accent-ink); margin-bottom: 0.7rem; }
.kn-foot__idx a, .kn-foot__ul a { display: flex; gap: 0.6rem; align-items: baseline; padding: 0.28rem 0; font-size: 0.94rem; transition: color .2s, padding-left .25s var(--ease); }
.kn-foot__idx i { font-family: var(--f-d); font-style: italic; font-weight: 700; color: var(--c-accent-ink); min-width: 1rem; }
.kn-foot__idx a:hover, .kn-foot__ul a:hover { color: var(--c-accent-ink); padding-left: 0.3rem; }
.kn-foot__dl { display: grid; gap: 0.45rem; }
.kn-foot__dl div { display: grid; grid-template-columns: 4.2rem 1fr; gap: 0.5rem; font-size: 0.9rem; line-height: 1.5; }
.kn-foot__dl dt { font-size: 0.6rem; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; color: var(--c-muted); padding-top: 0.3rem; }
.kn-foot__dl a { color: var(--c-accent-ink); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
.kn-foot__bar { position: relative; z-index: 1; margin-top: 1.8rem; padding-top: 1rem; border-top: 3px double var(--c-border-2); font-size: 0.82rem; line-height: 1.6; color: var(--c-muted); font-style: italic; max-width: 100ch; }
.kn-foot__bar span { font-style: normal; color: var(--c-accent-ink); font-weight: 700; margin-right: 0.3rem; }
.kn-foot__base { display: flex; flex-wrap: wrap; gap: 0.6rem 2rem; justify-content: space-between; padding-block: 1.6rem; font-size: 0.8rem; color: color-mix(in srgb, var(--c-on-contrast) 85%, transparent); }
.kn-foot__base nav { display: flex; flex-wrap: wrap; gap: 0.3rem 1.4rem; }
.kn-foot__base a:hover { color: var(--c-accent); }

/* ═══ ANA SAYFA ═════════════════════════════════════════════════════════ */
/* hero: dosya kapağı + mühür */
.kn-hero { position: relative; isolation: isolate; overflow: hidden; background: var(--c-contrast); color: var(--c-on-contrast); padding-top: clamp(2.2rem, 1.2rem + 4vw, 4.6rem); padding-bottom: clamp(2.4rem, 1.6rem + 3vw, 4.4rem); }
.kn-hero::before { content: ""; position: absolute; inset: 0; z-index: -2; background: radial-gradient(46% 62% at 80% 12%, color-mix(in srgb, var(--c-accent) 17%, transparent), transparent 70%), radial-gradient(40% 50% at 4% 100%, color-mix(in srgb, var(--c-secondary) 14%, transparent), transparent 70%), repeating-linear-gradient(to bottom, transparent 0 55px, color-mix(in srgb, var(--c-on-contrast) 6%, transparent) 55px 56px); }
.kn-hero::after { content: ""; position: absolute; inset: 0; z-index: -1; background: var(--grain); opacity: 0.1; mix-blend-mode: screen; pointer-events: none; }
.kn-hero__para { position: absolute; right: -1vw; top: -2.4rem; z-index: -1; font-family: var(--f-d); font-weight: 700; font-size: clamp(20rem, 8rem + 38vw, 52rem); line-height: 0.8; color: transparent; -webkit-text-stroke: 1.5px color-mix(in srgb, var(--c-accent) 26%, transparent); pointer-events: none; user-select: none; }
.kn-hero__title { margin-top: 1.2rem; font-size: clamp(2.7rem, 1.1rem + 6.4vw, 7rem); line-height: 0.93; letter-spacing: -0.012em; color: var(--c-on-contrast-strong); max-width: 21ch; }
.kn-w { display: inline-block; overflow: hidden; vertical-align: top; padding: 0 0.1em 0.1em 0; margin-bottom: -0.1em; }
.kn-w > span { display: inline-block; }
.kn-w:nth-child(3n) > span { font-style: italic; color: var(--c-accent-soft); }
.kn-file { position: relative; margin-top: clamp(1.8rem, 1rem + 3vw, 3.2rem); }
.kn-tabs { display: flex; align-items: flex-end; gap: 0.3rem; padding: 0 0 0 clamp(0rem, 3vw, 2rem); position: relative; z-index: 1; }
.kn-tab { display: block; padding: 0.7rem clamp(0.7rem, 0.3rem + 1.4vw, 1.4rem) 0.6rem; background: color-mix(in srgb, var(--c-accent-soft) 52%, var(--c-surface-2)); color: color-mix(in srgb, var(--c-ink) 90%, var(--c-accent-ink)); font-size: 0.7rem; font-weight: 700; letter-spacing: 0.13em; text-transform: uppercase; border-radius: 6px 6px 0 0; box-shadow: inset 0 -6px 8px -8px rgba(0, 0, 0, 0.5); white-space: nowrap; line-height: 1.2; transition: background .2s, transform .2s; }
a.kn-tab:hover { background: var(--c-accent-soft); transform: translateY(-3px); }
.kn-tab.is-on { background: var(--c-bg); color: var(--c-ink); padding-block: 0.85rem 0.75rem; margin-bottom: -1px; box-shadow: none; position: relative; z-index: 2; }
.kn-file__sheet { position: relative; background: var(--c-bg); color: var(--c-ink-soft); border-radius: 0 3px 3px 3px; padding: clamp(1.2rem, 0.8rem + 2vw, 2.4rem); box-shadow: 0 50px 70px -40px rgba(0, 0, 0, 0.85), 0 0 0 1px rgba(0, 0, 0, 0.25); }
.kn-file__sheet::after { content: ""; position: absolute; inset: 0; background: var(--grain); opacity: 0.07; pointer-events: none; mix-blend-mode: multiply; border-radius: inherit; }
.kn-file__no { font-size: 0.68rem; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; color: var(--c-muted); padding-bottom: 0.8rem; margin-bottom: clamp(1rem, 0.6rem + 1.4vw, 1.8rem); border-bottom: 1px solid var(--c-border-2); padding-right: clamp(5.4rem, 16vw, 9.5rem); }
.kn-file__grid { display: grid; gap: clamp(1.4rem, 1rem + 2vw, 2.6rem); position: relative; z-index: 1; }
@media (min-width: 980px) { .kn-file__grid { grid-template-columns: 1.1fr 0.9fr; } }
.kn-file__sub { font-size: clamp(1.1rem, 1rem + 0.5vw, 1.35rem); line-height: 1.5; color: var(--c-ink); max-width: 38ch; }
.kn-chips { margin-top: 1.1rem; display: grid; gap: 0.5rem; }
.kn-chips li { display: flex; align-items: center; gap: 0.7rem; font-size: 0.95rem; font-weight: 500; color: var(--c-ink); }
.kn-chips__box { width: 1.05rem; height: 1.05rem; border: 1.5px solid var(--c-ink); position: relative; flex: none; }
.kn-chips__box::after { content: ""; position: absolute; left: 3px; top: -3px; width: 5px; height: 10px; border: solid var(--c-accent-ink); border-width: 0 2.5px 2.5px 0; transform: rotate(40deg); }
.kn-file__actions { margin-top: 1.6rem; display: flex; flex-wrap: wrap; gap: 0.7rem; }
.kn-file__sheet .kn-btn--line:hover { --bg: var(--c-ink); --fg: var(--c-bg); }
.kn-kunye { margin-top: 1.8rem; display: flex; gap: clamp(1rem, 0.4rem + 2.6vw, 2.2rem); flex-wrap: wrap; padding-top: 1.1rem; border-top: var(--rule); }
.kn-kunye dd { font-family: var(--f-d); font-weight: 700; font-size: clamp(1.9rem, 1.5rem + 1.4vw, 2.7rem); line-height: 1; color: var(--c-ink); }
.kn-kunye dt { margin-top: 0.3rem; font-size: 0.66rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--c-muted); }
.kn-form { background: var(--c-soft); border: 1px solid var(--c-border-2); padding: clamp(1.1rem, 0.8rem + 1.4vw, 1.8rem); position: relative; align-self: start; }
.kn-form::before { content: ""; position: absolute; left: 50%; top: -0.85rem; width: 3.2rem; height: 1.3rem; transform: translateX(-50%); border: 2px solid var(--c-ink-soft); border-radius: 3px 3px 0 0; background: var(--c-surface-2); }
.kn-form__live { display: flex; align-items: center; gap: 0.5rem; font-size: 0.68rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--c-accent-ink); margin-top: 0.4rem; }
.kn-form__dot { width: 7px; height: 7px; background: var(--c-accent-ink); transform: rotate(45deg); }
.kn-form__title { font-size: 1.9rem; margin: 0.35rem 0 1rem; }
.kn-form__note { margin-top: 0.8rem; font-size: 0.78rem; line-height: 1.5; color: var(--c-muted); }
.kn-notice { position: relative; z-index: 1; margin-top: clamp(1.2rem, 1rem + 1vw, 1.8rem); padding-top: 0.9rem; border-top: 1px solid var(--c-border-2); font-size: 0.78rem; line-height: 1.6; color: var(--c-muted); font-style: italic; max-width: 100ch; }
.kn-stamp { position: absolute; z-index: 2; top: clamp(0.5rem, 0.2rem + 1vw, 1.1rem); right: clamp(0.6rem, 0.2rem + 1.6vw, 2rem); width: clamp(92px, 10.5vw, 172px); color: color-mix(in srgb, var(--c-accent-ink) 94%, var(--c-ink)); transform: rotate(-9deg); mix-blend-mode: multiply; opacity: 0.94; pointer-events: none; }
.kn-stamp svg { width: 100%; height: auto; overflow: visible; } .kn-stamp text { font-family: var(--f-b); } .kn-stamp .kn-stamp__s { font-family: var(--f-d); }

/* maddeler (ana sayfa satırları) */
.kn-mrs { border-top: 1px solid var(--c-ink); }
.kn-mr { border-bottom: 1px solid var(--c-border-2); position: relative; }
.kn-mr__a { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.4rem 1.4rem; align-items: start; padding: clamp(1.2rem, 0.9rem + 1.4vw, 2rem) 0.2rem; position: relative; overflow: hidden; isolation: isolate; }
.kn-mr__a::before { content: ""; position: absolute; inset: 0; z-index: -1; background: var(--c-accent); transform: scaleY(0); transform-origin: 50% 0; transition: transform .5s var(--ease); }
.kn-mr__a:hover::before, .kn-mr__a:focus-visible::before { transform: scaleY(1); }
.kn-mr__a:hover, .kn-mr__a:focus-visible { color: var(--c-on-accent); padding-inline: 1rem; }
.kn-mr__a { transition: padding .4s var(--ease); }
.kn-mr__no { display: grid; justify-items: center; min-width: 4.4rem; }
.kn-mr__no small { font-size: 0.6rem; font-weight: 700; letter-spacing: 0.2em; text-transform: uppercase; color: var(--c-accent-ink); }
.kn-mr__no b { font-family: var(--f-d); font-weight: 700; font-size: clamp(3.4rem, 2.4rem + 3.4vw, 5.6rem); line-height: 0.85; color: transparent; -webkit-text-stroke: 1.4px var(--c-ink); transition: color .3s; }
.kn-mr__a:hover .kn-mr__no b { color: var(--c-on-accent); -webkit-text-stroke-color: var(--c-on-accent); }
.kn-mr__a:hover .kn-mr__no small, .kn-mr__a:hover .kn-mr__f i { color: var(--c-on-accent); }
.kn-mr__main { display: grid; gap: 0.5rem; min-width: 0; }
.kn-mr__t { font-family: var(--f-d); font-weight: 700; font-size: clamp(1.7rem, 1.3rem + 1.6vw, 2.6rem); line-height: 1.05; color: var(--c-ink); }
.kn-mr__t em { font-family: var(--f-b); font-style: normal; font-size: 0.6rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; border: 1px solid currentColor; padding: 0.15rem 0.5rem; margin-left: 0.7rem; vertical-align: middle; }
.kn-mr__a:hover .kn-mr__t, .kn-mr__a:hover .kn-mr__s, .kn-mr__a:hover .kn-mr__f, .kn-mr__a:hover .kn-mr__meta, .kn-mr__a:hover .kn-mr__meta b { color: var(--c-on-accent); }
.kn-mr__s { max-width: 56ch; color: var(--c-ink-soft); }
.kn-mr__f { display: grid; gap: 0.1rem 1.4rem; font-size: 0.88rem; color: var(--c-muted); margin-top: 0.4rem; }
.kn-mr__f i { font-family: var(--f-d); font-weight: 700; font-style: italic; color: var(--c-accent-ink); font-size: 1.1em; }
.kn-mr__meta { grid-column: 2; display: flex; flex-wrap: wrap; align-items: baseline; gap: 0.2rem 0.9rem; color: var(--c-muted); font-size: 0.82rem; margin-top: 0.4rem; }
.kn-mr__meta small { font-size: 0.6rem; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; }
.kn-mr__meta b { font-family: var(--f-d); font-weight: 700; font-size: 1.7rem; color: var(--c-ink); line-height: 1; }
.kn-mr__meta i { font-style: normal; }
.kn-mr__go { display: none; }
.kn-mr__img { display: none; }
@media (min-width: 900px) {
    .kn-mr__a { grid-template-columns: 6.4rem minmax(0, 1fr) 14rem; gap: 2rem; align-items: center; }
    .kn-mr__f { grid-template-columns: 1fr 1fr; max-width: 52rem; }
    .kn-mr__meta { grid-column: auto; flex-direction: column; align-items: flex-end; text-align: right; gap: 0.2rem; margin: 0; position: relative; }
    .kn-mr__go { display: grid; place-items: center; width: 2.4rem; height: 2.4rem; border: 1px solid currentColor; border-radius: 50%; margin-top: 0.7rem; transition: transform .4s var(--ease); }
    .kn-mr__a:hover .kn-mr__go { transform: translateX(6px) rotate(0); }
}
@media (min-width: 1240px) {
    .kn-mr__img { display: block; position: absolute; right: 17rem; top: 50%; width: 9.5rem; height: auto; aspect-ratio: 4/3; object-fit: cover; border: 4px solid var(--c-bg); box-shadow: 0 16px 28px -14px rgba(0, 0, 0, 0.6); transform: translateY(-50%) rotate(3deg) scale(.96); opacity: 0; transition: opacity .35s, transform .5s var(--ease); pointer-events: none; z-index: 1; }
    .kn-mr__a:hover .kn-mr__img { opacity: 1; transform: translateY(-50%) rotate(-3deg) scale(1); }
}

/* süreç çizelgesi */
.kn-evre { display: grid; gap: 1.6rem; position: relative; counter-reset: ev; padding-left: 2rem; margin-bottom: clamp(3rem, 2rem + 4vw, 6rem); }
.kn-evre::before { content: ""; position: absolute; left: 7px; top: 8px; bottom: 8px; width: 2px; background: var(--c-border-2); }
.kn-evre::after { content: ""; position: absolute; left: 7px; top: 8px; bottom: 8px; width: 2px; background: var(--c-accent-dark); transform: scaleY(0); transform-origin: 50% 0; transition: transform 1.6s var(--ease) .2s; }
.kn-evre.is-in::after { transform: scaleY(1); }
.kn-evre__item { position: relative; display: grid; gap: 0.2rem; }
.kn-evre__dot { position: absolute; left: -2rem; top: 0.4rem; width: 16px; height: 16px; background: var(--c-bg); border: 2px solid var(--c-accent-dark); transform: rotate(45deg); }
.kn-evre__no { font-family: var(--f-d); font-weight: 700; font-size: 1.1rem; color: var(--c-accent-ink); } .kn-evre__no small { font-family: var(--f-b); font-size: 0.6rem; letter-spacing: 0.18em; text-transform: uppercase; }
.kn-evre__when { font-size: 0.7rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--c-muted); }
.kn-evre__t { font-size: clamp(1.5rem, 1.2rem + 1vw, 2rem); margin-top: 0.2rem; }
.kn-evre__p { max-width: 42ch; font-size: 0.97rem; }
@media (min-width: 900px) {
    .kn-evre { grid-template-columns: repeat(4, 1fr); gap: 1.6rem; padding: 2.4rem 0 0; }
    .kn-evre::before, .kn-evre::after { left: 0; right: 0; top: 7px; bottom: auto; width: auto; height: 2px; }
    .kn-evre::after { transform: scaleX(0); transform-origin: 0 50%; }
    .kn-evre.is-in::after { transform: scaleX(1); }
    .kn-evre__dot { left: 0; top: -2.4rem; }
}
/* belge kontrol listesi */
.kn-docs { display: grid; gap: clamp(1.4rem, 1rem + 2vw, 3rem); }
@media (min-width: 900px) { .kn-docs { grid-template-columns: 0.85fr 1.15fr; align-items: start; } }
.kn-docs__t { font-size: var(--t-3); margin: 0.5rem 0 0.8rem; }
.kn-docs__sub { max-width: 40ch; color: var(--c-muted); }
.kn-docs__tabs { display: flex; flex-wrap: wrap; gap: 0.4rem; margin-top: 1.4rem; }
.kn-docs__tab { padding: 0.55rem 0.9rem; border: 1px solid var(--c-ink); font-size: 0.7rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; border-radius: 2px; transition: background-color .2s, color .2s; }
.kn-docs__tab:hover { background: var(--c-surface-2); }
.kn-docs__tab.is-on { background: var(--c-ink); color: var(--c-bg); }
.kn-docs__sheet { position: relative; background: var(--c-soft); border: 1px solid var(--c-border-2); padding: 2.2rem clamp(1.1rem, 0.6rem + 2vw, 2.2rem) 1.4rem; box-shadow: 8px 8px 0 -1px var(--c-surface-2), 8px 8px 0 0 var(--c-border-2); background-image: repeating-linear-gradient(to bottom, transparent 0 2.9rem, color-mix(in srgb, var(--c-border-2) 55%, transparent) 2.9rem calc(2.9rem + 1px)); }
.kn-docs__clip { position: absolute; left: 50%; top: -0.8rem; width: 3rem; height: 1.6rem; transform: translateX(-50%); border: 2.5px solid var(--c-ink-soft); border-radius: 5px; background: var(--c-surface); }
.kn-docs__h { font-size: 1.6rem; margin-bottom: 0.5rem; }
.kn-check li + li { border-top: 1px dotted var(--c-border-2); }
.kn-check label { display: flex; align-items: flex-start; gap: 0.8rem; padding: 0.68rem 0; cursor: pointer; line-height: 1.4; }
.kn-check input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.kn-check__box { width: 1.25rem; height: 1.25rem; border: 1.5px solid var(--c-ink); flex: none; margin-top: 0.1rem; position: relative; background: var(--c-bg); }
.kn-check__box::after { content: ""; position: absolute; left: 4px; top: -4px; width: 7px; height: 14px; border: solid var(--c-accent-ink); border-width: 0 3px 3px 0; transform: rotate(40deg) scale(0); transition: transform .3s cubic-bezier(.3, 1.6, .5, 1); }
.kn-check input:checked + .kn-check__box::after { transform: rotate(40deg) scale(1); }
.kn-check input:checked ~ .kn-check__txt { color: var(--c-muted); text-decoration: line-through; text-decoration-thickness: 1px; }
.kn-check input:focus-visible + .kn-check__box { box-shadow: var(--focus); }
.kn-docs__foot { display: flex; justify-content: space-between; align-items: center; margin-top: 0.8rem; padding-top: 0.9rem; border-top: var(--rule); }
.kn-docs__count { font-family: var(--f-d); font-weight: 700; font-size: 1.5rem; color: var(--c-ink); }
.kn-docs__note { margin-top: 0.7rem; font-size: 0.78rem; color: var(--c-muted); font-style: italic; }
@media print { body.kn-printing > *:not(main) { display: none !important; } body.kn-printing .kn-home > *:not(.kn-process), body.kn-printing .kn-process > .kn-wrap > :not(.kn-docs) { display: none !important; } body.kn-printing .kn-docs__tabs, body.kn-printing .kn-linkbtn { display: none; } body.kn-printing .kn-docs__panel[hidden] { display: none !important; } }

/* büro ilkeleri (koyu) */
.kn-ilke { background: var(--c-contrast); color: var(--c-on-contrast); padding-block: clamp(3.4rem, 2rem + 5vw, 6.5rem); position: relative; overflow: hidden; }
.kn-ilke::before { content: ""; position: absolute; inset: 0; background: var(--grain); opacity: 0.09; mix-blend-mode: screen; pointer-events: none; }
.kn-ilke__grid { position: relative; display: grid; gap: clamp(1.8rem, 1rem + 3vw, 4rem); }
@media (min-width: 960px) { .kn-ilke__grid { grid-template-columns: 0.8fr 1.6fr; align-items: start; } .kn-ilke__head { position: sticky; top: calc(var(--bar-h) + 2rem); } }
.kn-ilke .kn-kicker { color: var(--c-accent); }
.kn-ilke__t { color: var(--c-on-contrast-strong); font-size: var(--t-4); margin-top: 0.8rem; max-width: 10ch; }
.kn-ilke__rule { display: block; width: 6rem; height: 6px; border-block: 1px solid var(--c-accent); margin-top: 1.4rem; }
.kn-ilke__list { display: grid; gap: 0; counter-reset: il; }
@media (min-width: 640px) { .kn-ilke__list { grid-template-columns: 1fr 1fr; column-gap: clamp(1.6rem, 1rem + 2.4vw, 3.4rem); } }
.kn-ilke__item { display: grid; grid-template-columns: 3.2rem 1fr; gap: 0.2rem 0.9rem; padding-block: 1.4rem; border-top: 1px solid color-mix(in srgb, var(--c-on-contrast) 24%, transparent); }
.kn-ilke__no { grid-row: span 2; font-family: var(--f-d); font-style: italic; font-weight: 700; font-size: 2.4rem; line-height: 0.9; color: var(--c-accent); }
.kn-ilke__h { font-size: 1.45rem; color: var(--c-on-contrast-strong); line-height: 1.12; }
.kn-ilke__p { font-size: 0.94rem; line-height: 1.6; color: var(--c-on-contrast); grid-column: 2; }

/* ekip: imza blokları */
.kn-imzas { display: grid; gap: clamp(1.6rem, 1rem + 2vw, 2.6rem) clamp(1.4rem, 1rem + 2vw, 3rem); }
@media (min-width: 700px) { .kn-imzas { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1100px) { .kn-imzas { grid-template-columns: repeat(3, 1fr); } .kn-imzas > :nth-child(3n+2) { margin-top: 2.4rem; } }
.kn-imza { position: relative; padding-top: 0.4rem; display: grid; align-content: start; gap: 0.35rem; }
.kn-imza__tab { font-size: 0.62rem; font-weight: 700; letter-spacing: 0.2em; text-transform: uppercase; color: var(--c-accent-ink); }
.kn-imza__name { font-family: var(--f-d); font-style: italic; font-weight: 700; font-size: clamp(2.1rem, 1.6rem + 1.8vw, 3.2rem); line-height: 1; }
.kn-imza__name a { background: linear-gradient(var(--c-accent-soft), var(--c-accent-soft)) 0 92% / 0 38% no-repeat; transition: background-size .5s var(--ease); }
.kn-imza:hover .kn-imza__name a, .kn-imza__name a:focus-visible { background-size: 100% 38%; }
.kn-imza__line { display: block; height: 1px; margin: 0.35rem 0 0.2rem; background: var(--c-ink); position: relative; }
.kn-imza__line::after { content: "×"; position: absolute; left: 0; top: -1.1rem; font-size: 0.9rem; color: var(--c-accent-ink); }
.kn-imza__role { font-weight: 600; color: var(--c-ink); font-size: 0.92rem; }
.kn-imza__sum { font-size: 0.92rem; color: var(--c-ink-soft); max-width: 40ch; }
.kn-imza__days { margin-top: 0.3rem; font-size: 0.86rem; font-weight: 600; color: var(--c-ink); } .kn-imza__days small { display: block; font-size: 0.58rem; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; color: var(--c-muted); }

/* tarife cetveli */
.kn-tarife { border-top: var(--rule); }
.kn-tarife__cap { display: none; }
.kn-tf { display: grid; gap: 0.9rem; padding: clamp(1.2rem, 0.9rem + 1.2vw, 1.8rem) 0.4rem; border-bottom: 1px solid var(--c-border-2); position: relative; }
.kn-tf--on { background: linear-gradient(90deg, color-mix(in srgb, var(--c-accent-soft) 34%, transparent), transparent 70%); }
.kn-tf--on::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 5px; background: var(--c-accent-dark); }
.kn-tf__badge { display: inline-block; font-size: 0.6rem; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; border: 1px solid var(--c-accent-ink); color: var(--c-accent-ink); padding: 0.15rem 0.5rem; margin-bottom: 0.5rem; }
.kn-tf__t { font-size: clamp(1.6rem, 1.3rem + 1.2vw, 2.3rem); } .kn-tf__t a:hover { color: var(--c-accent-ink); }
.kn-tf__s { margin-top: 0.4rem; color: var(--c-ink-soft); font-size: 0.95rem; max-width: 36ch; }
.kn-tf__list { display: grid; gap: 0.35rem; font-size: 0.9rem; }
.kn-tf__list li { display: grid; grid-template-columns: 1.1rem 1fr; gap: 0.3rem; } .kn-tf__list li::before { content: "◆"; font-size: 0.5rem; color: var(--c-accent-dark); padding-top: 0.45rem; }
.kn-tf__price b { display: block; font-family: var(--f-d); font-weight: 700; font-size: clamp(2.2rem, 1.8rem + 1.6vw, 3.2rem); line-height: 1; color: var(--c-ink); }
.kn-tf__price small { display: block; margin-top: 0.2rem; font-size: 0.68rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--c-muted); }
.kn-tf__ask { display: inline-block; margin-top: 0.8rem; font-size: 0.7rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--c-accent-ink); border-bottom: 1px solid currentColor; padding-bottom: 2px; }
.kn-tf__ask:hover { color: var(--c-ink); }
@media (min-width: 900px) {
    .kn-tarife__cap { display: grid; grid-template-columns: 1.1fr 1.3fr 0.7fr; gap: 2rem; padding: 0.6rem 0.4rem; font-size: 0.62rem; font-weight: 700; letter-spacing: 0.2em; text-transform: uppercase; color: var(--c-muted); border-bottom: 1px solid var(--c-border-2); }
    .kn-tf { grid-template-columns: 1.1fr 1.3fr 0.7fr; gap: 2rem; align-items: start; }
    .kn-tf__price { text-align: right; }
}
@media (min-width: 900px) and (max-width: 1279.98px) { .kn-tarife--full .kn-tarife__cap, .kn-tarife--full .kn-tf { grid-template-columns: 1fr 1fr; } .kn-tarife--full .kn-tarife__cap span:nth-child(2) { display: none; } .kn-tarife--full .kn-tf__list { grid-column: 1 / -1; order: 3; } }

/* büromuzdan: yatay arşiv rafı */
.kn-rack { display: flex; gap: clamp(1rem, 0.6rem + 1.6vw, 2rem); overflow-x: auto; scroll-snap-type: x proximity; padding: 0.6rem max(var(--gut), calc((100vw - var(--wrap)) / 2 + var(--gut))) 2.2rem; scrollbar-width: thin; scrollbar-color: var(--c-accent-dark) var(--c-surface); }
.kn-rack__i { flex: none; width: min(78vw, 22rem); scroll-snap-align: start; }
.kn-rack__i:nth-child(even) { margin-top: 2.2rem; }
.kn-ek { display: block; transition: transform .45s var(--ease); }
.kn-ek__frame { display: block; background: var(--c-soft); padding: 0.55rem; border: 1px solid var(--c-border-2); box-shadow: 6px 6px 0 -1px var(--c-surface-2), 6px 6px 0 0 var(--c-border-2); }
.kn-ek img { width: 100%; aspect-ratio: 4/3; object-fit: cover; transition: transform .6s var(--ease); }
.kn-ek__frame { overflow: hidden; }
.kn-ek:hover img { transform: scale(1.04); }
.kn-ek:hover { transform: translateY(-4px) rotate(-0.6deg); }
.kn-ek__cap { display: flex; gap: 0.7rem; align-items: baseline; padding: 0.8rem 0.2rem 0; font-family: var(--f-d); font-weight: 700; font-size: 1.25rem; line-height: 1.15; color: var(--c-ink); }
.kn-ek__cap i { font-family: var(--f-b); font-style: normal; font-size: 0.6rem; letter-spacing: 0.16em; text-transform: uppercase; color: var(--c-accent-ink); flex: none; border: 1px solid currentColor; padding: 0.12rem 0.4rem; }

/* bilgilendirme notları + SSS */
.kn-info__grid { display: grid; gap: clamp(2rem, 1rem + 4vw, 4.5rem); }
@media (min-width: 980px) { .kn-info__grid { grid-template-columns: 1fr 1fr; } }
.kn-notes__list { margin-top: 1.4rem; display: grid; gap: 0; border-top: var(--rule); }
.kn-note { padding: 1.2rem 0; border-bottom: 1px solid var(--c-border-2); display: grid; gap: 0.3rem; }
.kn-note__no { font-size: 0.6rem; font-weight: 700; letter-spacing: 0.2em; text-transform: uppercase; color: var(--c-accent-ink); }
.kn-note__h { font-size: 1.5rem; }
.kn-note__p { font-size: 0.97rem; max-width: 52ch; }
.kn-note__ctx { font-size: 0.78rem; color: var(--c-muted); font-style: italic; }
.kn-faq .kn-head__t { margin-bottom: 1.4rem; }
.kn-qas { border-top: var(--rule); }
.kn-qa { border-bottom: 1px solid var(--c-border-2); }
.kn-qa summary { display: grid; grid-template-columns: 2rem 1fr 1.4rem; gap: 0.7rem; align-items: baseline; padding: 1rem 0.2rem; cursor: pointer; list-style: none; transition: background-color .2s; }
.kn-qa summary::-webkit-details-marker { display: none; }
.kn-qa summary:hover { background: color-mix(in srgb, var(--c-accent-soft) 22%, transparent); }
.kn-qa__n { font-family: var(--f-d); font-style: italic; font-weight: 700; font-size: 1.3rem; color: var(--c-accent-ink); }
.kn-qa__q { font-family: var(--f-d); font-weight: 700; font-size: clamp(1.2rem, 1.05rem + 0.6vw, 1.5rem); line-height: 1.2; color: var(--c-ink); }
.kn-qa__i { position: relative; width: 1rem; height: 1rem; align-self: center; }
.kn-qa__i::before, .kn-qa__i::after { content: ""; position: absolute; left: 0; right: 0; top: 50%; height: 2px; background: var(--c-ink); transition: transform .35s var(--ease); }
.kn-qa__i::after { transform: rotate(90deg); }
.kn-qa[open] .kn-qa__i::after { transform: rotate(0); }
.kn-qa__a { padding: 0 0.2rem 1.2rem 2.7rem; font-size: 0.97rem; }
.kn-qa::details-content { block-size: 0; overflow: hidden; transition: block-size .4s var(--ease), content-visibility .4s allow-discrete; }
.kn-qa[open]::details-content { block-size: auto; }
@supports (interpolate-size: allow-keywords) { :root { interpolate-size: allow-keywords; } }
.kn-faq__more { margin-top: 1.4rem; }

/* rehber */
.kn-guide__grid { display: grid; gap: clamp(1.6rem, 1rem + 2vw, 3rem); }
@media (min-width: 980px) { .kn-guide__grid { grid-template-columns: 1.15fr 1fr; align-items: start; } }
.kn-lead { display: grid; gap: 1rem; }
.kn-lead__img { display: block; overflow: hidden; border: 1px solid var(--c-border-2); background: var(--c-soft); padding: 0.5rem; box-shadow: 8px 8px 0 -1px var(--c-surface-2), 8px 8px 0 0 var(--c-border-2); }
.kn-lead__img img { width: 100%; aspect-ratio: 4/3; object-fit: cover; transition: transform .7s var(--ease); }
.kn-lead:hover .kn-lead__img img { transform: scale(1.04); }
.kn-lead__body { display: grid; gap: 0.5rem; align-content: start; }
.kn-lead__t { font-family: var(--f-d); font-weight: 700; font-size: clamp(1.9rem, 1.4rem + 2vw, 3.1rem); line-height: 1.02; color: var(--c-ink); }
.kn-lead:hover .kn-lead__t { color: var(--c-accent-ink); }
.kn-lead__ex { color: var(--c-ink-soft); max-width: 52ch; }
.kn-lead--big { margin-bottom: clamp(2rem, 1.4rem + 3vw, 4rem); }
@media (min-width: 900px) { .kn-lead--big { grid-template-columns: 1.1fr 1fr; gap: 2rem; align-items: center; } }
.kn-yz__cat { display: inline-block; justify-self: start; font-size: 0.62rem; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase; color: var(--c-accent-ink); border: 1px solid currentColor; padding: 0.14rem 0.5rem; }
.kn-yz__meta { font-size: 0.78rem; color: var(--c-muted); }
.kn-yz { display: grid; grid-template-columns: 4rem minmax(0, 1fr); gap: 1rem; padding: 1.2rem 0; border-bottom: 1px solid var(--c-border-2); position: relative; }
.kn-yz:first-child { border-top: var(--rule); }
.kn-yz__date { display: grid; justify-items: center; align-content: start; border-right: 1px solid var(--c-border-2); padding-right: 0.8rem; }
.kn-yz__date b { font-family: var(--f-d); font-weight: 700; font-size: 2.5rem; line-height: 0.9; color: var(--c-ink); }
.kn-yz__date i { font-style: normal; font-size: 0.62rem; letter-spacing: 0.1em; font-weight: 700; color: var(--c-muted); margin-top: 0.3rem; }
.kn-yz__body { display: grid; gap: 0.35rem; align-content: start; }
.kn-yz__t { font-family: var(--f-d); font-weight: 700; font-size: clamp(1.4rem, 1.2rem + 0.8vw, 1.85rem); line-height: 1.1; color: var(--c-ink); transition: color .2s; }
.kn-yz:hover .kn-yz__t { color: var(--c-accent-ink); }
.kn-yz__ex { font-size: 0.94rem; color: var(--c-ink-soft); max-width: 58ch; }
.kn-yz__img { display: none; }
@media (min-width: 760px) { .kn-yzlist .kn-yz { grid-template-columns: 4.4rem minmax(0, 1fr) 9rem; } .kn-yzlist .kn-yz__img { display: block; width: 9rem; aspect-ratio: 4/3; object-fit: cover; border: 3px solid var(--c-soft); outline: 1px solid var(--c-border-2); transition: transform .5s var(--ease); } .kn-yzlist .kn-yz:hover .kn-yz__img { transform: rotate(-2deg) scale(1.04); } }
.kn-guide__list .kn-yz:first-child { border-top: var(--rule); }
.kn-yzs + .kn-yzs { margin-top: clamp(2rem, 1.4rem + 3vw, 3.6rem); }

/* kapanış */
.kn-cta-wrap { padding-block: clamp(2.4rem, 1.6rem + 3vw, 4.4rem); }
.kn-cta { position: relative; overflow: hidden; background: var(--c-contrast); color: var(--c-on-contrast); padding: clamp(1.8rem, 1.2rem + 3vw, 4rem); display: grid; gap: 1.6rem; border: 1px solid color-mix(in srgb, var(--c-accent) 55%, transparent); outline: 1px solid color-mix(in srgb, var(--c-accent) 30%, transparent); outline-offset: -9px; isolation: isolate; }
.kn-cta::after { content: ""; position: absolute; inset: 0; z-index: -1; background: var(--grain); opacity: 0.09; mix-blend-mode: screen; pointer-events: none; }
.kn-cta__para { position: absolute; right: 2%; top: 50%; transform: translateY(-50%); z-index: -1; font-family: var(--f-d); font-weight: 700; font-size: clamp(14rem, 6rem + 20vw, 26rem); line-height: 0.7; color: transparent; -webkit-text-stroke: 1.5px color-mix(in srgb, var(--c-accent) 28%, transparent); user-select: none; }
.kn-cta__t { color: var(--c-on-contrast-strong); font-size: clamp(2rem, 1.4rem + 2.8vw, 3.9rem); max-width: 18ch; }
.kn-cta__p { margin-top: 0.8rem; max-width: 52ch; font-size: 1.05rem; }
.kn-cta__act { display: flex; flex-wrap: wrap; gap: 0.7rem; }
.kn-cta__notice { font-size: 0.76rem; line-height: 1.55; font-style: italic; color: color-mix(in srgb, var(--c-on-contrast) 84%, transparent); border-top: 1px solid color-mix(in srgb, var(--c-on-contrast) 22%, transparent); padding-top: 0.9rem; max-width: 90ch; }
@media (min-width: 900px) { .kn-cta { grid-template-columns: 1.4fr 1fr; align-items: center; } .kn-cta__notice { grid-column: 1 / -1; } .kn-cta__act { justify-content: flex-end; } }

/* ═══ İÇ SAYFA MİMARİLERİ ═══════════════════════════════════════════ */
.kn-rosg__h { font-size: clamp(1.6rem, 1.3rem + 1.2vw, 2.4rem); padding-bottom: 0.6rem; border-bottom: var(--rule); margin-bottom: 0.4rem; display: flex; align-items: baseline; gap: 0.7rem; }
.kn-rosg__h::before { content: "§"; color: var(--c-accent-ink); font-style: italic; }
/* çalışma alanları: kanun metni sütunu */
.kn-laws { display: grid; gap: clamp(2.2rem, 1.6rem + 3vw, 4rem); }
.kn-law { display: grid; gap: 1.2rem 2.4rem; position: relative; padding-top: 1.4rem; border-top: var(--rule); scroll-margin-top: calc(var(--bar-h) + 1.4rem); }
.kn-law__h { display: grid; gap: 0.3rem; font-size: clamp(2rem, 1.5rem + 2vw, 3.2rem); line-height: 1; }
.kn-law__w { font-family: var(--f-b); font-size: 0.66rem; font-weight: 700; letter-spacing: 0.22em; text-transform: uppercase; color: var(--c-accent-ink); display: flex; gap: 0.5rem; align-items: baseline; } .kn-law__w b { font-family: var(--f-d); font-size: 2.2rem; font-style: italic; letter-spacing: 0; line-height: 1; }
.kn-law__h a { background: linear-gradient(var(--c-accent-soft), var(--c-accent-soft)) 0 92% / 0 36% no-repeat; transition: background-size .5s var(--ease); justify-self: start; }
.kn-law__h a:hover { background-size: 100% 36%; }
.kn-law__body { display: grid; gap: 0.8rem; align-content: start; max-width: 62ch; }
.kn-law__p { display: grid; grid-template-columns: 2.2rem 1fr; line-height: 1.7; }
.kn-law__p i { font-style: normal; font-weight: 700; font-size: 0.85rem; color: var(--c-accent-ink); padding-top: 0.15rem; }
.kn-law__body .kn-fk { margin-left: 2.2rem; }
.kn-law__p--note em { font-style: normal; font-weight: 700; color: var(--c-ink); }
.kn-law__side { display: grid; gap: 0.2rem; align-content: start; padding: 1rem 1.1rem; border: 1px solid var(--c-border-2); border-left: 4px solid var(--c-accent-dark); background: var(--c-soft); font-size: 0.86rem; }
.kn-law__side small { font-size: 0.6rem; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase; color: var(--c-muted); }
.kn-law__side b { font-family: var(--f-d); font-size: 2rem; line-height: 1; color: var(--c-ink); }
.kn-law__side i { font-style: normal; color: var(--c-muted); }
.kn-law__side a { margin-top: 0.6rem; font-size: 0.7rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--c-accent-ink); }
@media (min-width: 900px) { .kn-law { grid-template-columns: minmax(0, 1fr) 14.5rem; } .kn-law__h { grid-column: 1 / -1; } .kn-law__side { position: sticky; top: calc(var(--bar-h) + 2rem); } }
/* hizmet detayı: madde sayfası */
.kn-mad { position: relative; }
.kn-mad__no { display: flex; align-items: baseline; gap: 0.9rem; margin-bottom: 1.4rem; padding-bottom: 0.8rem; border-bottom: var(--rule); }
.kn-mad__no span { font-size: 0.7rem; font-weight: 700; letter-spacing: 0.22em; text-transform: uppercase; color: var(--c-accent-ink); }
.kn-mad__no b { font-family: var(--f-d); font-weight: 700; font-style: italic; font-size: clamp(4rem, 3rem + 4vw, 7rem); line-height: 0.8; color: transparent; -webkit-text-stroke: 1.4px var(--c-ink); }
.kn-mad__sec { margin-bottom: clamp(1.8rem, 1.2rem + 2vw, 3rem); scroll-margin-top: calc(var(--bar-h) + 1.4rem); }
.kn-mad__h { font-size: var(--t-2); margin-bottom: 0.8rem; display: flex; gap: 0.6rem; align-items: baseline; } .kn-mad__h::before { content: "§"; font-style: italic; color: var(--c-accent-ink); }
.kn-card { align-self: start; position: relative; }
@media (min-width: 1024px) { .kn-card { position: sticky; top: calc(var(--bar-h) + 1.4rem); } }
.kn-card__tab { display: inline-block; background: color-mix(in srgb, var(--c-accent-soft) 60%, var(--c-surface-2)); padding: 0.55rem 1rem 0.5rem; font-size: 0.64rem; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; border-radius: 6px 6px 0 0; margin-left: 1rem; color: var(--c-ink); }
.kn-card__sheet { display: grid; gap: 0.8rem; background: var(--c-soft); border: 1px solid var(--c-border-2); padding: 1.3rem 1.2rem; box-shadow: 8px 8px 0 -1px var(--c-surface-2), 8px 8px 0 0 var(--c-border-2); position: relative; }
.kn-card__price { font-family: var(--f-d); font-weight: 700; font-size: 3rem; line-height: 1; color: var(--c-ink); padding-bottom: 0.9rem; border-bottom: var(--rule); } .kn-card__price small { display: block; font-family: var(--f-b); font-size: 0.6rem; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase; color: var(--c-muted); margin-bottom: 0.4rem; }
.kn-card__facts { display: grid; gap: 0.5rem; } .kn-card__facts div { display: grid; gap: 0.1rem; padding-bottom: 0.5rem; border-bottom: 1px dotted var(--c-border-2); } .kn-card__facts dt { font-size: 0.6rem; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; color: var(--c-muted); } .kn-card__facts dd { font-size: 0.92rem; font-weight: 600; color: var(--c-ink); }
.kn-card__note { font-size: 0.78rem; line-height: 1.55; color: var(--c-muted); font-style: italic; }
.kn-refs { display: grid; gap: 0; border-top: var(--rule); }
@media (min-width: 800px) { .kn-refs { grid-template-columns: 1fr 1fr; column-gap: 2.4rem; } }
.kn-ref { display: grid; grid-template-columns: 2.6rem 1fr auto; gap: 0.15rem 0.8rem; align-items: baseline; padding: 1rem 0; border-bottom: 1px solid var(--c-border-2); transition: padding-left .3s var(--ease), background-color .2s; }
.kn-ref:hover { padding-left: 0.6rem; background: color-mix(in srgb, var(--c-accent-soft) 24%, transparent); }
.kn-ref__bkz { font-style: italic; font-family: var(--f-d); font-weight: 700; color: var(--c-accent-ink); }
.kn-ref__t { font-family: var(--f-d); font-weight: 700; font-size: 1.45rem; line-height: 1.1; color: var(--c-ink); }
.kn-ref__s { grid-column: 2 / -1; font-size: 0.9rem; color: var(--c-ink-soft); }
.kn-ref__m { grid-row: 1; grid-column: 3; text-align: right; display: grid; } .kn-ref__m b { font-family: var(--f-d); font-size: 1.3rem; color: var(--c-ink); } .kn-ref__m i { font-style: normal; font-size: 0.7rem; color: var(--c-muted); max-width: 12rem; }
@media (max-width: 560px) { .kn-ref { grid-template-columns: 2.4rem 1fr; } .kn-ref__m { grid-row: auto; grid-column: 2; text-align: left; } }
/* ekip cetveli */
.kn-rosg { margin-bottom: clamp(2rem, 1.4rem + 3vw, 3.6rem); }
.kn-ros__row { display: grid; grid-template-columns: 3rem minmax(0, 1fr); gap: 0.4rem 1rem; padding: 1.3rem 0; border-bottom: 1px solid var(--c-border-2); position: relative; transition: background-color .25s; }
.kn-ros__row:hover { background: color-mix(in srgb, var(--c-accent-soft) 18%, transparent); }
.kn-ros__no { font-family: var(--f-d); font-weight: 700; font-style: italic; font-size: 1.7rem; color: var(--c-accent-ink); line-height: 1.1; }
.kn-ros__tab { font-size: 0.62rem; font-weight: 700; letter-spacing: 0.2em; text-transform: uppercase; color: var(--c-accent-ink); }
.kn-ros__name { font-size: clamp(1.7rem, 1.3rem + 1.4vw, 2.5rem); }
.kn-ros__role { font-weight: 600; font-size: 0.9rem; color: var(--c-ink); }
.kn-ros__sum, .kn-ros__when { grid-column: 2; }
.kn-ros__sum { font-size: 0.95rem; max-width: 52ch; }
.kn-ros__when small { display: block; font-size: 0.58rem; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; color: var(--c-muted); } .kn-ros__when b { font-size: 0.95rem; color: var(--c-ink); display: block; }
.kn-ros__when a { display: inline-block; margin-top: 0.5rem; font-size: 0.68rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--c-accent-ink); border-bottom: 1px solid currentColor; }
@media (min-width: 900px) { .kn-ros__row { grid-template-columns: 3.4rem 1.1fr 1.3fr 12rem; gap: 1.8rem; align-items: start; } .kn-ros__sum, .kn-ros__when { grid-column: auto; } .kn-ros__when { text-align: right; } }
/* tarife sayfası notu */
.kn-notes3 { margin-top: clamp(2rem, 1.4rem + 3vw, 3.4rem); }
/* paket: sözleşme */
.kn-soz { position: relative; background: var(--c-soft); border: 1px solid var(--c-border-2); padding: clamp(1.4rem, 1rem + 2.4vw, 3rem); box-shadow: 10px 10px 0 -1px var(--c-surface-2), 10px 10px 0 0 var(--c-border-2); max-width: 52rem; }
.kn-soz::after { content: ""; position: absolute; inset: 0; background: var(--grain); opacity: 0.06; mix-blend-mode: multiply; pointer-events: none; }
.kn-soz__draft { position: absolute; right: 1.2rem; top: 1.2rem; font-size: 0.66rem; font-weight: 800; letter-spacing: 0.2em; border: 2px solid var(--c-accent-ink); color: var(--c-accent-ink); padding: 0.2rem 0.6rem; transform: rotate(5deg); }
.kn-soz__h { font-size: var(--t-2); padding-bottom: 0.7rem; border-bottom: var(--rule); margin-bottom: 1.4rem; max-width: 70%; }
.kn-soz__sec { padding-bottom: 1.4rem; margin-bottom: 1.4rem; border-bottom: 1px dotted var(--c-border-2); scroll-margin-top: calc(var(--bar-h) + 1.4rem); position: relative; z-index: 1; }
.kn-soz__sec h3 { font-size: 1.5rem; margin-bottom: 0.6rem; display: flex; gap: 0.8rem; align-items: baseline; } .kn-soz__sec h3 span { font-family: var(--f-b); font-size: 0.62rem; letter-spacing: 0.2em; text-transform: uppercase; color: var(--c-accent-ink); }
.kn-soz__lead { margin: 1rem 0 0.2rem; font-weight: 600; color: var(--c-ink); }
.kn-soz__price b { font-family: var(--f-d); font-size: 3.4rem; line-height: 1; color: var(--c-ink); } .kn-soz__price small { margin-left: 0.6rem; font-size: 0.72rem; letter-spacing: 0.12em; text-transform: uppercase; font-weight: 700; color: var(--c-muted); }
.kn-soz__sec p + p, .kn-soz__price + p { margin-top: 0.7rem; }
.kn-soz__sigs { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; margin: 1.8rem 0 1.6rem; } .kn-soz__sigs p { font-size: 0.7rem; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; color: var(--c-muted); } .kn-soz__sigs span { display: block; height: 2.6rem; border-bottom: 1px solid var(--c-ink); margin-bottom: 0.4rem; }
.kn-soz__sign { border-bottom: 0; margin-bottom: 0; padding-bottom: 0; }
/* arşiv */
.kn-ftabs { display: flex; flex-wrap: wrap; gap: 0.35rem; margin-bottom: 1.8rem; align-items: flex-end; border-bottom: 3px double var(--c-ink); padding-bottom: 0; }
.kn-ftabs button { padding: 0.65rem 1rem 0.55rem; background: color-mix(in srgb, var(--c-accent-soft) 40%, var(--c-surface-2)); font-size: 0.68rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; border-radius: 6px 6px 0 0; transition: background-color .2s, transform .2s; }
.kn-ftabs button:hover { transform: translateY(-2px); background: var(--c-accent-soft); }
.kn-ftabs button.is-on { background: var(--c-ink); color: var(--c-bg); padding-top: 0.8rem; }
.kn-ekler { columns: 1; column-gap: 1.6rem; }
@media (min-width: 600px) { .kn-ekler { columns: 2; } } @media (min-width: 1240px) { .kn-ekler { columns: 3; } }
.kn-ekler__i { break-inside: avoid; margin-bottom: 1.8rem; }
.kn-ekler__i:nth-child(3n+2) .kn-ek__frame { padding-bottom: 1.4rem; }
/* yazı */
.kn-art { max-width: 46rem; }
.kn-art__meta { display: flex; flex-wrap: wrap; gap: 0.4rem 1.1rem; align-items: center; font-size: 0.78rem; color: var(--c-muted); padding-bottom: 0.9rem; border-bottom: var(--rule); margin-bottom: 1.6rem; }
.kn-art__cover { margin-bottom: 2rem; } .kn-art__cover img { width: 100%; height: auto; border: 1px solid var(--c-border-2); padding: 0.5rem; background: var(--c-soft); box-shadow: 8px 8px 0 -1px var(--c-surface-2), 8px 8px 0 0 var(--c-border-2); } .kn-art__cover figcaption { margin-top: 0.7rem; font-size: 0.74rem; color: var(--c-muted); font-style: italic; }
.kn-art__body { max-width: none; font-size: 1.1rem; }
.kn-art__body h2 { padding-top: 0.6rem; border-top: 1px solid var(--c-border-2); display: flex; gap: 0.6rem; align-items: baseline; } .kn-art__body h2::before { content: "§"; font-style: italic; color: var(--c-accent-ink); }
/* hakkımızda: yönetmelik */
.kn-yon__sec { margin-bottom: clamp(2rem, 1.4rem + 3vw, 3.6rem); scroll-margin-top: calc(var(--bar-h) + 1.4rem); }
.kn-yon__h { font-size: var(--t-2); padding-bottom: 0.6rem; border-bottom: var(--rule); margin-bottom: 1.2rem; display: flex; gap: 0.9rem; align-items: baseline; }
.kn-yon__h span { font-family: var(--f-b); font-size: 0.64rem; letter-spacing: 0.22em; text-transform: uppercase; color: var(--c-accent-ink); }
.kn-yon__lead { max-width: 60ch; margin-bottom: 1.2rem; }
.kn-oath { display: grid; gap: 0; border-top: 1px solid var(--c-border-2); }
.kn-oath li { display: grid; grid-template-columns: 3.4rem 1fr; gap: 1rem; padding: 1.2rem 0; border-bottom: 1px solid var(--c-border-2); }
.kn-oath__no { font-family: var(--f-d); font-style: italic; font-weight: 700; font-size: 2.2rem; line-height: 1; color: var(--c-accent-ink); }
.kn-oath h3 { font-size: 1.5rem; } .kn-oath p { margin-top: 0.3rem; max-width: 56ch; font-size: 0.97rem; }
/* iletişim: dilekçe + antet */
.kn-pet { background: var(--c-soft); border: 1px solid var(--c-border-2); padding: clamp(1.2rem, 0.8rem + 2.4vw, 2.6rem); position: relative; box-shadow: 8px 8px 0 -1px var(--c-surface-2), 8px 8px 0 0 var(--c-border-2); }
.kn-pet__hi, .kn-pet__bye { font-family: var(--f-d); font-style: italic; font-weight: 700; font-size: 1.6rem; color: var(--c-ink); margin-bottom: 1rem; }
.kn-pet__bye { margin: 0.6rem 0 1.2rem; }
.kn-pet__row { display: grid; gap: 0 1.4rem; } @media (min-width: 640px) { .kn-pet__row { grid-template-columns: 1fr 1fr; } }
.kn-pet__note { margin-top: 0.9rem; font-size: 0.8rem; color: var(--c-muted); } .kn-pet__note a { color: var(--c-accent-ink); text-decoration: underline; text-underline-offset: 3px; }
.kn-antet { align-self: start; border: 3px double var(--c-ink); padding: 1.4rem 1.3rem; background: var(--c-bg); display: grid; gap: 1rem; position: relative; }
@media (min-width: 1024px) { .kn-antet { position: sticky; top: calc(var(--bar-h) + 1.4rem); } }
.kn-antet__name { font-family: var(--f-d); font-weight: 700; font-size: 1.9rem; letter-spacing: 0.14em; text-align: center; line-height: 1; color: var(--c-ink); }
.kn-antet__sub { text-align: center; font-size: 0.62rem; font-weight: 700; letter-spacing: 0.24em; text-transform: uppercase; color: var(--c-accent-ink); margin-top: -0.6rem; padding-bottom: 0.9rem; border-bottom: 1px solid var(--c-border-2); }
.kn-antet__dl { display: grid; gap: 0.7rem; } .kn-antet__dl div { display: grid; gap: 0.1rem; } .kn-antet__dl dt { font-size: 0.58rem; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase; color: var(--c-muted); } .kn-antet__dl dd { font-size: 0.94rem; line-height: 1.5; } .kn-antet__dl a { color: var(--c-accent-ink); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
.kn-antet__note { font-size: 0.74rem; line-height: 1.55; color: var(--c-muted); font-style: italic; border-top: 1px solid var(--c-border-2); padding-top: 0.8rem; }
/* ön görüşme: üç evreli dilekçe */
.kn-wiz__nav { display: flex; gap: 0.3rem; margin-bottom: 1.6rem; border-bottom: 3px double var(--c-ink); }
.kn-wiz__nav button { display: flex; gap: 0.5rem; align-items: baseline; padding: 0.7rem 1.1rem 0.6rem; background: color-mix(in srgb, var(--c-accent-soft) 40%, var(--c-surface-2)); font-size: 0.7rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; border-radius: 6px 6px 0 0; transition: background-color .2s; }
.kn-wiz__nav button i { font-family: var(--f-d); font-style: italic; font-size: 1.15em; letter-spacing: 0; }
.kn-wiz__nav button.is-on { background: var(--c-ink); color: var(--c-bg); } .kn-wiz__nav button.is-done i::after { content: " ✓"; color: var(--c-accent-ink); }
.kn-step { border: 0; padding: 0; margin: 0 0 1.6rem; min-width: 0; background: var(--c-soft); padding: clamp(1.1rem, 0.8rem + 2vw, 2rem); border: 1px solid var(--c-border-2); box-shadow: 8px 8px 0 -1px var(--c-surface-2), 8px 8px 0 0 var(--c-border-2); }
.kn-step legend { float: left; width: 100%; font-family: var(--f-d); font-weight: 700; font-size: var(--t-2); line-height: 1.05; padding: 0; margin-bottom: 1.2rem; color: var(--c-ink); } .kn-step legend + * { clear: both; }
.kn-step legend span { display: block; font-family: var(--f-b); font-size: 0.64rem; letter-spacing: 0.2em; text-transform: uppercase; color: var(--c-accent-ink); margin-bottom: 0.3rem; }
.kn-step__nav { display: flex; flex-wrap: wrap; gap: 0.7rem; margin-top: 0.6rem; }
.kn-whens { display: grid; gap: 0.5rem; margin-bottom: 1rem; }
.kn-when { display: flex; align-items: center; gap: 0.8rem; padding: 0.75rem 0.9rem; border: 1px solid var(--c-border-2); background: var(--c-bg); cursor: pointer; transition: border-color .2s, background-color .2s; }
.kn-when input { appearance: none; width: 1.1rem; height: 1.1rem; border: 1.5px solid var(--c-ink); border-radius: 50%; flex: none; display: grid; place-items: center; margin: 0; } .kn-when input::after { content: ""; width: 0.55rem; height: 0.55rem; border-radius: 50%; background: var(--c-accent-dark); transform: scale(0); transition: transform .25s cubic-bezier(.3, 1.6, .5, 1); } .kn-when input:checked::after { transform: scale(1); }
.kn-when:has(input:checked) { border-color: var(--c-ink); background: color-mix(in srgb, var(--c-accent-soft) 30%, var(--c-bg)); }
.kn-when:has(input:focus-visible) { box-shadow: var(--focus); }
.js .kn-wiz[data-ready] .kn-step { display: none; } .js .kn-wiz[data-ready] .kn-step.is-on { display: block; }
.kn-slip { align-self: start; }
@media (min-width: 1024px) { .kn-slip { position: sticky; top: calc(var(--bar-h) + 1.4rem); } }
.kn-slip__dl { display: grid; gap: 0.7rem; } .kn-slip__dl div { display: grid; gap: 0.1rem; padding-bottom: 0.6rem; border-bottom: 1px dotted var(--c-border-2); } .kn-slip__dl dt { font-size: 0.58rem; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase; color: var(--c-muted); } .kn-slip__dl dd { font-family: var(--f-d); font-weight: 700; font-size: 1.3rem; line-height: 1.15; color: var(--c-ink); overflow-wrap: anywhere; }
/* SSS, yasal, 404 */
.kn-faqg { margin-bottom: clamp(1.8rem, 1.4rem + 2.4vw, 3rem); }
.kn-qas--page .kn-qa summary { padding-block: 1.15rem; }
.kn-belge { position: relative; background: var(--c-soft); border: 1px solid var(--c-border-2); padding: clamp(1.4rem, 1rem + 2.4vw, 3rem); box-shadow: 10px 10px 0 -1px var(--c-surface-2), 10px 10px 0 0 var(--c-border-2); max-width: 52rem; counter-reset: bl; }
.kn-belge__stamp { position: absolute; right: 1.2rem; top: 1.2rem; font-size: 0.7rem; font-weight: 800; letter-spacing: 0.2em; border: 2px solid var(--c-accent-ink); color: var(--c-accent-ink); padding: 0.25rem 0.7rem; transform: rotate(6deg); opacity: 0.85; }
.kn-belge .kn-prose h2 { counter-increment: bl; display: flex; gap: 0.8rem; align-items: baseline; padding-top: 0.5rem; border-top: 3px double var(--c-border-2); font-size: 1.9rem; } .kn-belge .kn-prose h2::before { content: "Madde " counter(bl); font-family: var(--f-b); font-size: 0.62rem; letter-spacing: 0.2em; text-transform: uppercase; color: var(--c-accent-ink); }
.kn-404 { background: var(--c-contrast); padding: clamp(3rem, 2rem + 5vw, 7rem) var(--gut); position: relative; overflow: hidden; }
.kn-404::before { content: ""; position: absolute; inset: 0; background: var(--grain); opacity: 0.1; mix-blend-mode: screen; pointer-events: none; }
.kn-404__in { max-width: 46rem; margin-inline: auto; position: relative; }
.kn-404__tab { display: inline-block; margin-left: 1.4rem; background: color-mix(in srgb, var(--c-accent-soft) 70%, var(--c-surface-2)); color: var(--c-ink); padding: 0.7rem 1.3rem 0.6rem; font-size: 0.72rem; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; border-radius: 6px 6px 0 0; }
.kn-404__sheet { position: relative; background: var(--c-bg); padding: clamp(1.6rem, 1rem + 3vw, 3.4rem); box-shadow: 0 40px 60px -40px rgba(0, 0, 0, 0.9); }
.kn-404__stamp { position: absolute; right: clamp(0.8rem, 3vw, 2.2rem); top: clamp(1rem, 3vw, 2rem); font-size: clamp(0.8rem, 0.6rem + 1vw, 1.3rem); font-weight: 800; letter-spacing: 0.22em; border: 4px solid var(--c-accent-ink); color: var(--c-accent-ink); padding: 0.3rem 0.9rem; transform: rotate(-8deg); mix-blend-mode: multiply; }
.kn-404__h { font-size: clamp(2.4rem, 1.6rem + 3.6vw, 4.6rem); max-width: 12ch; margin-top: 2.6rem; }
.kn-404__p { margin-top: 1rem; max-width: 46ch; font-size: 1.08rem; } .kn-404__p--s { color: var(--c-muted); font-size: 0.95rem; }
.kn-404__act { display: flex; flex-wrap: wrap; gap: 0.7rem; margin-top: 1.8rem; }
.kn-404__dbg { margin-top: 2rem; padding: 1rem; border: 1px solid var(--c-border-2); overflow: auto; font-size: 0.78rem; color: var(--c-muted); background: var(--c-surface); white-space: pre-wrap; }
/* sayfa oluşturucu blokları */
.kn-page { display: block; }
.kn-blk { padding-block: clamp(2rem, 1.4rem + 3vw, 4rem); } .kn-blk--narrow { max-width: 52rem; }
.kn-blk__h { font-size: var(--t-3); margin-bottom: 1.2rem; padding-bottom: 0.7rem; border-bottom: var(--rule); }
.kn-blk__big { font-size: var(--t-4); max-width: 16ch; margin-top: 1rem; }
.kn-blk__lead { margin-top: 1.2rem; max-width: 56ch; font-size: 1.2rem; line-height: 1.6; }
.kn-blk__act { margin-top: 1.6rem; } .kn-blk__media { margin-top: 2rem; } .kn-blk__media img, .kn-blk--fig img { width: 100%; height: auto; border: 1px solid var(--c-border-2); padding: 0.5rem; background: var(--c-soft); }
.kn-blk--fig figcaption { margin-top: 0.6rem; font-size: 0.8rem; color: var(--c-muted); font-style: italic; }
.kn-blk__cards { display: grid; gap: 1.6rem; } @media (min-width: 760px) { .kn-blk__cards { grid-template-columns: repeat(3, 1fr); } }
.kn-blk__card { border-top: var(--rule); padding-top: 1rem; display: grid; gap: 0.5rem; align-content: start; } .kn-blk__card h3 { font-size: 1.7rem; } .kn-blk__card a:hover { color: var(--c-accent-ink); } .kn-blk__card img { border: 1px solid var(--c-border-2); }
.kn-blk__grid { display: grid; gap: 1rem; grid-template-columns: repeat(2, 1fr); } @media (min-width: 760px) { .kn-blk__grid { grid-template-columns: repeat(3, 1fr); } } .kn-blk__grid img { width: 100%; aspect-ratio: 4/3; object-fit: cover; border: 1px solid var(--c-border-2); padding: 0.4rem; background: var(--c-soft); }
.kn-blk__stats { display: grid; gap: 1.6rem; grid-template-columns: repeat(2, 1fr); border-top: var(--rule); padding-top: 1.2rem; } @media (min-width: 760px) { .kn-blk__stats { grid-template-columns: repeat(4, 1fr); } } .kn-blk__stats dd { font-family: var(--f-d); font-weight: 700; font-size: 3.2rem; line-height: 1; color: var(--c-ink); } .kn-blk__stats dt { font-size: 0.66rem; letter-spacing: 0.14em; text-transform: uppercase; font-weight: 700; color: var(--c-muted); margin-top: 0.3rem; }
.kn-bq { border-left: 4px double var(--c-accent-dark); padding-left: 1.4rem; } .kn-bq p { font-family: var(--f-d); font-weight: 700; font-size: clamp(1.6rem, 1.3rem + 1.4vw, 2.4rem); line-height: 1.2; color: var(--c-ink); } .kn-bq cite { display: block; margin-top: 0.8rem; font-style: normal; font-size: 0.78rem; letter-spacing: 0.14em; text-transform: uppercase; color: var(--c-accent-ink); font-weight: 700; }

/* ışık kutusu */
.kn-lb { position: fixed; inset: 0; z-index: 400; background: color-mix(in srgb, var(--c-contrast) 94%, transparent); display: grid; place-items: center; padding: 3.5rem 1rem 1rem; }
.kn-lb__f { max-width: min(92vw, 70rem); display: grid; gap: 0.8rem; justify-items: center; background: var(--c-bg); padding: 0.7rem 0.7rem 1rem; border: 1px solid var(--c-border-2); }
.kn-lb img { max-height: 76vh; width: auto; max-width: 100%; }
.kn-lb__c { font-family: var(--f-d); font-weight: 700; font-size: 1.3rem; color: var(--c-ink); text-align: center; }
.kn-lb__x, .kn-lb__n { position: absolute; width: 2.8rem; height: 2.8rem; display: grid; place-items: center; border: 1px solid var(--c-on-contrast); color: var(--c-on-contrast-strong); border-radius: 2px; transition: background-color .2s, color .2s; }
.kn-lb__x { top: 0.8rem; right: 0.8rem; } .kn-lb__n { top: 50%; margin-top: -1.4rem; } .kn-lb__n--p { left: 0.8rem; transform: scaleX(-1); } .kn-lb__n--n { right: 0.8rem; }
.kn-lb__x:hover, .kn-lb__n:hover { background: var(--c-accent); color: var(--c-on-accent); border-color: var(--c-accent); }

/* ═══ HAREKET ═══════════════════════════════════════════════════════════ */
@media (prefers-reduced-motion: no-preference) {
    .js [data-reveal] { opacity: 0; transform: translateY(26px); transition: opacity .8s var(--ease), transform .9s var(--ease); transition-delay: calc(var(--d, 0) * 70ms); }
    .js [data-reveal].is-in { opacity: 1; transform: none; }
    .js .kn-ph__kicker[data-reveal] { transform: translateX(-22px); } .js .kn-ph__title[data-reveal] { transform: translateY(40px); transition-delay: .1s; } .js .kn-ph__lede[data-reveal] { transition-delay: .24s; } .js .kn-ph__act[data-reveal] { transition-delay: .34s; }
    .js .kn-law[data-reveal], .js .kn-ros__row[data-reveal] { transform: translateX(-30px); }
    .js .kn-ek, .js .kn-ekler__i[data-reveal] { transform-origin: 50% 100%; } .js .kn-ekler__i[data-reveal] { transform: translateY(40px) rotate(1.4deg); }
    .js .kn-qa[data-reveal] { transform: translateY(14px); }
    .js .kn-soz__sec[data-reveal] { transform: scaleY(.96); transform-origin: 0 0; }
    .kn-w > span { animation: kn-up .85s var(--ease) both; animation-delay: calc(var(--i, 0) * 70ms + 120ms); }
    .kn-tag { animation: kn-fade .6s ease both; }
    .kn-file { animation: kn-rise .9s var(--ease) .45s both; }
    .kn-stamp { animation: kn-thud .7s cubic-bezier(.3, 1.4, .5, 1) 1.55s both; }
    .kn-stamp::after { content: ""; position: absolute; inset: 6%; border-radius: 50%; border: 2px solid var(--c-accent-dark); animation: kn-ring .9s ease-out 2.05s both; }
    .kn-sheet.is-open .kn-leader__li, .kn-sheet.is-open .kn-fikra li, .kn-sheet.is-open .kn-sheet__kunye > * { animation: kn-item .6s var(--ease) both; animation-delay: calc(var(--i, 1) * 55ms + 260ms); }
    .kn-sheet.is-open .kn-leader__li a { animation: none; }
    .kn-logo__mark { animation: kn-fade .6s ease both; }
    .kn-404__stamp, .kn-ok__stamp { animation: kn-thud2 .7s cubic-bezier(.3, 1.4, .5, 1) .5s both; }
    /* sayfa geçişi: kâğıt kayması + mühür damgası */
    @view-transition { navigation: auto; }
    ::view-transition-group(root) { animation-duration: .85s; }
    ::view-transition-old(root) { animation: kn-vt-old .85s var(--ease) both; }
    ::view-transition-new(root) { animation: kn-vt-new .85s var(--ease) both; }
    .kn-seal { view-transition-name: kn-seal; }
    ::view-transition-group(kn-seal) { animation: none; }
    ::view-transition-old(kn-seal) { display: none; }
    ::view-transition-new(kn-seal) { animation: kn-vt-seal .85s var(--ease) both; }
    .kn-bar { view-transition-name: kn-bar; }
    ::view-transition-group(kn-bar) { animation-duration: .01s; }
}
@keyframes kn-up { from { transform: translateY(108%); } to { transform: none; } }
@keyframes kn-fade { from { opacity: 0; } to { opacity: 1; } }
@keyframes kn-rise { from { opacity: 0; transform: translateY(36px); } to { opacity: 1; transform: none; } }
@keyframes kn-item { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: none; } }
@keyframes kn-thud { 0% { opacity: 0; transform: rotate(-26deg) scale(1.9); } 55% { opacity: 0.94; transform: rotate(-9deg) scale(0.93); } 78% { transform: rotate(-9deg) scale(1.03); } 100% { opacity: 0.94; transform: rotate(-9deg) scale(1); } }
@keyframes kn-thud2 { 0% { opacity: 0; transform: rotate(-20deg) scale(1.8); } 60% { opacity: .9; transform: rotate(7deg) scale(.94); } 100% { opacity: .9; transform: rotate(7deg) scale(1); } }
@keyframes kn-ring { from { opacity: 0.7; transform: scale(1); } to { opacity: 0; transform: scale(1.5); } }
@keyframes kn-vt-old { from { transform: none; filter: none; } to { transform: translateY(-5vh); filter: brightness(.55); } }
@keyframes kn-vt-new { 0% { clip-path: inset(100% 0 0 0); transform: translateY(6vh); } 70% { clip-path: inset(0 0 0 0); } 100% { clip-path: inset(0 0 0 0); transform: none; } }
@keyframes kn-vt-seal { 0%, 25% { transform: translate(calc(50vw + 335px), 0) rotate(-24deg) scale(2); opacity: 0; } 45% { transform: translate(calc(50vw + 335px), 0) rotate(-9deg) scale(.92); opacity: .95; } 55% { transform: translate(calc(50vw + 335px), 0) rotate(-9deg) scale(1.02); opacity: .95; } 78% { transform: translate(calc(50vw + 335px), 0) rotate(-9deg) scale(1); opacity: .95; } 100% { transform: translate(calc(50vw + 335px), 0) rotate(-9deg) scale(1); opacity: 0; } }
@media (prefers-reduced-motion: reduce) { * { scroll-behavior: auto !important; } .kn-evre::after { transition: none; } .kn-evre.is-in::after { transform: none; } }

/* ═══ KÜÇÜK EKRAN (390 / 360) ═════════════════════════════════════════ */
@media (max-width: 640px) {
    .kn-head { flex-direction: column; align-items: flex-start; gap: 0.6rem; }
    .kn-stamp { width: 74px; top: 0.35rem; right: 0.5rem; }
    .kn-file__no { min-height: 3.4rem; padding-right: 4.8rem; }
    .kn-kunye { gap: 1.1rem; }
    .kn-tab { font-size: 0.62rem; letter-spacing: 0.08em; padding-inline: 0.7rem; }
    .kn-tabs { padding-left: 0; gap: 0.2rem; }
    .kn-file__actions .kn-btn { width: 100%; }
    .kn-ph__num { right: -1.4rem; opacity: 0.8; }
    .kn-wiz__nav button { padding-inline: 0.7rem; font-size: 0.62rem; letter-spacing: 0.06em; }
    .kn-soz__h { max-width: none; margin-top: 1.6rem; }
    .kn-ros__row { grid-template-columns: 2.4rem minmax(0, 1fr); gap: 0.3rem 0.7rem; }
    .kn-tf { padding-inline: 0; }
    .kn-qa summary { grid-template-columns: 1.6rem 1fr 1.2rem; }
    .kn-qa__a { padding-left: 2.3rem; }
    .kn-mr__no { min-width: 3.6rem; }
    .kn-foot__dl div { grid-template-columns: 3.6rem 1fr; }
    .kn-ek__cap { font-size: 1.1rem; }
    .kn-404__h { margin-top: 3.4rem; }
    .kn-foot__stamp { font-size: 4.6rem; opacity: 0.7; } .kn-foot__notice { padding-right: 2.4rem; }
}
@media (max-width: 380px) { .kn-tab { padding-inline: 0.55rem; font-size: 0.58rem; } .kn-file__no { padding-right: 5rem; } .kn-ph__title { font-size: 2.3rem; } }
@media print { .kn-bar, .kn-dock, .kn-sheet, .kn-scrim, .kn-prog, .kn-seal, .kn-fab, .kn-toc { display: none !important; } body { padding: 0; background: #fff; } }

/* 19. Kanun variant */
:root { --radius-md: 4px; }
