/* katalogtasarim.tr — stil dosyası */

/* 1. Yazı tipi — self-hosted */
@font-face {
  font-family: 'Schibsted Grotesk';
  src: url('../fonts/SchibstedGrotesk.woff2') format('woff2');
  font-weight: 400 900;
  font-style: normal;
  font-display: swap;
}

/* 2. Tasarım değişkenleri (renk, aralık, köşe, yazı stilleri) */
:root,[data-theme="light"]{
  --paper:#f4f5f3;
  --paper-raised:#ffffff;
  --paper-sunk:#e9ebe8;
  --ink:#161b26;
  --ink-muted:#586070;
  --rule:#d5d8dc;
  --rule-strong:#8a919c;
  --magenta:#c8195e;
  --magenta-press:#a3124b;
  --on-magenta:#ffffff;
  --magenta-tint:#f6dce6;
  --yellow:#f2c230;
  --cyan:#1e7fa8;
  --on-cyan:#ffffff;
  --orange:#f26b21;
  --green:#22a06b;
  --night:#161b26;
  --on-night:#f4f5f3;
  --on-night-muted:#aab1bc;
  --on-dark:#161b26;
  --danger:#b42318;
  --focus:var(--ink);
  --shadow-sheet:0 1px 0 rgba(22,27,38,0.06), 0 22px 40px -22px rgba(22,27,38,0.45);
  
}
[data-theme="dark"]{
  --paper:#15181d;
  --paper-raised:#1e2229;
  --paper-sunk:#0f1115;
  --ink:#eceef0;
  --ink-muted:#a3aab5;
  --rule:#333944;
  --rule-strong:#6b7380;
  --magenta:#f0609a;
  --magenta-press:#f58ab4;
  --on-magenta:#15181d;
  --magenta-tint:#3a1b29;
  --yellow:#e5b728;
  --cyan:#5bb4d9;
  --on-cyan:#15181d;
  --orange:#f5843f;
  --green:#3dbb84;
  --night:#262c38;
  --on-night:#f4f5f3;
  --on-night-muted:#b3bac4;
  --on-dark:#161b26;
  --danger:#ff8a7a;
  --focus:var(--ink);
  --shadow-sheet:0 1px 0 rgba(0,0,0,0.4), 0 22px 40px -20px rgba(0,0,0,0.8);
  
}
:root{
  --space-1:4px;
  --space-2:8px;
  --space-3:12px;
  --space-4:16px;
  --space-6:24px;
  --space-8:32px;
  --space-12:48px;
  --space-16:64px;
  --space-24:96px;
  --radius-0:0;
  --radius-sm:4px;
  --radius-md:10px;
  --radius-lg:20px;
  --radius-xl:32px;
  --radius-pill:999px;
  --font-sans:"Schibsted Grotesk", "Helvetica Neue", Arial, sans-serif;
  
}
.display{
  font-family:var(--font-sans);
  font-size:104px;
  line-height:0.9;
  font-weight:800;
  letter-spacing:-0.045em
}
.h1{
  font-family:var(--font-sans);
  font-size:64px;
  line-height:1;
  font-weight:800;
  letter-spacing:-0.03em
}
.h2{
  font-family:var(--font-sans);
  font-size:48px;
  line-height:1;
  font-weight:800;
  letter-spacing:-0.035em
}
.h3{
  font-family:var(--font-sans);
  font-size:21px;
  line-height:1.25;
  font-weight:700;
  letter-spacing:-0.01em
}
.lead{
  font-family:var(--font-sans);
  font-size:19px;
  line-height:1.6;
  font-weight:400;
  letter-spacing:normal
}
.body{
  font-family:var(--font-sans);
  font-size:16px;
  line-height:1.65;
  font-weight:400;
  letter-spacing:normal
}
.small{
  font-family:var(--font-sans);
  font-size:14px;
  line-height:1.45;
  font-weight:400;
  letter-spacing:normal
}
.folio{
  font-family:var(--font-sans);
  font-size:12px;
  line-height:1.3;
  font-weight:600;
  letter-spacing:0.01em
}

/* Sayfa temeli */
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: var(--font-sans);
  color: var(--ink);
  background: var(--paper);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
