/* ═══════════════════════════════════════
   PREMIUM OVERRIDE — Velo Theme
   Loads after style.css; do not edit style.css
   ═══════════════════════════════════════ */

/* ── Design Tokens ───────────────────── */
:root {
  --color-bg:      #0f0f0f;
  --color-bg-alt:  #111111;
  --color-surface: #1a1a1a;
  --color-border:  #2a2a2a;
  --color-text:    #f5f5f0;
  --color-muted:   #777777;
  --color-gold:    #c9a84c;
  --font-display:  'Playfair Display', Georgia, serif;
  --font-body:     'Inter', system-ui, sans-serif;
  --font-mono:     'JetBrains Mono', 'Courier New', monospace;
  --section-padding: clamp(80px, 12vw, 140px);
  --max-width:     1200px;
}

/* ── Global ──────────────────────────── */
body,
html {
  background-color: var(--color-bg) !important;
  color: var(--color-text) !important;
  font-family: var(--font-body) !important;
  font-size: 1rem;
  line-height: 1.7;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.04'/%3E%3C/svg%3E");
}

* {
  border-radius: 0 !important;
  box-shadow: none !important;
}

h1, h2, h3, h4 {
  font-family: var(--font-display) !important;
  font-weight: 300;
  letter-spacing: -0.02em;
  line-height: 1.1;
}

a {
  color: var(--color-text) !important;
  text-decoration: none;
  transition: color 0.4s ease;
}

a:hover {
  color: var(--color-gold) !important;
}

/* Portfolio cards */
.portfolio-card img,
.project-card img {
  filter: brightness(0.75) saturate(0.8);
  transition: filter 0.5s ease;
}
.portfolio-card:hover img,
.project-card:hover img {
  filter: brightness(0.95) saturate(1);
}

/* Blog thumbnails */
.blog-card img,
.post-thumbnail img {
  filter: brightness(0.85);
  transition: filter 0.5s ease;
}
.blog-card:hover img,
.post-thumbnail:hover img {
  filter: brightness(1);
}

/* ── Scroll Reveal ───────────────────── */
.reveal {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.7s ease, transform 0.7s ease;
}

.reveal.visible {
  opacity: 1;
  transform: translateY(0);
}

/* ══════════════════════════════════════
   NAVIGATION
   ══════════════════════════════════════ */

.navbar-dark {
  background: transparent !important;
  height: 5rem !important;
  padding-left: 3rem !important;
  padding-right: 3rem !important;
  border-bottom: 1px solid transparent;
  transition: background 0.4s ease, border-color 0.4s ease, height 0.4s ease !important;
}

/* Scrolled state — both .scrolled (our JS) and .shrink (existing JS) */
.navbar-dark.scrolled,
.navbar-dark.shrink {
  background: var(--color-bg) !important;
  border-bottom: 1px solid var(--color-border) !important;
  height: 4.5rem !important;
}

.navbar-brand {
  font-family: var(--font-display) !important;
  font-size: 1.2rem !important;
  font-weight: 700;
  letter-spacing: 0.05em;
  color: var(--color-text) !important;
  text-transform: uppercase;
}

.navbar-dark.shrink .navbar-brand {
  font-size: 1.2rem !important;
}

.navbar-dark .nav-link {
  font-family: var(--font-mono) !important;
  font-size: 0.7rem !important;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  color: var(--color-muted) !important;
  margin-right: 1.5rem !important;
  border-bottom: 1px solid transparent;
  transition: color 0.4s ease, border-color 0.4s ease;
}

.navbar-dark .nav-link:hover {
  color: var(--color-text) !important;
  border-bottom: 1px solid var(--color-gold) !important;
}

.navbar-dark .active,
.navbar-dark .nav-link.active {
  color: var(--color-text) !important;
  border-bottom: 1px solid var(--color-gold) !important;
}

.navbar-dark.shrink .nav-link {
  color: var(--color-muted) !important;
}

.navbar-dark.shrink .active {
  color: var(--color-text) !important;
}

/* Mobile collapse drawer */
.collapse,
.navbar-collapse {
  background: var(--color-bg) !important;
}

@media screen and (max-width: 991px) {
  .collapse {
    background: var(--color-bg) !important;
    padding: 1.5rem 2rem;
    border-top: 1px solid var(--color-border);
  }
}

/* Hamburger icon visible on dark bg */
.navbar-toggler {
  border-color: var(--color-border) !important;
}

.navbar-toggler-icon {
  filter: invert(1);
}

/* ══════════════════════════════════════
   HERO (#home)
   ══════════════════════════════════════ */

#home {
  min-height: 100vh !important;
  height: auto !important;
  background-color: var(--color-bg) !important;
  position: relative;
}

#home .row {
  min-height: 100vh;
}

