/* Global Theme Overrides - Winsa / Nora Profil Brand */
:root {
  --color-primary: #FF6A00;
  --color-primary-dark: #D95700;
  --color-secondary: #003B6E;
  --color-secondary-dark: #002645;
  --color-accent: #FFD7B3;
  --color-bg-light: #F8F9FA;
  --color-bg-muted: #F1F2F3;
  --color-bg-dark: #0F1E2A;
  --color-text: #1F2A33;
  --color-text-muted: #5A6A78;
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 18px;
  --gradient-accent: linear-gradient(90deg,#FF6A00 0%, #FF8F3A 55%, #FFC9A1 100%);
  --gradient-deep: linear-gradient(135deg,#003B6E 0%, #002645 60%, #001728 100%);
}

/* Utility overrides so existing tailwind classes that rely on custom colors are aligned */
.text-primary { color: var(--color-primary) !important; }
.bg-primary { background-color: var(--color-primary) !important; }
.border-primary { border-color: var(--color-primary) !important; }
.hover\:bg-primary:hover { background-color: var(--color-primary) !important; }

/* Buttons */
.btn-brand {
  background: var(--gradient-accent);
  color:#fff;
  font-weight:600;
  padding:0.85rem 1.4rem;
  border-radius: var(--radius-md);
  box-shadow:0 4px 14px -4px rgba(0,0,0,.25);
  position:relative;
  overflow:hidden;
  transition:background .35s, transform .35s, box-shadow .35s;
}
.btn-brand::after {
  content:"";
  position:absolute; inset:0; opacity:0; background:linear-gradient(120deg, rgba(255,255,255,.2), rgba(255,255,255,0));
  transform:translateX(-40%);
  transition:opacity .4s, transform .6s;
}
.btn-brand:hover { transform:translateY(-3px); box-shadow:0 10px 26px -8px rgba(0,0,0,.35); }
.btn-brand:hover::after { opacity:1; transform:translateX(0); }
.btn-brand:active { transform:translateY(0); box-shadow:0 6px 16px -6px rgba(0,0,0,.35); }

/* Headings accent underline */
.heading-accent { position:relative; display:inline-block; }
.heading-accent::after {
  content:""; position:absolute; left:0; bottom:-10px; height:6px; width:70px;
  background: var(--gradient-accent); border-radius: var(--radius-sm);
  box-shadow:0 2px 6px -2px rgba(0,0,0,.35);
}

/* Text animation base state */
.animate-heading { opacity:0; transform:translateY(14px); }

/* Keyframes */
@keyframes fadeSlideUp {
  0% { opacity:0; transform:translateY(18px); }
  60% { opacity:1; }
  100% { opacity:1; transform:translateY(0); }
}

.in-view { animation:fadeSlideUp .75s cubic-bezier(.22,.65,.35,1) forwards; }

/* Flip card enhancements */
.flip-card-back .tech-overlay {
  /* Blur kaldırıldı: görsel keskinliği korumak için sadece yumuşak karartma gradyanı */
  background:linear-gradient(180deg, rgba(0,0,0,.55) 0%, rgba(0,0,0,.35) 45%, rgba(0,0,0,.18) 75%, rgba(0,0,0,0) 100%);
  /* backdrop-filter:blur(2px); */
  pointer-events:none;
}
.flip-card-back ul.tech-list li { display:flex; justify-content:space-between; gap:.5rem; }
.flip-card-back ul.tech-list li span { font-weight:600; }

/* Lazy background placeholder */
.lazy-bg { background-color:var(--color-bg-muted); position:relative; }
.lazy-bg[data-bg][data-loaded="false"]::before {
  content:""; position:absolute; inset:0; background:linear-gradient(90deg,#ffffff00 0%, #ffffff20 50%, #ffffff00 100%);
  animation:shimmer 1.2s linear infinite;
}
@keyframes shimmer { 0% { background-position:-200px 0; } 100% { background-position:200px 0; } }

/* Dark mode adjustments */
.dark .heading-accent::after { box-shadow:0 2px 10px -2px rgba(0,0,0,.6); }
.dark .btn-brand { box-shadow:0 4px 16px -4px rgba(0,0,0,.55); }
.dark .flip-card-back .tech-overlay { background:linear-gradient(180deg, rgba(0,0,0,.75) 0%, rgba(0,0,0,.5) 55%, rgba(0,0,0,.28) 85%, rgba(0,0,0,0) 100%); }

/* Responsive tweaks */
@media (min-width:1024px) {
  .btn-brand { padding:1rem 1.8rem; }
}

/* Tüm sayfa için yumuşak kaydırma */
html {
    scroll-behavior: smooth;
    /* Header yüksekliği (yaklaşık 80-100px) kadar pay bırakır, böylece başlıklar menünün altına girmez */
    scroll-padding-top: 100px; 
}