*,*::before,*::after { box-sizing: border-box; }
a { color: inherit; text-decoration: none; }
img, svg { display: block; max-width: 100%; }
p, h1, h2, h3, h4 { margin: 0; }
ul { list-style: none; padding: 0; margin: 0; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

/* 3. Bölümler */

.kt { font-family: var(--font-sans); color: var(--ink); background: var(--paper); -webkit-font-smoothing: antialiased; }
.kt *, .kt *::before, .kt *::after { box-sizing: border-box; }
.kt img, .kt svg { display: block; max-width: 100%; }
.kt a:not([class]) { color: inherit; }
.kt .kt-btn--secondary { color: inherit; }
.kt .kt-btn--secondary:hover { color: var(--paper); }
.kt .kt-btn--primary { color: var(--on-magenta); }
.kt .kt-btn--ink { color: #ffffff; }
.kt .kt-btn--light { color: var(--ink); }
.kt .kt-work-item { color: var(--ink); }
.kt :focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; }
.kt p, .kt h1, .kt h2, .kt h3, .kt h4 { margin: 0; }
.kt-wrap { max-width: 1240px; margin: 0 auto; padding: 0 var(--space-8); }
.kt-muted { color: var(--ink-muted); }
.kt-section { padding: var(--space-24) 0; }
.kt-section-head { display: grid; grid-template-columns: 6fr 6fr; gap: var(--space-8); align-items: end; margin-bottom: var(--space-12); }
.kt-section-head p { max-width: 46ch; justify-self: end; }
.kt-link { color: var(--cyan); text-decoration: underline; text-underline-offset: 3px; }

/* Panel: an inset coloured block with big corners */
.kt-panel { margin: 0 var(--space-4); border-radius: var(--radius-xl); position: relative; overflow: hidden; }
.kt-panel--yellow { background: var(--yellow); color: var(--on-dark); }
.kt-panel--night { background: var(--night); color: var(--on-night); }
.kt-panel--magenta { background: var(--magenta); color: var(--on-magenta); }

/* Button */
.kt-btn { display: inline-flex; align-items: center; gap: var(--space-2); font: 700 16px/1 var(--font-sans); padding: 17px 24px; border-radius: var(--radius-md); border: 2px solid transparent; text-decoration: none; cursor: pointer; white-space: nowrap; }
.kt-btn--primary { background: var(--magenta); color: var(--on-magenta); }
.kt-btn--primary:hover { background: var(--magenta-press); }
.kt-btn--ink { background: var(--on-dark); color: #ffffff; }
.kt-btn--ink:hover { background: var(--magenta); color: var(--on-magenta); }
.kt-btn--secondary { background: transparent; color: inherit; border-color: currentColor; }
.kt-btn--secondary:hover { background: var(--ink); color: var(--paper); border-color: var(--ink); }
.kt-btn--sm { padding: 11px 16px; font-size: 14px; }
.kt-btn[disabled] { opacity: .45; cursor: not-allowed; }

/* Header */
.kt-header .kt-wrap { display: flex; align-items: center; justify-content: space-between; height: 80px; gap: var(--space-6); }
.kt-logo { display: inline-flex; align-items: center; gap: 6px; font-weight: 900; font-size: 21px; letter-spacing: -0.04em; text-decoration: none; color: var(--ink); }
.kt-logo-mark { display: grid; grid-template-columns: 9px 9px; gap: 2px; }
.kt-logo-mark i { width: 9px; height: 9px; border-radius: 2px; }
.kt-logo-mark i:nth-child(1) { background: var(--cyan); }
.kt-logo-mark i:nth-child(2) { background: var(--magenta); }
.kt-logo-mark i:nth-child(3) { background: var(--yellow); }
.kt-logo-mark i:nth-child(4) { background: var(--ink); }
.kt-nav { display: flex; gap: var(--space-2); font-size: 15px; font-weight: 600; background: var(--paper-raised); padding: 6px; border-radius: var(--radius-pill); }
.kt-nav a { text-decoration: none; padding: 9px 16px; border-radius: var(--radius-pill); }
.kt-nav a:hover { background: var(--paper-sunk); }
.kt-nav a[aria-current] { background: var(--ink); color: var(--paper); }

/* Hero */
.kt-hero { padding: var(--space-16) var(--space-12) var(--space-16); display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--space-8); align-items: center; }
.kt-hero .display { font-size: 88px; }
.kt-hero .lead { margin-top: var(--space-6); max-width: 28em; font-weight: 500; }
.kt-hero-cta { display: flex; flex-wrap: wrap; gap: var(--space-3); margin-top: var(--space-8); }
.kt-hero-art { position: relative; }
.kt-sticker { position: absolute; z-index: 2; left: -44px; bottom: -34px; width: 132px; height: 132px; border-radius: var(--radius-pill); background: var(--green); color: var(--on-dark); display: grid; place-items: center; text-align: center; font-weight: 800; font-size: 15px; line-height: 1.1; letter-spacing: -0.01em; transform: rotate(-12deg); padding: 18px; }
.kt-sticker b { display: block; font-size: 40px; font-weight: 900; letter-spacing: -0.05em; line-height: .9; }

/* Catalog spread */
.kt-spread { position: relative; display: grid; grid-template-columns: 1fr 1fr; aspect-ratio: 1.414 / 1; margin: 22px; box-shadow: var(--shadow-sheet); transform: rotate(2deg); }
.kt-crop { position: absolute; width: 14px; height: 14px; border-color: currentColor; opacity: .55; border-style: solid; border-width: 0; }
.kt-crop--tl { top: -20px; left: -20px; border-right-width: 1.5px; border-bottom-width: 1.5px; }
.kt-crop--tr { top: -20px; right: -20px; border-left-width: 1.5px; border-bottom-width: 1.5px; }
.kt-crop--bl { bottom: -20px; left: -20px; border-right-width: 1.5px; border-top-width: 1.5px; }
.kt-crop--br { bottom: -20px; right: -20px; border-left-width: 1.5px; border-top-width: 1.5px; }
.kt-page { position: relative; background: #ffffff; color: #161b26; padding: 6% 6% 12%; display: flex; flex-direction: column; min-width: 0; }
.kt-page--left { border-right: 1px solid #d5d8dc; }
.kt-page-head { display: flex; justify-content: space-between; font-size: 10px; font-weight: 700; padding-bottom: 6%; }
.kt-page-folio { position: absolute; bottom: 3.5%; font-size: 10px; font-weight: 700; font-variant-numeric: tabular-nums; }
.kt-page--left .kt-page-folio { left: 6%; }
.kt-page--right .kt-page-folio { right: 6%; }
.kt-products { display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: minmax(0,1fr) minmax(0,1fr); gap: 5% 6%; flex: 1; min-height: 0; }
.kt-product { display: flex; flex-direction: column; min-width: 0; min-height: 0; }
.kt-product-img { flex: 1; min-height: 0; border-radius: var(--radius-md); display: grid; place-items: center; padding: 14%; }
.kt-product-img svg { width: 100%; height: 100%; }
.kt-product-meta { display: flex; flex-direction: column; gap: 1px; padding-top: 6px; font-size: 10px; line-height: 1.25; font-variant-numeric: tabular-nums; }
.kt-product-meta strong { font-weight: 700; }
.kt-product-meta span { color: #586070; }
.kt-surface-o { background: var(--orange); color: var(--on-dark); }
.kt-surface-c { background: var(--cyan); color: var(--on-cyan); }
.kt-surface-y { background: var(--yellow); color: var(--on-dark); }
.kt-surface-g { background: var(--green); color: var(--on-dark); }
.kt-bleed { position: absolute; top: 0; right: 0; width: 58%; height: 62%; background: var(--magenta); color: var(--on-magenta); display: flex; align-items: center; justify-content: center; padding: 10%; }
.kt-bleed svg { width: 100%; height: 100%; }
.kt-feature { margin-top: auto; width: 52%; }
.kt-feature h4 { margin: 0 0 6px; font-size: clamp(12px, 1.7vw, 22px); line-height: 1; font-weight: 900; letter-spacing: -0.04em; }
.kt-feature p { font-size: 9.5px; line-height: 1.4; color: #586070; }
.kt-spec { width: 100%; margin-top: 8%; border-collapse: collapse; font-size: 9.5px; font-variant-numeric: tabular-nums; }
.kt-spec td { padding: 3px 0; border-top: 1px solid #d5d8dc; }
.kt-spec td:last-child { text-align: right; font-weight: 800; }

/* Sector strip */
.kt-sectors { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); padding: var(--space-8) 0 0; }
.kt-sectors-label { font-size: 15px; font-weight: 600; color: var(--ink-muted); margin-right: var(--space-2); }
.kt-chip { display: inline-flex; align-items: center; padding: 10px 18px; border-radius: var(--radius-pill); font-weight: 700; font-size: 15px; text-decoration: none; transition: opacity .15s, transform .15s; }
a.kt-chip:hover { opacity: .85; transform: translateY(-1px); }
.kt-chip--m { background: var(--magenta); color: var(--on-magenta); }
.kt-chip--c { background: var(--cyan); color: var(--on-cyan); }
.kt-chip--o { background: var(--orange); color: var(--on-dark); }
.kt-chip--g { background: var(--green); color: var(--on-dark); }
.kt-chip--y { background: var(--yellow); color: var(--on-dark); }
.kt-chip--i { background: var(--ink); color: var(--paper); }
.kt-chip--line { border: 2px solid var(--ink); padding: 8px 16px; }

/* Work grid */
.kt-work { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-6); }
.kt-work-item { text-decoration: none; display: block; }
.kt-cover { aspect-ratio: 1 / 1.414; border-radius: var(--radius-sm); box-shadow: var(--shadow-sheet); padding: 12% 11%; display: flex; flex-direction: column; justify-content: space-between; overflow: hidden; position: relative; isolation: isolate; }
.kt-cover-title { font-size: clamp(20px, 2.4vw, 34px); font-weight: 900; line-height: .92; letter-spacing: -0.045em; }
.kt-cover-sub { font-size: 11px; font-weight: 700; }
.kt-cover-shape { position: absolute; z-index: -1; }
.kt-cover--m { background: var(--magenta); color: var(--on-magenta); }
.kt-cover--c { background: var(--cyan); color: var(--on-cyan); }
.kt-cover--o { background: var(--orange); color: var(--on-dark); }
.kt-cover--g { background: var(--green); color: var(--on-dark); }
.kt-shape-disc { width: 78%; aspect-ratio: 1; border-radius: 50%; right: -18%; top: 22%; }
.kt-shape-half { width: 100%; aspect-ratio: 2 / 1; border-radius: 999px 999px 0 0; left: 0; bottom: 30%; }
.kt-shape-bars { left: 11%; right: 11%; top: 28%; height: 34%; background: repeating-linear-gradient(0deg, currentColor 0 8px, transparent 8px 18px); opacity: .9; }
.kt-shape-quarter { width: 70%; aspect-ratio: 1; border-radius: 0 0 0 100%; right: 0; top: 0; }
.kt-fill-y { background: var(--yellow); }
.kt-fill-m { background: var(--magenta); }
.kt-fill-p { background: var(--paper-raised); }
.kt-work-cap { margin-top: var(--space-4); }
.kt-work-cap strong { display: block; font-weight: 800; font-size: 17px; }
.kt-work-cap span { font-size: 14px; color: var(--ink-muted); }
.kt-work-item:hover .kt-cover { transform: translateY(-4px) rotate(-1deg); }
.kt-cover { transition: transform .25s ease; }

/* Process (night panel) */
.kt-process { padding: var(--space-16) var(--space-12); }
.kt-process .kt-section-head p { color: var(--on-night-muted); }
.kt-steps { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-4); counter-reset: step; }
.kt-step { counter-increment: step; padding: var(--space-6); border-radius: var(--radius-lg); border: 1.5px solid rgba(244,245,243,.16); }
.kt-step::before { content: counter(step); display: grid; place-items: center; width: 56px; height: 56px; border-radius: var(--radius-pill); font-size: 26px; font-weight: 900; margin-bottom: var(--space-8); color: var(--on-dark); }
.kt-step:nth-child(1)::before { background: var(--yellow); }
.kt-step:nth-child(2)::before { background: var(--orange); }
.kt-step:nth-child(3)::before { background: var(--green); }
.kt-step:nth-child(4)::before { background: var(--magenta); color: var(--on-magenta); }
.kt-step p { margin-top: var(--space-2); font-size: 15px; line-height: 1.55; color: var(--on-night-muted); }
.kt-step-time { display: inline-block; margin-top: var(--space-6); font-size: 13px; font-weight: 700; padding: 6px 12px; border-radius: var(--radius-pill); background: rgba(244,245,243,.1); }

/* Price tickets */
.kt-tickets { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-4); }
.kt-ticket { border-radius: var(--radius-lg); padding: var(--space-8); color: var(--on-dark); display: flex; flex-direction: column; min-height: 360px; position: relative; overflow: hidden; }
.kt-ticket--y { background: var(--yellow); }
.kt-ticket--o { background: var(--orange); }
.kt-ticket--g { background: var(--green); }
.kt-ticket h3 { font-size: 24px; font-weight: 800; letter-spacing: -0.02em; }
.kt-ticket p { margin-top: var(--space-2); font-size: 15px; line-height: 1.5; font-weight: 500; max-width: 28ch; }
.kt-ticket-price { margin-top: auto; padding-top: var(--space-8); font-size: 56px; font-weight: 900; letter-spacing: -0.04em; line-height: .9; }
.kt-ticket-price small { display: block; font-size: 14px; font-weight: 600; letter-spacing: 0; margin-bottom: var(--space-2); }
.kt-ticket-time { position: absolute; top: var(--space-6); right: var(--space-6); font-size: 13px; font-weight: 700; padding: 6px 12px; border-radius: var(--radius-pill); border: 1.5px solid currentColor; }
.kt-ticket::after { content: ""; position: absolute; left: 0; right: 0; bottom: 118px; border-top: 2px dashed currentColor; opacity: .35; }
.kt .kt-note { margin-top: var(--space-6); font-size: 16px; font-weight: 500; display: flex; gap: var(--space-3); align-items: center; }
.kt-note::before { content: ""; flex: none; width: 14px; height: 14px; border-radius: var(--radius-pill); background: var(--magenta); }

/* Quote (magenta panel) */
.kt-quote { padding: var(--space-16) var(--space-12); display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: var(--space-12); }
.kt-quote-aside .h2 { font-size: 64px; }
.kt-quote-aside > p { margin-top: var(--space-4); max-width: 30ch; font-size: 19px; line-height: 1.5; font-weight: 500; }
.kt-quote-aside ul { margin: var(--space-8) 0 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: var(--space-2); }
.kt-quote-aside li { padding: 9px 15px; border-radius: var(--radius-pill); border: 1.5px solid currentColor; font-size: 14px; font-weight: 700; }
.kt-form { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-6) var(--space-4); background: var(--paper-raised); color: var(--ink); padding: var(--space-8); border-radius: var(--radius-lg); }
.kt-field { display: flex; flex-direction: column; gap: var(--space-2); }
.kt-field--full { grid-column: 1 / -1; }
.kt-field label { font-size: 14px; font-weight: 700; }
.kt-field input, .kt-field select, .kt-field textarea { font: 400 16px/1.4 var(--font-sans); color: var(--ink); background: var(--paper); border: 1.5px solid var(--rule-strong); border-radius: var(--radius-md); padding: 13px 14px; width: 100%; }
.kt-field textarea { min-height: 108px; resize: vertical; }
.kt-field input:focus-visible, .kt-field select:focus-visible, .kt-field textarea:focus-visible { outline: 2px solid var(--focus); outline-offset: 1px; border-color: var(--ink); }
.kt-field-help { font-size: 13px; color: var(--ink-muted); }
.kt-drop { grid-column: 1 / -1; border: 2px dashed var(--rule-strong); border-radius: var(--radius-md); padding: var(--space-4); font-size: 14px; display: flex; justify-content: space-between; align-items: center; gap: var(--space-4); }
.kt-form-foot { grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; gap: var(--space-4); flex-wrap: wrap; }

/* Footer */
.kt-footer { background: var(--night); color: var(--on-night); padding: var(--space-16) 0 var(--space-6); margin-top: var(--space-16); }
.kt-footer-grid { display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: var(--space-8); }
.kt-footer h3 { font-size: 14px; font-weight: 700; color: var(--on-night-muted); margin-bottom: var(--space-3); }
.kt-footer ul { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--space-2); font-size: 15px; }
.kt-footer a { text-decoration: none; }
.kt-footer a:hover { text-decoration: underline; }
.kt-footer .kt-footer-lead { font-size: 22px; line-height: 1.3; font-weight: 700; letter-spacing: -0.02em; max-width: 20ch; }
.kt-footer-word { margin-top: var(--space-16); font-size: min(11.6vw, 150px); font-weight: 900; letter-spacing: -0.06em; line-height: .8; white-space: nowrap; display: flex; align-items: flex-end; gap: .04em; }
.kt-footer-word span:nth-child(1) { color: var(--cyan); }
.kt-footer-word span:nth-child(2) { color: var(--magenta); }
.kt-footer-word span:nth-child(3) { color: var(--yellow); }
.kt-footer-base { display: flex; justify-content: space-between; gap: var(--space-4); flex-wrap: wrap; margin-top: var(--space-8); font-size: 13px; color: var(--on-night-muted); }