.home-left {
  background-color: var(--color-bg) !important;
  display: flex;
  align-items: center;
}

.left-content {
  text-align: left !important;
  float: none !important;
  position: static !important;
  transform: none !important;
  top: auto !important;
  padding: 2rem 3rem 2rem 2rem;
}

/* "Merhaba, Ben" greeting */
.hello {
  font-family: var(--font-mono) !important;
  font-size: 0.8rem !important;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  color: var(--color-muted) !important;
  font-weight: 400 !important;
  margin-bottom: 0.5rem !important;
}

/* Gold rule after greeting — inject via pseudo */
.hello::after {
  content: '';
  display: block;
  width: 50px;
  height: 1px;
  background: var(--color-gold);
  margin-top: 1rem;
  margin-bottom: 0.5rem;
}

/* Main name */
.main-name {
  font-family: var(--font-display) !important;
  font-size: clamp(4rem, 9vw, 8rem) !important;
  font-weight: 300 !important;
  letter-spacing: -0.03em !important;
  color: var(--color-text) !important;
  text-transform: none !important;
  margin-top: 0 !important;
  line-height: 1.05;
}

/* Occupation / typewrite */
.occupation {
  font-family: var(--font-body) !important;
  font-size: 1rem !important;
  color: var(--color-muted) !important;
  margin-top: 1rem !important;
  margin-bottom: 2.5rem !important;
}

/* CTA Buttons — ghost style */
.button-white,
.button-text,
.btn-link.button-text {
  background: transparent !important;
  background-color: transparent !important;
  color: var(--color-text) !important;
  border: 1px solid var(--color-border) !important;
  font-family: var(--font-mono) !important;
  font-size: 0.75rem !important;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  padding: 14px 36px !important;
  margin-right: 1rem;
  display: inline-block;
  transition: border-color 0.4s ease, color 0.4s ease;
  font-weight: 400 !important;
  text-decoration: none !important;
}

.button-white:hover,
.button-text:hover,
.btn-link.button-text:hover {
  border-color: var(--color-gold) !important;
  color: var(--color-gold) !important;
  background: transparent !important;
}

/* Right column portrait */
.home-right {
  background-color: var(--color-bg) !important;
  background-size: cover !important;
  background-position: center top !important;
  outline: 1px solid var(--color-border);
  outline-offset: 8px;
  min-height: 60vh;
}

/* Social icons */
.social-links .fab {
  color: var(--color-muted) !important;
  transition: color 0.4s ease;
}

.social-links .fab:hover {
  color: var(--color-gold) !important;
}

@media screen and (max-width: 991px) {
  .left-content {
    padding: 6rem 1.5rem 2rem;
    text-align: center !important;
  }

  .home-right {
    min-height: 50vw;
    outline: none;
  }

  .hello::after {
    margin: 1rem auto 0.5rem;
  }

  .main-name {
    font-size: clamp(3rem, 12vw, 5rem) !important;
  }
}

/* ══════════════════════════════════════
   ABOUT (#about)
   ══════════════════════════════════════ */

#about {
  background-color: var(--color-bg-alt) !important;
  padding: var(--section-padding) 0;
  position: relative;
  overflow: hidden;
}

#about::before {
  content: 'HAKKIMDA';
  font-family: var(--font-display);
  font-size: clamp(5rem, 15vw, 12rem);
  font-weight: 700;
  color: var(--color-text);
  opacity: 0.04;
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
  line-height: 1;
  z-index: 0;
  white-space: nowrap;
}

.about-img {
  width: 80% !important;
  float: none !important;
  margin: 2rem auto !important;
  display: block !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: 1px solid var(--color-gold);
  outline-offset: 10px;
  filter: grayscale(80%);
  transition: filter 0.4s ease;
}

.about-img:hover {
  filter: grayscale(0%);
}

.sections-title {
  font-family: var(--font-display) !important;
  color: var(--color-text) !important;
  font-weight: 300;
  letter-spacing: -0.02em;
}

.description {
  color: var(--color-muted) !important;
  line-height: 1.8;
  font-family: var(--font-body) !important;
  font-size: 1rem !important;
}

.hire-title {
  font-family: var(--font-display) !important;
  color: var(--color-text) !important;
  font-weight: 300;
}

.hire {
  color: var(--color-muted) !important;
  font-family: var(--font-body);
  transition: color 0.4s ease;
}

.hire:hover {
  color: var(--color-gold) !important;
}

/* ══════════════════════════════════════
   SERVICES (#services)
   ══════════════════════════════════════ */

#services {
  background-color: var(--color-bg) !important;
  padding: var(--section-padding) 0;
  position: relative;
  overflow: hidden;
}

