*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; scroll-behavior: smooth; }
body { margin: 0; background: var(--zemin); color: var(--metin); font-family: var(--font);
  font-size: var(--fs-16); line-height: var(--lh-text); font-weight: 400;
  -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility;
  transition: background-color var(--d-base) var(--ease-out), color var(--d-base) var(--ease-out); }
img, svg, video, canvas { display: block; max-width: 100%; }
h1, h2, h3, h4 { margin: 0; line-height: var(--lh-head); font-weight: 600; letter-spacing: var(--ls-large);
  overflow-wrap: break-word; hyphens: manual; }
h1, h2, .h1, .h2, .h3 { text-wrap: balance; }
p { margin: 0; max-width: var(--max-text); }
a { color: inherit; text-underline-offset: 0.2em; text-decoration-thickness: 1px; }
button { font: inherit; color: inherit; }
:focus-visible { outline: 2px solid var(--vurgu); outline-offset: 3px; border-radius: var(--r-12); }
::selection { background: var(--vurgu); color: var(--gece); }

.display { font-size: var(--fs-display); font-weight: 300; letter-spacing: var(--ls-large); line-height: 1.02; }
.label, .mono { font-family: var(--mono); font-size: var(--fs-12); letter-spacing: var(--ls-label); }
.label { text-transform: none; color: var(--metin-2); }
.lead { font-size: var(--fs-20); color: var(--metin-2); }
.wrap { width: min(100% - 2 * var(--gutter), var(--max)); margin-inline: auto; }
.visually-hidden { position: absolute !important; width: 1px; height: 1px; overflow: hidden;
  clip: rect(0 0 0 0); white-space: nowrap; }
.skip { position: absolute; left: var(--s-4); top: -100px; z-index: 100; background: var(--metin);
  color: var(--zemin); padding: var(--s-3) var(--s-4); border-radius: var(--r-16); }
.skip:focus { top: var(--s-4); }

@media (prefers-reduced-motion: no-preference) {
  
  .js [data-satir]:not([data-split="done"]) { opacity: 0; }
  .js:not(.js-hazir) [data-satir]:not([data-split="done"]) { animation: satir-guvence-op 0s linear 3s forwards; }
  
  .js:not(.js-hazir) [data-yuksel] { visibility: hidden; animation: satir-guvence 0s linear 3s forwards; }
}
@keyframes satir-guvence { to { visibility: visible; } }
@keyframes satir-guvence-op { to { opacity: 1; } }

.js [data-reveal] { opacity: 0; transform: translateY(16px);
  transition: opacity var(--d-slow) var(--ease-out), transform var(--d-slow) var(--ease-out); }
.js [data-reveal].is-in { opacity: 1; transform: none; }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important; scroll-behavior: auto !important; }
  .js [data-reveal] { opacity: 1; transform: none; }
}
@media (hover: none) { a, button { -webkit-tap-highlight-color: transparent; } }

[data-tema]:not(html) { color: var(--metin); }