/* Responsive */
@media (max-width: 960px) {
  .kt-wrap { padding: 0 var(--space-4); }
  .kt-panel { margin: 0 var(--space-2); border-radius: var(--radius-lg); }
  .kt-section { padding: var(--space-16) 0; }
  .kt-nav { display: none; }
  .kt-hero, .kt-section-head, .kt-quote { grid-template-columns: 1fr; }
  .kt-section-head p { justify-self: start; }
  .kt-hero { padding: var(--space-8) var(--space-4) var(--space-12); }
  .kt-hero .display { font-size: 58px; }
  .kt .h2, .kt-quote-aside .h2 { font-size: 36px; }
  .kt-hero-art { margin-top: var(--space-4); }
  .kt-sticker { width: 96px; height: 96px; font-size: 11px; padding: 12px; }
  .kt-sticker b { font-size: 28px; }
  .kt-product-meta span { display: none; }
  .kt-work { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); }
  .kt-process, .kt-quote { padding: var(--space-12) var(--space-4); }
  .kt-steps, .kt-tickets { grid-template-columns: 1fr; }
  .kt-step::before { margin-bottom: var(--space-4); }
  .kt-ticket { min-height: 0; }
  .kt-ticket::after { display: none; }
  .kt-form { grid-template-columns: 1fr; padding: var(--space-4); }
  .kt-footer-grid { grid-template-columns: 1fr 1fr; }
  .kt-footer-grid > :first-child { grid-column: 1 / -1; }
  .kt-footer-word { flex-wrap: wrap; font-size: 19vw; line-height: .85; }
  .kt-sticker { left: -6px; bottom: -24px; }
  .kt-ticket-price { font-size: 44px; }
}
@media (prefers-reduced-motion: reduce) { .kt-spread, .kt-sticker { transform: none; } .kt-cover { transition: none; } }