#services::before {
  content: 'HİZMETLER';
  font-family: var(--font-display);
  font-size: clamp(5rem, 15vw, 12rem);
  font-weight: 700;
  color: var(--color-text);
  opacity: 0.04;
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
  line-height: 1;
  z-index: 0;
  white-space: nowrap;
}

/* Services card list style */
.services-card {
  background: transparent !important;
  background-image: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  border: none !important;
  border-top: 1px solid var(--color-border) !important;
  padding: 2.5rem 0 !important;
  margin: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  position: relative;
  color: var(--color-text) !important;
  transition: all 0.4s ease;
  counter-increment: service-counter;
}

/* Last card gets bottom border */
.services-card:last-of-type {
  border-bottom: 1px solid var(--color-border) !important;
}

/* Numeral via CSS counter */
.services-card::before {
  content: counter(service-counter, decimal-leading-zero);
  font-family: var(--font-display) !important;
  font-size: 4rem;
  font-weight: 700;
  color: var(--color-gold);
  opacity: 0.5;
  line-height: 1;
  position: absolute;
  left: 0;
  top: 2.5rem;
  transition: opacity 0.4s ease;
}

/* Reset counter on the services container */
.row.justify-content-center.mr-1.ml-1 {
  counter-reset: service-counter;
  flex-direction: column !important;
  align-items: stretch !important;
  padding: 0 1.5rem;
}

/* Shift card content right to clear the numeral */
.services-card .row,
.services-card > p {
  padding-left: 7rem !important;
}

.services-card:hover::before {
  opacity: 1;
}

.card-title {
  font-family: var(--font-display) !important;
  font-size: 1.8rem !important;
  color: var(--color-text) !important;
  font-weight: 400;
  transition: color 0.4s ease;
}

.services-card:hover .card-title {
  color: var(--color-gold) !important;
}

.card-subtitle {
  font-family: var(--font-mono) !important;
  font-size: 0.7rem !important;
  color: var(--color-muted) !important;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  margin-top: 0.25rem !important;
  margin-bottom: 0.75rem !important;
}

.card-description {
  font-family: var(--font-body) !important;
  font-size: 0.9rem !important;
  color: var(--color-muted) !important;
  margin-bottom: 0.75rem !important;
}

.skills {
  font-family: var(--font-mono) !important;
  font-size: 0.7rem !important;
  color: var(--color-muted) !important;
  letter-spacing: 0.05em;
}

/* ══════════════════════════════════════
   PORTFOLIO (#portfolio)
   ══════════════════════════════════════ */

#portfolio {
  background-color: var(--color-bg-alt) !important;
  padding: var(--section-padding) 0;
  position: relative;
  overflow: hidden;
}

#portfolio::before {
  content: 'REFERANSLAR';
  font-family: var(--font-display);
  font-size: clamp(5rem, 15vw, 12rem);
  font-weight: 700;
  color: var(--color-text);
  opacity: 0.04;
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
  line-height: 1;
  z-index: 0;
  white-space: nowrap;
}

/* Override masonry columns with CSS grid */
.gallery {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 1.5rem !important;
  column-count: unset !important;
  -webkit-column-count: unset !important;
  -moz-column-count: unset !important;
  column-width: unset !important;
  -webkit-column-width: unset !important;
  -moz-column-width: unset !important;
}

.gallery a {
  display: block;
}

.filter {
  margin-bottom: 0 !important;
  break-inside: avoid;
}

.img-container {
  border: 1px solid var(--color-border) !important;
  overflow: hidden;
  transition: border-color 0.4s ease;
}

.img-container:hover {
  border-left: 3px solid var(--color-gold) !important;
}

.portfolio-img {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover !important;
  filter: grayscale(100%);
  transition: filter 0.4s ease;
  height: auto !important;
}

.img-container:hover .portfolio-img {
  filter: grayscale(0%);
}

.overlay {
  background-color: var(--color-bg) !important;
  opacity: 0;
  transition: opacity 0.4s ease;
}

.img-container:hover .overlay {
  opacity: 0.85;
}

.img-hover-subtitle {
  font-family: var(--font-mono) !important;
  font-size: 0.65rem !important;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  color: var(--color-gold) !important;
  margin-bottom: 2rem;
}

.img-hover-title {
  font-family: var(--font-display) !important;
  font-size: 1.1rem !important;
  font-weight: 400;
  color: var(--color-text) !important;
  margin-bottom: 4rem;
}

.img-hover-subtitle a,
.img-hover-title a {
  color: inherit !important;
}

/* "Hepsini Gör" button */
.btnorta .button-white {
  margin-top: 2rem !important;
}

@media screen and (max-width: 768px) {
  .gallery {
    grid-template-columns: 1fr !important;
  }
}