/* ============================================================
   PHP İÇ SAYFALAR — uyumluluk class'ları
   ============================================================ */

/* Temel değişkenler */
:root {
  --g: #22a06b;     /* Garanti yeşili — referans --green ile aynı ton */
  --g-d: #177553;
  --g-l: #e3f7ef;
  --wrap: 1200px;
  --h: 80px;        /* referans header yüksekliği */
  --r: 10px;
  --line: rgba(22,27,38,.1);
  --line-d: rgba(244,245,243,.14);
  --white: #ffffff;
  --paper: var(--paper-raised);
  --paper-2: var(--paper-sunk);
  --muted: var(--ink-muted);
  --shadow: var(--shadow-sheet);
  --ease: cubic-bezier(.22,1,.36,1);
  --f: var(--font-sans);
}

/* Layout */
.wrap, .container { max-width: var(--wrap); margin-inline: auto; padding-inline: 32px; }
.wide { max-width: 1380px; margin-inline: auto; padding-inline: 32px; }
.section { padding: var(--space-24) 0; }
.section-sm { padding: var(--space-12) 0; }
.sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }

/* Butonlar — PHP sayfaları */
.btn { display:inline-flex; align-items:center; gap:8px; font:700 16px/1 var(--font-sans); padding:17px 24px; border-radius:var(--radius-md); border:2px solid transparent; text-decoration:none; cursor:pointer; white-space:nowrap; transition:background .2s,transform .2s; }
.btn:hover { transform:translateY(-1px); }
.btn-g     { background:var(--green);   color:var(--on-dark); }
.btn-g:hover { background:var(--g-d);  }
.btn-ink   { background:var(--ink);     color:#fff; }
.btn-ink:hover { background:var(--magenta); color:var(--on-magenta); }
.btn-outline { background:transparent; color:var(--ink); border-color:currentColor; }
.btn-outline:hover { background:var(--ink); color:#fff; }
.btn-wa    { background:#25d366; color:#fff; border-radius:var(--radius-pill); }
.btn-wa:hover { background:#128c7e; }
.btn-mag   { background:var(--magenta); color:var(--on-magenta); }
.btn-mag:hover { background:var(--magenta-press); }
.btn-sm    { padding:11px 16px; font-size:14px; }
.btn-arrow::after { content:'→'; }
.w-100 { width:100%; } .justify-center { justify-content:center; }
.text-center { text-align:center; }

/* WA Float */
.wa-float { position:fixed; right:18px; bottom:18px; z-index:70; width:56px; height:56px; border-radius:50%; background:#25d366; color:#fff; display:grid; place-items:center; box-shadow:0 8px 28px rgba(37,211,102,.42); transition:transform .25s; }
.wa-float:hover { transform:translateY(-3px) scale(1.06); }
.wa-float::after { content:''; position:absolute; inset:-5px; border-radius:50%; border:2px solid rgba(37,211,102,.4); animation:wa-r 2.5s ease-out infinite; pointer-events:none; }
@keyframes wa-r { 0%{transform:scale(.9);opacity:.7} 100%{transform:scale(1.3);opacity:0} }

/* İç sayfa header */
.site-header { background:var(--paper-raised); border-bottom:1px solid var(--rule); height:var(--h); display:flex; align-items:center; position:sticky; top:0; z-index:90; }
.header-stripe { display:none; }
.header-inner { display:flex; align-items:center; gap:24px; width:100%; }
.logo { display:flex; align-items:center; gap:6px; text-decoration:none; font-weight:900; font-size:21px; letter-spacing:-.04em; color:var(--ink); }
.logo-grid { display:grid; grid-template-columns:9px 9px; gap:2px; }
.logo-grid span { width:9px; height:9px; border-radius:2px; }
.logo-grid span:nth-child(1){ background:var(--cyan); }
.logo-grid span:nth-child(2){ background:var(--magenta); }
.logo-grid span:nth-child(3){ background:var(--yellow); }
.logo-grid span:nth-child(4){ background:var(--ink); }
.logo-name-new { color:var(--ink); font-family:var(--font-sans); font-weight:900; font-size:21px; letter-spacing:-.04em; }
.logo-name-new b { color:var(--magenta); }
.site-nav { display:flex; gap:4px; font-size:15px; font-weight:600; background:var(--paper-sunk); padding:6px; border-radius:var(--radius-pill); margin:0 auto; }
.site-nav a { text-decoration:none; padding:9px 16px; border-radius:var(--radius-pill); color:var(--ink); }
.site-nav a:hover { background:var(--paper); }
.site-nav a.active, .site-nav a[aria-current] { background:var(--ink); color:var(--paper); }
.nav-drop { position:relative; }
.nav-drop > a { display:flex; align-items:center; gap:.3rem; }
.nav-drop::after { content:''; position:absolute; left:0; right:0; top:100%; height:6px; }
.nav-sub { position:absolute; top:calc(100% + 6px); left:0; min-width:210px; background:var(--paper-raised); border:1px solid var(--rule); border-top:3px solid var(--magenta); border-radius:0 0 10px 10px; box-shadow:var(--shadow); padding:.4rem; opacity:0; visibility:hidden; pointer-events:none; transform:translateY(6px); transition:opacity .18s,transform .18s,visibility .18s; z-index:20; }
.nav-drop:hover .nav-sub, .nav-drop:focus-within .nav-sub { opacity:1; visibility:visible; pointer-events:auto; transform:translateY(0); }
.nav-sub a { display:block; padding:.6rem .85rem; border-radius:6px; font-size:.88rem; font-weight:600; color:var(--ink); }
.nav-sub a:hover { background:var(--paper-sunk); color:var(--magenta); }
.header-end { display:flex; align-items:center; gap:.75rem; }
.header-phone { font-size:.82rem; font-weight:700; color:var(--ink-muted); white-space:nowrap; }
.burger { display:none; width:40px; height:40px; background:var(--ink); border-radius:8px; border:0; flex-direction:column; align-items:center; justify-content:center; gap:5px; cursor:pointer; }
.burger span { display:block; width:18px; height:1.5px; background:#fff; border-radius:2px; transition:transform .25s; }
.mobile-drawer { display:none; position:fixed; inset:0; top:calc(var(--h)); background:var(--night); z-index:80; flex-direction:column; padding:1.5rem; overflow-y:auto; opacity:0; pointer-events:none; transform:translateY(-10px); transition:opacity .28s,transform .28s; }
.mobile-drawer.open { opacity:1; pointer-events:auto; transform:translateY(0); }
body.nav-open .mobile-drawer { display:flex; }
body.nav-open { overflow:hidden; }
.mobile-drawer a { display:block; padding:.7rem .5rem; font-size:1.3rem; font-weight:800; color:var(--on-night); border-bottom:1px solid var(--line-d); letter-spacing:-.025em; }
.mobile-drawer a:hover { color:var(--yellow); }
.mobile-drawer-sub a { font-size:1rem; padding-left:1.2rem; color:var(--on-night-muted); }
.mobile-drawer-ctas { margin-top:auto; padding-top:2rem; display:flex; flex-direction:column; gap:.75rem; }

/* Page hero (iç sayfalar) */
.page-hero { border-bottom:1px solid var(--rule); padding:var(--space-12) 0 var(--space-8); }
.page-hero h1 { font-family:var(--font-sans); font-size:clamp(2rem,5vw,3.5rem); font-weight:900; letter-spacing:-.04em; line-height:1.05; margin-bottom:.75rem; }
.page-hero .lead { font-size:1.1rem; color:var(--ink-muted); max-width:48rem; line-height:1.65; }

/* Breadcrumb */
.breadcrumb { background:var(--paper-sunk); padding:.65rem 0; border-bottom:1px solid var(--rule); font-size:.82rem; }
.breadcrumb-list { display:flex; align-items:center; flex-wrap:wrap; gap:0; list-style:none; color:var(--ink-muted); }
.breadcrumb-list li { display:flex; align-items:center; }
.breadcrumb-list a { color:var(--ink-muted); padding:.1rem .3rem; border-radius:4px; transition:color .15s; }
.breadcrumb-list a:hover { color:var(--magenta); }
.bc-active, .breadcrumb-list li.active { color:var(--ink); font-weight:700; padding:.1rem .3rem; }
.breadcrumb-sep { color:var(--rule-strong); padding:0 .15rem; }

/* 2 sütun içerik */
.content-grid { display:grid; grid-template-columns:1fr 320px; gap:3rem; align-items:start; }
.content-main { min-width:0; }
.content-sidebar { position:sticky; top:calc(var(--h) + 1rem); display:grid; gap:1rem; }
.sidebar-card { background:var(--paper-raised); border:1px solid var(--rule); border-radius:var(--radius-lg); padding:1.5rem; margin-bottom:1rem; }
.sidebar-card h3 { font-size:.95rem; font-weight:700; margin-bottom:1rem; padding-bottom:.75rem; border-bottom:1px solid var(--rule); }
.card { background:var(--paper-raised); border:1px solid var(--rule); border-radius:var(--radius-lg); padding:1.5rem; }
.card-title { font-size:.95rem; font-weight:700; margin-bottom:1rem; padding-bottom:.75rem; border-bottom:1px solid var(--rule); }

/* Prose */
.prose, .content-prose { max-width:70ch; }
.prose h2, .content-prose h2 { font-family:var(--font-sans); font-size:clamp(1.4rem,2.8vw,1.9rem); font-weight:800; letter-spacing:-.03em; margin-top:2.2rem; margin-bottom:.65rem; }
.prose h3, .content-prose h3 { font-family:var(--font-sans); font-size:1.2rem; font-weight:700; margin-top:1.8rem; margin-bottom:.45rem; }
.prose p, .content-prose p { color:var(--ink); line-height:1.75; margin-bottom:1em; font-size:16px; }
.prose ul, .prose ol, .content-prose ul, .content-prose ol { margin:.7rem 0 1rem 1.4rem; list-style:initial; }
.prose li, .content-prose li { margin-bottom:.5rem; line-height:1.7; }
.prose strong, .content-prose strong { color:var(--ink); font-weight:700; }
.prose a, .content-prose a { color:var(--cyan); text-decoration:underline; text-underline-offset:.18em; }
.prose table, .content-prose table { width:100%; border-collapse:collapse; margin:1.5rem 0; font-size:.92rem; }
.prose th, .content-prose th, .prose td, .content-prose td { text-align:left; padding:.7rem .85rem; border:1px solid var(--rule); }
.prose th, .content-prose th { background:var(--magenta); color:var(--on-magenta); font-weight:700; }
.prose tr:nth-child(even) td, .content-prose tr:nth-child(even) td { background:var(--magenta-tint); }

.info-box { background:var(--magenta-tint); border-left:4px solid var(--magenta); border-radius:0 8px 8px 0; padding:1.2rem 1.4rem; margin:1.75rem 0; }
.info-box h3, .info-box h4 { color:var(--magenta-press); margin-bottom:.3rem; font-size:1rem; font-weight:700; }
.info-box p { margin:0; font-size:.9rem; }
.city-tags { display:flex; flex-wrap:wrap; gap:.4rem; margin:.8rem 0; }
.city-tag { background:var(--paper-sunk); border:1px solid var(--rule); border-radius:var(--radius-pill); padding:.2rem .75rem; font-size:.78rem; font-weight:600; color:var(--ink); }

/* SSS iç sayfa */
.faq-list { max-width:820px; }
.faq-list details { background:var(--paper-raised); border-radius:var(--radius-md); border:1px solid var(--rule); padding:.95rem 1.1rem; margin-bottom:.6rem; }
.faq-list details[open] { border-color:var(--magenta); }
.faq-list summary { font-family:var(--font-sans); font-size:1rem; font-weight:700; letter-spacing:-.02em; cursor:pointer; list-style:none; display:flex; justify-content:space-between; align-items:center; gap:1rem; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary::after { content:'+'; font-size:1.3rem; color:var(--magenta); line-height:1; font-weight:400; }
.faq-list details[open] summary::after { content:'−'; }
.faq-list details p { margin:.75rem 0 0; color:var(--ink-muted); font-size:.9rem; line-height:1.6; }

/* İletişim */
.contact-grid { display:grid; grid-template-columns:1fr .85fr; gap:2.5rem; align-items:start; }
.form-block { background:var(--paper-raised); border:1px solid var(--rule); border-radius:var(--radius-lg); padding:2rem; display:grid; gap:.9rem; }
.form-block label { display:grid; gap:.3rem; font-size:.87rem; font-weight:700; }
.form-block input, .form-block select, .form-block textarea { border:1.5px solid var(--rule-strong); background:var(--paper-sunk); border-radius:var(--radius-md); padding:.8rem .9rem; outline:none; font:400 16px/1.4 var(--font-sans); transition:border-color .18s; }
.form-block input:focus, .form-block select:focus, .form-block textarea:focus { border-color:var(--ink); background:var(--paper-raised); }
.form-block textarea { min-height:140px; resize:vertical; }

/* CTA band */
.cta-band { background:var(--magenta); color:var(--on-magenta); padding:var(--space-16) 0; }
.cta-band h2 { font-family:var(--font-sans); font-size:clamp(2rem,5vw,3.5rem); font-weight:900; letter-spacing:-.04em; line-height:1.05; margin-bottom:.65rem; }
.cta-band p  { color:rgba(255,255,255,.8); font-size:1.05rem; margin-bottom:1.8rem; max-width:40ch; }
.cta-band-btns { display:flex; flex-wrap:wrap; gap:.75rem; }
.cta-band .btn-white { background:var(--paper-raised); color:var(--ink); }
.cta-band .btn-white:hover { background:var(--yellow); }

/* Fiyat iç sayfa */
.pricing-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(235px,1fr)); gap:1rem; align-items:start; }
.pricing-card { background:var(--paper-raised); border:2px solid var(--rule); border-radius:var(--radius-lg); padding:1.8rem; position:relative; display:flex; flex-direction:column; transition:border-color .2s; }
.pricing-card:hover { border-color:var(--magenta); }
.pricing-card.popular { border-color:var(--magenta); }
.popular-badge { position:absolute; top:-12px; left:50%; transform:translateX(-50%); background:var(--magenta); color:var(--on-magenta); font-size:.68rem; font-weight:700; padding:.22rem .75rem; border-radius:var(--radius-pill); white-space:nowrap; }
.pricing-name { font-size:.78rem; font-weight:700; text-transform:uppercase; letter-spacing:.07em; color:var(--ink-muted); margin-bottom:.6rem; }
.pricing-price { font-family:var(--font-sans); font-size:2rem; font-weight:900; letter-spacing:-.04em; color:var(--ink); margin-bottom:.2rem; }
.pricing-price span { font-size:.95rem; font-weight:500; color:var(--ink-muted); }
.pricing-duration { font-size:.8rem; color:var(--ink-muted); margin-bottom:1.3rem; padding-bottom:1.1rem; border-bottom:1px solid var(--rule); }
.pricing-features { margin-bottom:1.4rem; flex:1; }
.pricing-features li { display:flex; align-items:flex-start; gap:.45rem; font-size:.87rem; padding:.28rem 0; }
.pricing-features li::before { content:''; width:15px; height:15px; border-radius:50%; flex-shrink:0; margin-top:.12rem; background:var(--green); background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9' height='9' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:center; }
.pricing-card .btn { width:100%; justify-content:center; }

/* Testimonials */
.testimonials-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:1rem; }
.testimonial-card { background:var(--paper-raised); border:1px solid var(--rule); border-radius:var(--radius-lg); padding:1.5rem; }
.testimonial-stars { color:#F59E0B; margin-bottom:.8rem; }
.testimonial-text { font-size:.9rem; color:var(--ink); font-style:italic; margin-bottom:1rem; line-height:1.6; }
.testimonial-author { display:flex; align-items:center; gap:.65rem; }
.testimonial-avatar { width:38px; height:38px; border-radius:50%; background:var(--magenta); color:#fff; display:grid; place-items:center; font-weight:700; font-size:.78rem; flex-shrink:0; }
.testimonial-name { font-weight:700; font-size:.87rem; display:block; }
.testimonial-company { font-size:.75rem; color:var(--ink-muted); }

/* Galeri / Blog */
.gallery-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:.9rem; }
.img-ph { display:none; }
.img-figure { margin:1.75rem 0; border-radius:var(--radius-lg); overflow:hidden; }
.img-real { display:block; width:100%; height:auto; border-radius:var(--radius-lg); }
.img-real-wide   { aspect-ratio:16/9; object-fit:cover; }
.img-real-square { aspect-ratio:1;    object-fit:cover; }
.img-real-tall   { aspect-ratio:3/4;  object-fit:cover; }
.img-real-banner { aspect-ratio:3/1;  object-fit:cover; }
.footer-links a { font-size:.87rem; color:var(--ink-muted); transition:color .15s; display:block; padding:.2rem 0; }
.footer-links a:hover { color:var(--magenta); }
.footer-links li { margin-bottom:.2rem; }
.price-list-row { display:flex; justify-content:space-between; align-items:center; padding:.5rem 0; border-bottom:1px solid var(--rule); font-size:.88rem; }
.price-list-row:last-child { border-bottom:0; }
.extras-list { display:grid; gap:.5rem; }
.extra-row { display:flex; justify-content:space-between; align-items:center; padding:.9rem 1.1rem; background:var(--paper-raised); border:1px solid var(--rule); border-radius:var(--radius-md); }
.extra-row span { font-weight:600; }
.extra-row strong { color:var(--magenta); white-space:nowrap; }

/* Seksiyonlar */
.section-header { margin-bottom:var(--space-12); }
.section-header h2 { font-family:var(--font-sans); font-size:clamp(1.9rem,3.5vw,2.8rem); font-weight:900; letter-spacing:-.04em; margin-bottom:.55rem; }
.section-header p  { color:var(--ink-muted); max-width:40rem; }
.section-tag { display:inline-block; font-size:.7rem; font-weight:700; text-transform:uppercase; letter-spacing:.09em; color:var(--magenta-press); background:var(--magenta-tint); padding:.2rem .7rem; border-radius:var(--radius-pill); margin-bottom:.6rem; }
.feature-list { display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:1.2rem; }
.feature-item { display:flex; gap:.9rem; align-items:flex-start; }
.feature-icon { width:42px; height:42px; border-radius:var(--radius-md); background:var(--paper-sunk); color:var(--magenta); display:grid; place-items:center; flex-shrink:0; }
.feature-item h3 { font-size:1rem; margin-bottom:.25rem; font-weight:700; }
.feature-item p  { font-size:.87rem; color:var(--ink-muted); margin:0; }
.process-bg { background:var(--paper-sunk); }
.stats-bg { background:var(--green); }
.stats-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(140px,1fr)); gap:2rem; text-align:center; padding:3rem 0; }
.stat-number { display:block; font-size:2.5rem; font-weight:900; color:#fff; line-height:1; letter-spacing:-.04em; }
.stat-label  { font-size:.82rem; color:rgba(0,0,0,.45); margin-top:.3rem; display:block; }
.process-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:1rem; }
.process-step { background:var(--paper-raised); border:1px solid var(--rule); border-radius:var(--radius-lg); padding:1.8rem 1.5rem; text-align:center; }
.process-num { width:48px; height:48px; border-radius:50%; background:var(--magenta); color:#fff; font-size:1.1rem; font-weight:700; display:grid; place-items:center; margin:0 auto 1.1rem; }
.process-step h3 { font-size:1rem; margin-bottom:.4rem; font-weight:700; }
.process-step p  { font-size:.87rem; color:var(--ink-muted); margin:0; }
.services-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:1rem; }
.service-card { background:var(--paper-raised); border:1px solid var(--rule); border-radius:var(--radius-lg); overflow:hidden; transition:transform .25s,box-shadow .25s; }
.service-card:has(.service-card-link) { padding:0; }
.service-card:hover { transform:translateY(-3px); box-shadow:var(--shadow); }
.service-card-link { display:flex; flex-direction:column; padding:1.75rem; height:100%; color:inherit; }
.service-icon { width:46px; height:46px; border-radius:var(--radius-md); background:var(--paper-sunk); color:var(--magenta); display:grid; place-items:center; margin-bottom:1rem; }
.service-card h3 { font-size:1.05rem; margin-bottom:.4rem; font-weight:700; }
.service-card p  { font-size:.88rem; color:var(--ink-muted); flex:1; }
.service-link { font-size:.84rem; font-weight:700; color:var(--cyan); display:inline-flex; align-items:center; gap:.35rem; margin-top:.9rem; }

/* Responsive — iç sayfalar */
@media (max-width:960px){
  .wrap,.container { padding:0 16px; }
  .content-grid { grid-template-columns:1fr; }
  .content-sidebar { position:static; }
  .contact-grid { grid-template-columns:1fr; }
  .burger { display:flex; }
  .site-nav { display:none; }
  .header-phone { display:none; }
  .header-end .kt-btn--primary { display:none; }
}
@media (max-width:640px){
  :root { --h:72px; }
  .section { padding:var(--space-16) 0; }
  body { padding-bottom:72px; }
  .wa-float { bottom:14px; right:14px; }
  .pricing-grid,.testimonials-grid,.gallery-grid { grid-template-columns:1fr; }
}

/* ── EKSİK CLASS'LAR — İç sayfa uyumluluğu ───────────────────── */

/* Buton varyantları */
.btn-primary { background:var(--magenta); color:var(--on-magenta); }
.btn-primary:hover { background:var(--magenta-press); }
.btn-white { background:var(--paper-raised); color:var(--ink); }
.btn-white:hover { background:var(--yellow); color:var(--on-dark); }
.btn-lg { padding:17px 32px; font-size:18px; }
.btn-wa.btn-lg { padding:17px 32px; font-size:18px; }

/* SSS accordion — eski .faq-question / .faq-answer sistemi */
.faq-item {
  border:1px solid var(--rule);
  border-radius:var(--radius-md);
  margin-bottom:.6rem;
  overflow:hidden;
  background:var(--paper-raised);
}
.faq-question {
  width:100%; display:flex; justify-content:space-between; align-items:center;
  gap:1rem; padding:1rem 1.2rem;
  font-family:var(--font-sans); font-size:1rem; font-weight:700;
  letter-spacing:-.02em; color:var(--ink);
  background:var(--paper-raised); text-align:left; cursor:pointer;
  border:none; transition:background .18s;
}
.faq-question:hover { background:var(--paper-sunk); }
.faq-question[aria-expanded="true"] { background:var(--paper-sunk); color:var(--magenta); }
.faq-icon { transition:transform .3s; flex-shrink:0; color:var(--magenta); }
.faq-question[aria-expanded="true"] .faq-icon { transform:rotate(180deg); }
.faq-answer {
  display:none;
  padding:.2rem 1.2rem 1.2rem;
  font-size:.93rem; color:var(--ink-muted); line-height:1.65;
  background:var(--paper-sunk);
}
.faq-answer.open { display:block; }

/* Pricing card btn aliası */
.pricing-card .btn.btn-outline { border-color:var(--rule-strong); }
.pricing-card .btn.btn-primary { background:var(--magenta); color:#fff; }

/* Feature item icon renk */
.feature-icon { color:var(--magenta); background:var(--paper-sunk); }

/* ── ESKİ CSS DEĞİŞKENLERİ — alias ───────────────────────────── */
:root {
  --primary:    var(--magenta);
  --accent:     var(--magenta);
  --text:       var(--ink);
  --text-light: var(--ink-muted);
  --border:     var(--rule);
  --bg:         var(--paper);
  --bg-dark:    var(--paper-sunk);
}

/* ── GALERİ / MASONRY ─────────────────────────────────────────── */
.katalog-masonry {
  columns: 3 180px; column-gap: 12px;
}
.katalog-thumb {
  break-inside: avoid; margin-bottom: 12px;
  border-radius: var(--radius-md); overflow: hidden;
  position: relative; cursor: pointer; background: var(--paper-sunk);
  display: block;
}
.katalog-thumb img { display: block; width: 100%; height: auto; transition: transform .35s var(--ease); }
.katalog-thumb:hover img { transform: scale(1.04); }
.katalog-thumb-overlay {
  position: absolute; inset: 0;
  background: rgba(22,27,38,.45);
  display: flex; align-items: center; justify-content: center;
  opacity: 0; transition: opacity .25s; color: #fff;
}
.katalog-thumb:hover .katalog-thumb-overlay,
.katalog-thumb:focus .katalog-thumb-overlay { opacity: 1; }
.katalog-thumb:focus { outline: 2px solid var(--magenta); outline-offset: 2px; }

@media (max-width: 900px) { .katalog-masonry { columns: 2 140px; } }
@media (max-width: 560px) { .katalog-masonry { columns: 2 120px; column-gap: 8px; }
  .katalog-thumb { margin-bottom: 8px; } }

/* ── GALERİ FİLTRE BUTONLARI ──────────────────────────────────── */
.gallery-filter-btn {
  padding: 8px 18px; border-radius: var(--radius-pill);
  font: 600 14px/1 var(--font-sans);
  border: 1.5px solid var(--rule-strong); background: var(--paper-raised);
  color: var(--ink); cursor: pointer; transition: background .18s, border-color .18s, color .18s;
}
.gallery-filter-btn:hover { background: var(--paper-sunk); }
.gallery-filter-btn.active { background: var(--ink); border-color: var(--ink); color: var(--paper-raised); }

/* ── İSTATİSTİK GRID ─────────────────────────────────────────── */
.stats-grid {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 2rem; text-align: center; padding: 2.5rem 0;
}
.stat-number { display: block; font-family: var(--font-sans); font-size: 2.5rem; font-weight: 900; color: var(--ink); line-height: 1; letter-spacing: -.04em; }
.stat-label  { font-size: .82rem; color: var(--ink-muted); margin-top: .3rem; display: block; }

/* process-bg içinde stats → koyu arka planda beyaz */
.stats-bg .stat-number { color: #fff; }
.stats-bg .stat-label  { color: rgba(255,255,255,.6); }

/* ── SECTION HEADER / TAG ─────────────────────────────────────── */
.section-header { text-align: center; max-width: 640px; margin: 0 auto 2.5rem; }
.section-header h2 { font-family: var(--font-sans); font-size: clamp(1.8rem, 3.5vw, 2.6rem); font-weight: 900; letter-spacing: -.04em; margin-bottom: .55rem; }
.section-header p  { color: var(--ink-muted); font-size: 1rem; max-width: 42rem; margin: 0 auto; }
.section-tag { display: inline-block; font-size: .7rem; font-weight: 700; text-transform: uppercase; letter-spacing: .09em; color: var(--magenta-press); background: var(--magenta-tint); padding: .22rem .7rem; border-radius: var(--radius-pill); margin-bottom: .6rem; }

/* ── SECTION PADDİNG ALİAS ─────────────────────────────────────── */
.section    { padding: var(--space-24) 0; }
.section-sm { padding: var(--space-12) 0; }
.process-bg { background: var(--paper-sunk); }

/* ── CONTAINER alias (iç sayfalar) ───────────────────────────── */
.container { max-width: 1200px; margin-inline: auto; padding-inline: 32px; }


/* ── MEGA MENU ────────────────────────────────────────────────── */
.mega-drop { position:static; }
.mega-panel {
  position:absolute;
  left:0; right:0;
  top:100%;
  background:var(--paper-raised);
  border-top:3px solid var(--magenta);
  border-bottom:1px solid var(--rule);
  box-shadow:0 24px 48px rgba(22,27,38,.14);
  z-index:100;
  opacity:0; visibility:hidden; pointer-events:none;
  transform:translateY(-6px);
  transition:opacity .2s var(--ease), transform .2s var(--ease), visibility .2s;
}
.mega-drop:hover .mega-panel,
.mega-drop:focus-within .mega-panel,
.mega-drop.open .mega-panel {
  opacity:1; visibility:visible; pointer-events:auto; transform:translateY(0);
}
.mega-inner {
  max-width:1400px; margin:0 auto; padding:0 32px;
  display:grid; grid-template-columns:repeat(4,1fr);
  gap:0;
}
.mega-col {
  padding:2rem 2rem 2rem 0;
  border-right:1px solid var(--rule);
}
.mega-col:last-child { border-right:none; padding-right:0; }
.mega-col:not(:first-child) { padding-left:2rem; }
.mega-col-label {
  font-size:.7rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase;
  color:var(--ink-muted); margin-bottom:1rem; display:block;
}
.mega-col a {
  display:flex; align-items:center; gap:.6rem;
  padding:.55rem .65rem; border-radius:var(--radius-md);
  font-size:.95rem; font-weight:600; color:var(--ink);
  transition:background .15s, color .15s;
  text-decoration:none;
}
.mega-col a::before {
  content:''; width:6px; height:6px; border-radius:50%;
  background:var(--rule-strong); flex-shrink:0;
  transition:background .15s;
}
.mega-col a:hover { background:var(--paper-sunk); color:var(--magenta); }
.mega-col a:hover::before { background:var(--magenta); }
.mega-col a.active { color:var(--magenta); font-weight:700; }
.mega-col a.active::before { background:var(--magenta); }

/* Mega menu kapatma alanı (boş hover alanı) */
.mega-drop::after {
  content:''; position:absolute;
  left:0; right:0; top:100%; height:8px;
}

@media (max-width:960px) {
  .mega-panel { display:none; }
}