@media screen and (min-width: 769px) and (max-width: 1024px) {
  .gallery {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

/* ══════════════════════════════════════
   BLOG (#blog)
   ══════════════════════════════════════ */

#blog {
  background-color: var(--color-bg) !important;
  color: var(--color-text) !important;
}

.blog-article {
  color: var(--color-text) !important;
}

.article-title {
  font-family: var(--font-display) !important;
  color: var(--color-text) !important;
  font-weight: 300;
}

/* ══════════════════════════════════════
   CONTACT (#contact)
   ══════════════════════════════════════ */

#contact {
  background-color: var(--color-bg) !important;
  color: var(--color-text) !important;
  position: relative;
  overflow: hidden;
}

#contact::before {
  content: 'İLETİŞİM';
  font-family: var(--font-display);
  font-size: clamp(5rem, 15vw, 12rem);
  font-weight: 700;
  color: var(--color-text);
  opacity: 0.04;
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
  line-height: 1;
  z-index: 0;
  white-space: nowrap;
}

/* Large heading override in contact */
#contact .sections-title {
  font-family: var(--font-display) !important;
  font-size: clamp(3rem, 7vw, 6rem) !important;
  font-weight: 300 !important;
  color: var(--color-text) !important;
  overflow: hidden;
}

/* Gold rule below heading */
#contact .sections-title::after {
  content: '';
  display: block;
  width: 80px;
  height: 1px;
  background: var(--color-gold);
  margin: 1.5rem 0;
}

.contact-description {
  color: var(--color-muted) !important;
  font-family: var(--font-body);
}

#contact a {
  color: var(--color-text) !important;
  transition: color 0.4s ease;
}

#contact a:hover {
  color: var(--color-gold) !important;
}

/* Inputs — all sources */
input,
textarea,
body input,
body textarea {
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  border-bottom: 1px solid var(--color-border) !important;
  color: var(--color-text) !important;
  font-family: var(--font-body) !important;
  padding: 1rem 0 !important;
  margin-top: 1.5rem !important;
}

input:focus,
textarea:focus {
  border-bottom-color: var(--color-gold) !important;
  outline: none !important;
  box-shadow: none !important;
}

/* Contact Form 7 inputs */
.wpcf7 input[type=text],
.wpcf7 input[type=email],
.wpcf7 textarea {
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  border-bottom: 1px solid var(--color-border) !important;
  color: var(--color-text) !important;
  font-family: var(--font-body) !important;
  padding: 1rem 0 !important;
}

.wpcf7 input[type=text]:focus,
.wpcf7 input[type=email]:focus,
.wpcf7 textarea:focus {
  border-bottom-color: var(--color-gold) !important;
  outline: none !important;
}

/* Submit button */
.wpcf7 input[type=submit] {
  background: var(--color-gold) !important;
  background-color: var(--color-gold) !important;
  color: #000 !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 16px 48px !important;
  font-family: var(--font-mono) !important;
  font-size: 0.8rem !important;
  font-weight: 400 !important;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  cursor: pointer;
  transition: background 0.4s ease;
}

.wpcf7 input[type=submit]:hover {
  background: var(--color-text) !important;
  background-color: var(--color-text) !important;
  color: #000 !important;
}

.findme-links a {
  color: var(--color-muted) !important;
  transition: color 0.4s ease;
}

.findme-links a:hover {
  color: var(--color-gold) !important;
}

/* ══════════════════════════════════════
   FOOTER
   ══════════════════════════════════════ */

.footer {
  background-color: #080808 !important;
  color: var(--color-muted) !important;
  border-top: 1px solid var(--color-border) !important;
  margin-top: 0 !important;
}

.footer a {
  font-family: var(--font-mono);
  font-size: 0.7rem;
  color: var(--color-muted) !important;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  transition: color 0.4s ease;
}

.footer a:hover {
  color: var(--color-gold) !important;
}

/* ══════════════════════════════════════
   SINGLE PROJECT PAGE
   ══════════════════════════════════════ */

.post-header {
  border-bottom: 1px solid var(--color-border);
}

#color-overlay {
  background-color: var(--color-bg) !important;
  opacity: 0.92;
}

.post-title {
  font-family: var(--font-display) !important;
  color: var(--color-text) !important;
  font-weight: 300;
}

/* ══════════════════════════════════════
   PORTFOLIO FILTER NAV
   ══════════════════════════════════════ */

.portfolio-nav .active {
  color: var(--color-gold) !important;
  background-color: transparent !important;
}

.portfolio-nav a,
.portfolio-nav .nav-item {
  color: var(--color-muted) !important;
  font-family: var(--font-mono);
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.portfolio-nav a:hover {
  color: var(--color-text) !important;
}

/* ══════════════════════════════════════
   404 PAGE
   ══════════════════════════════════════ */

.error-title {
  font-family: var(--font-display) !important;
  color: var(--color-text) !important;
}

.error-container {
  background-color: var(--color-bg);
}
