/*
Theme Name: Gizem Baskı
Theme URI: https://example.com/gizem-baski
Author: Gizem Baskı
Author URI: https://example.com
Description: Tişört, transfer ve dijital tekstil baskısı yapan Gizem Baskı için özel olarak tasarlanmış, bol animasyonlu, çok sayfalı bir WordPress temasi.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: pressforge
*/

/* ==========================================================================
   TOKENS
   ========================================================================== */
:root{
  --ink: #111111;
  --ink-soft: #262422;
  --paper: #FFFFFF;
  --paper-dim: #F3F3F1;
  --press-red: #CF3A5C;
  --press-red-dark: #A82C48;
  --steel: #2E4057;
  --steel-light: #48607F;
  --foil: #C9A227;
  --muted: #6B6B6B;
  --line: rgba(17,17,17,0.12);
  --line-on-dark: rgba(255,255,255,0.16);

  --font-display: "Archivo Black", "Arial Black", sans-serif;
  --font-body: "Work Sans", "Segoe UI", sans-serif;
  --font-mono: "JetBrains Mono", "Courier New", monospace;

  --radius: 2px;
  --ease: cubic-bezier(.16,.84,.44,1);
  --dur: .7s;
}

*,*::before,*::after{ box-sizing: border-box; }
html{ scroll-behavior: smooth; }
body{
  margin:0;
  background: var(--paper);
  color: var(--ink);
  font-family: var(--font-body);
  font-size: 17px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
img{ max-width:100%; display:block; }
a{ color: inherit; text-decoration:none; }
ul{ list-style:none; margin:0; padding:0; }
button{ font-family: inherit; cursor:pointer; }

h1,h2,h3,h4{
  font-family: var(--font-display);
  text-transform: uppercase;
  letter-spacing: -0.01em;
  line-height: 1.05;
  margin: 0 0 .5em;
}
h1{ font-size: clamp(2.4rem, 6vw, 5.2rem); }
h2{ font-size: clamp(1.8rem, 4vw, 3.2rem); }
h3{ font-size: 1.3rem; }
p{ margin:0 0 1em; color: var(--ink-soft); }
.eyebrow{
  font-family: var(--font-mono);
  font-size: .78rem;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--press-red);
  display:flex; align-items:center; gap:.6em;
  margin-bottom: 1em;
}
.eyebrow::before{
  content:"";
  width: 22px; height: 2px;
  background: var(--press-red);
  display:inline-block;
}

:focus-visible{ outline: 3px solid var(--press-red); outline-offset: 2px; }

.container{ max-width: 1180px; margin: 0 auto; padding: 0 28px; }
.section{ padding: 110px 0; position: relative; }
.section--tight{ padding: 70px 0; }
.section--dark{ background: var(--ink); color: var(--paper); }
.section--dark p{ color: rgba(255,255,255,0.72); }
.section--dark h2, .section--dark h3{ color: var(--paper); }
.section--dim{ background: var(--paper-dim); }

@media (prefers-reduced-motion: reduce){
  *{ animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; scroll-behavior:auto !important; }
}

/* ==========================================================================
   CROP MARKS / REGISTRATION SIGNATURE
   ========================================================================== */
.crop{
  position:relative;
}
.crop::before,.crop::after,
.crop .crop-tl, .crop .crop-tr, .crop .crop-bl, .crop .crop-br{
  content:"";
  position:absolute;
  width:16px; height:16px;
  border: 1.5px solid var(--press-red);
  opacity:.55;
}
.crop::before{ top:-8px; left:-8px; border-right:none; border-bottom:none; }
.crop::after{ bottom:-8px; right:-8px; border-left:none; border-top:none; }

.reg-dot{
  display:inline-flex; align-items:center; justify-content:center;
  width: 46px; height:46px; border-radius:50%;
  border: 1px solid var(--line-on-dark);
  font-family: var(--font-mono); font-size:.7rem; color: var(--foil);
}

/* CMYK registration animation for hero */
.press-mark{
  position: relative;
  display:inline-block;
}
.press-mark span{
  position:absolute; inset:0;
  mix-blend-mode: multiply;
}
.press-mark .c{ color: #00AEEF; transform: translate(-3px,0); }
.press-mark .m{ color: #EC008C; transform: translate(3px,0); }
.press-mark .y{ color: #FFF200; transform: translate(0,-3px); }
.press-mark .k{ color: var(--ink); position:relative; }
.press-mark.aligned .c,
.press-mark.aligned .m,
.press-mark.aligned .y{
  transform: translate(0,0);
  transition: transform 1.1s var(--ease);
}

/* ==========================================================================
   HEADER
   ========================================================================== */
.site-header{
  position: fixed; top:0; left:0; right:0; z-index: 500;
  background: var(--paper);
  border-bottom: 1px solid var(--line);
  transition: background .35s var(--ease), border-color .35s var(--ease), backdrop-filter .35s var(--ease);
}
.site-header.is-dark{
  background: linear-gradient(to bottom, rgba(10,10,10,.5) 0%, rgba(10,10,10,.22) 65%, rgba(10,10,10,0) 100%);
  border-bottom-color: transparent;
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
}
.site-header.is-dark .site-branding, .site-header.is-dark .main-nav a, .site-header.is-dark .header-cta{ color: var(--paper); text-shadow: 0 1px 4px rgba(0,0,0,.55); }
.site-header.is-dark .header-cta{ border-color: rgba(255,255,255,.7); }
.site-header .container{
  display:flex; align-items:center; justify-content:space-between;
  height: 116px;
}
.site-header-left{ display:flex; align-items:center; gap: 44px; }
.site-header-right{ display:flex; align-items:center; gap: 22px; }
.site-branding{
  font-family: var(--font-display);
  font-size: 1.15rem;
  text-transform:uppercase;
  letter-spacing:.02em;
  display:flex; align-items:center; gap:10px;
}
.site-branding .mark{ color: var(--press-red); }
.site-logo-link{ display:flex; align-items:center; }
.site-logo-img{ height: 92px; width:auto; display:block; }
.custom-logo-link img{ height: 92px; width:auto; }
@media (max-width: 880px){
  .site-logo-img, .custom-logo-link img{ height: 68px; }
}
.header-social{ display:flex; align-items:center; gap:14px; }
.header-social a{ color: var(--ink); display:flex; }
.site-header.is-dark .header-social a{ color: var(--paper); }
.header-social a:hover{ color: var(--press-red); }
@media (max-width: 880px){
  .header-social{ display:none; }
}
.main-nav ul{ display:flex; gap: 34px; }
.main-nav a{
  font-family: var(--font-mono); font-size:.82rem; text-transform:uppercase; letter-spacing:.06em;
  position:relative; padding: 6px 0;
}
.main-nav a::after{
  content:""; position:absolute; left:0; bottom:0; height:2px; width:0;
  background: var(--press-red); transition: width .3s var(--ease);
}
.main-nav a:hover::after, .main-nav a.current::after{ width:100%; }
.header-cta{
  font-family: var(--font-mono); font-size:.8rem; text-transform:uppercase;
  border:1.5px solid var(--ink); padding: 10px 20px; letter-spacing:.05em;
  transition: background .3s, color .3s;
}
.header-cta:hover{ background: var(--press-red); border-color: var(--press-red); color:#fff; }
.menu-toggle{ display:none; background:none; border:none; width:32px; height:22px; position:relative; }
.menu-toggle span{ position:absolute; left:0; right:0; height:2px; background:var(--ink); transition:.3s; }
.menu-toggle span:nth-child(1){ top:0; }
.menu-toggle span:nth-child(2){ top:10px; }
.menu-toggle span:nth-child(3){ top:20px; }
.site-header.is-dark .menu-toggle span{ background: var(--paper); }

@media (max-width: 880px){
  .main-nav{
    position:fixed; top:116px; right:0; bottom:0; left:0;
    width:100%; height:calc(100% - 116px);
    background: var(--ink); background-color: var(--ink);
    z-index: 499;
    overflow-y:auto;
    transform: translateX(100%); transition: transform .45s var(--ease);
    padding: 40px 28px;
  }
  .main-nav.is-open{ transform: translateX(0); }
  .main-nav ul{ flex-direction:column; gap:22px; }
  .main-nav a{ color: var(--paper); font-size:1.1rem; }
  .header-cta{ display:none; }
  .menu-toggle{ display:block; }
}

.pf-ux-builder-edit{
  position: fixed; top: 14px; right: 14px; z-index: 9999;
  background: var(--press-red); color:#fff !important;
  font-family: var(--font-mono); font-size:.72rem; text-transform:uppercase;
  letter-spacing:.04em; padding: 8px 14px; border-radius: 999px;
  box-shadow: 0 4px 14px rgba(0,0,0,.25);
  text-decoration: none; opacity:.92; transition: opacity .2s, transform .2s;
}
.pf-ux-builder-edit:hover{ opacity:1; transform: translateY(-1px); }
@media (max-width: 600px){
  .pf-ux-builder-edit{ font-size:.62rem; padding:6px 10px; }
}

/* ==========================================================================
   HERO
   ========================================================================== */
.hero{
  min-height: 100vh;
  display:flex; align-items:center;
  background: var(--ink); color: var(--paper);
  position:relative; overflow:hidden;
  padding-top: 116px;
}
.hero::before{
  content:""; position:absolute; inset:0;
  background-image:
    repeating-linear-gradient(0deg, transparent, transparent 39px, rgba(255,255,255,.05) 40px),
    repeating-linear-gradient(90deg, transparent, transparent 39px, rgba(255,255,255,.05) 40px);
  pointer-events:none;
}
.hero-video{
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0;
}
.hero-video-overlay{
  position:absolute; inset:0; z-index:1;
  background: linear-gradient(180deg, rgba(17,17,17,.55), rgba(17,17,17,.82));
}
/* Animated background slider (header/hero) — crossfades portfolio shots behind the hero copy */
.hero-slider{ position:absolute; inset:0; z-index:0; }
.hero-slide{
  position:absolute; inset:0; opacity:0;
  transition: opacity 1.4s var(--ease);
}
.hero-slide.is-active{ opacity:1; }
.hero-slide img{ width:100%; height:100%; object-fit:cover; }
.hero-grid{
  display:grid; grid-template-columns: 1.3fr .7fr; gap: 60px; align-items:end;
  position:relative; z-index:2;
}
.hero-kicker{ font-family:var(--font-mono); color:var(--foil); font-size:.85rem; letter-spacing:.2em; text-transform:uppercase; margin-bottom:22px;}
.hero h1{ margin-bottom: .3em; }
.hero h1 .press-mark{ display:block; }
.hero-sub{ font-size:1.15rem; max-width: 480px; color: rgba(255,255,255,.75); }
.hero-actions{ display:flex; gap:18px; margin-top: 34px; flex-wrap:wrap; }
.btn{
  font-family: var(--font-mono); font-size:.85rem; text-transform:uppercase; letter-spacing:.05em;
  padding: 15px 30px; border-radius: var(--radius); display:inline-flex; align-items:center; gap:10px;
  transition: transform .3s var(--ease), background .3s, color .3s;
}
.btn--primary{ background: var(--press-red); color:#fff; }
.btn--primary:hover{ transform: translateY(-3px); background: var(--press-red-dark); }
.btn--outline{ border: 1.5px solid var(--line-on-dark); color: var(--paper); }
.btn--outline:hover{ transform: translateY(-3px); border-color: var(--paper); }
.hero-specs{
  font-family: var(--font-mono); font-size:.78rem; color: rgba(255,255,255,.6);
  display:flex; flex-direction:column; gap: 10px; border-left: 1px solid var(--line-on-dark); padding-left: 22px;
}
.hero-scroll{
  position:absolute; bottom: 34px; left:50%; transform:translateX(-50%);
  font-family:var(--font-mono); font-size:.7rem; color: rgba(255,255,255,.5); letter-spacing:.2em;
  display:flex; flex-direction:column; align-items:center; gap:8px;
}
.hero-scroll .line{ width:1px; height:34px; background: rgba(255,255,255,.4); animation: scrolldown 1.8s var(--ease) infinite; }
@keyframes scrolldown{ 0%{ transform:scaleY(0); transform-origin:top;} 50%{transform:scaleY(1); transform-origin:top;} 51%{transform-origin:bottom;} 100%{transform:scaleY(0); transform-origin:bottom;} }

@media (max-width: 880px){
  .hero-grid{ grid-template-columns:1fr; }
  .hero-specs{ border-left:none; border-top:1px solid var(--line-on-dark); padding-left:0; padding-top:18px; flex-direction:row; flex-wrap:wrap; }
}

/* ==========================================================================
   REVEAL / SCROLL ANIMATION
   ========================================================================== */
[data-reveal]{
  opacity:0; transform: translateY(36px);
  transition: opacity var(--dur) var(--ease), transform var(--dur) var(--ease);
}
[data-reveal].is-visible{ opacity:1; transform:none; }
[data-reveal="scale"]{ transform: scale(.92); }
[data-reveal="scale"].is-visible{ transform: scale(1); }
[data-reveal="left"]{ transform: translateX(-46px); }
[data-reveal="left"].is-visible{ transform:none; }
[data-reveal="right"]{ transform: translateX(46px); }
[data-reveal="right"].is-visible{ transform:none; }

/* ==========================================================================
   KATEGORİ BANNER (Anasayfa — 3 renkli kart bölümü)
   ========================================================================== */
.kategori-banner{ padding: 60px 0; }
.kategori-banner .grid{ gap: 24px; }
.kategori-card{
  position: relative; overflow: hidden; border-radius: 18px;
  min-height: 320px; display:flex; align-items:center;
  padding: 40px; color: var(--paper);
}
.kategori-card .kategori-content{ position:relative; z-index:2; max-width: 60%; }
.kategori-card h3{ color: var(--paper); font-size: 1.5rem; margin-bottom: 12px; line-height:1.2; }
.kategori-card p{ color: rgba(255,255,255,.92); font-size: .95rem; margin-bottom: 22px; }
.kategori-card .btn{
  display:inline-flex; align-items:center; gap:8px;
  background: var(--paper); color: var(--ink);
  font-family: var(--font-mono); font-size:.78rem; text-transform:uppercase; letter-spacing:.05em;
  padding: 12px 22px; border-radius: 999px; transition: transform .25s var(--ease);
}
.kategori-card .btn:hover{ transform: translateY(-2px); }
.kategori-card .kategori-img{
  position:absolute; right: -10px; bottom:0; height: 88%; width:auto;
  max-width: 55%; object-fit: contain; z-index:1;
}
.kategori-card--1{ background: linear-gradient(135deg,#F6B79B,#F2A57F); }
.kategori-card--2{ background: linear-gradient(135deg,#F16B6B,#EE5A5A); }
.kategori-card--3{ background: linear-gradient(135deg,#F49AC2,#EE7FB2); }
@media (max-width: 960px){
  .kategori-banner .grid--3{ grid-template-columns: repeat(2,1fr); }
  .kategori-card .kategori-content{ max-width:65%; }
}
@media (max-width: 640px){
  .kategori-banner .grid--3{ grid-template-columns: 1fr; }
  .kategori-card{ min-height: 260px; padding: 28px; }
  .kategori-card .kategori-content{ max-width:100%; }
  .kategori-card .kategori-img{ position:static; display:block; margin: 18px auto 0; height:auto; width:60%; max-width:60%; }
  .kategori-card{ flex-direction:column; align-items:flex-start; }
}

/* ==========================================================================
   CARDS / GRIDS
   ========================================================================== */
.grid{ display:grid; gap: 30px; }
.grid--3{ grid-template-columns: repeat(3,1fr); }
.grid--2{ grid-template-columns: repeat(2,1fr); }
.grid--4{ grid-template-columns: repeat(4,1fr); }
@media (max-width:960px){ .grid--3,.grid--4{ grid-template-columns: repeat(2,1fr);} }
@media (max-width:640px){ .grid--3,.grid--4,.grid--2{ grid-template-columns: 1fr;} }

.service-card{
  background: var(--paper); border: 1px solid var(--line); padding: 38px 30px;
  position:relative; transition: transform .4s var(--ease), border-color .4s;
}
.service-card:hover{ transform: translateY(-8px); border-color: var(--press-red); }
.service-card .idx{ font-family:var(--font-mono); font-size:.75rem; color: var(--muted); }
.service-card h3{ margin-top:14px; }
.service-card .icon{ width:44px; height:44px; margin-bottom:18px; color: var(--press-red); }

.stat{ text-align:left; }
.stat .num{ font-family: var(--font-display); font-size: clamp(2.4rem,5vw,3.6rem); color: var(--press-red); display:block; }
.stat .label{ font-family: var(--font-mono); font-size:.78rem; text-transform:uppercase; letter-spacing:.06em; color: rgba(255,255,255,.6); }

/* Portfolio */
.port-item{ position:relative; overflow:hidden; aspect-ratio: 4/3; background: var(--ink-soft); }
.port-item img{ width:100%; height:100%; object-fit:cover; transition: transform .7s var(--ease), filter .5s; filter: grayscale(.5) contrast(1.05); }
.port-item:hover img{ transform: scale(1.08); filter: grayscale(0); }
.port-overlay{
  position:absolute; inset:auto 0 0 0; padding: 20px 22px; color:#fff;
  background: linear-gradient(0deg, rgba(0,0,0,.82), transparent);
  transform: translateY(60%); opacity:0; transition: transform .4s var(--ease), opacity .4s;
}
.port-item:hover .port-overlay{ transform:none; opacity:1; }
.port-overlay .cat{ font-family:var(--font-mono); font-size:.7rem; color: var(--foil); text-transform:uppercase; letter-spacing:.1em; }
.port-item{ cursor: zoom-in; }

/* Gallery slider (ana sayfa) */
.pf-slider{ position:relative; }
.pf-slider-viewport{ overflow:hidden; }
.pf-slider-track{ display:flex; transition: transform .6s var(--ease); }
.pf-slide{ flex: 0 0 100%; position:relative; aspect-ratio: 16/9; background: var(--ink-soft); overflow:hidden; }
.pf-slide img, .pf-slide video{ width:100%; height:100%; object-fit:cover; }
.pf-slide .port-overlay{ opacity:1; transform:none; padding:26px 30px; }
.pf-slide .cat{ font-family:var(--font-mono); font-size:.72rem; color: var(--foil); text-transform:uppercase; letter-spacing:.1em; }
.pf-slide .video-badge{
  position:absolute; top:18px; right:18px; background: var(--press-red); color:#fff;
  font-family:var(--font-mono); font-size:.68rem; text-transform:uppercase; letter-spacing:.06em;
  padding:6px 12px; display:flex; align-items:center; gap:6px;
}
.pf-slider-nav{
  position:absolute; top:50%; transform:translateY(-50%); width:46px; height:46px;
  background: rgba(255,255,255,.9); border:none; border-radius:50%; display:flex; align-items:center; justify-content:center;
  cursor:pointer; font-size:1.1rem; color: var(--ink); transition: background .3s, transform .3s;
  z-index:3;
}
.pf-slider-nav:hover{ background:#fff; transform:translateY(-50%) scale(1.08); }
.pf-slider-nav--prev{ left:16px; }
.pf-slider-nav--next{ right:16px; }
.pf-slider-dots{ display:flex; justify-content:center; gap:10px; margin-top:20px; }
.pf-slider-dots button{
  width:10px; height:10px; border-radius:50%; border:1.5px solid var(--ink); background:transparent; padding:0; cursor:pointer;
  transition: background .3s;
}
.pf-slider-dots button.is-active{ background: var(--press-red); border-color: var(--press-red); }

/* Lightbox (portfolyo sayfası galerisi) */
.pf-lightbox{
  position:fixed; inset:0; z-index:2000; background: rgba(26,26,26,.94);
  display:flex; align-items:center; justify-content:center;
  opacity:0; visibility:hidden; transition: opacity .3s;
}
.pf-lightbox.is-open{ opacity:1; visibility:visible; }
.pf-lightbox img{ max-width:88vw; max-height:82vh; object-fit:contain; }
.pf-lightbox-close{
  position:absolute; top:24px; right:28px; width:44px; height:44px; border-radius:50%;
  background: rgba(255,255,255,.14); border:1px solid var(--line-on-dark); color:#fff;
  font-size:1.3rem; cursor:pointer; display:flex; align-items:center; justify-content:center;
}
.pf-lightbox-nav{
  position:absolute; top:50%; transform:translateY(-50%); width:52px; height:52px; border-radius:50%;
  background: rgba(255,255,255,.14); border:1px solid var(--line-on-dark); color:#fff;
  font-size:1.4rem; cursor:pointer; display:flex; align-items:center; justify-content:center;
}
.pf-lightbox-nav--prev{ left:20px; }
.pf-lightbox-nav--next{ right:20px; }
.pf-lightbox-caption{
  position:absolute; bottom:26px; left:0; right:0; text-align:center; color: rgba(255,255,255,.75);
  font-family:var(--font-mono); font-size:.8rem; text-transform:uppercase; letter-spacing:.06em;
}

/* Pricing */
.price-card{
  border:1px solid var(--line); padding: 40px 32px; background: var(--paper); position:relative; display:flex; flex-direction:column;
  transition: transform .4s var(--ease), box-shadow .4s;
}
.price-card--featured{ background: var(--ink); color: var(--paper); border-color: var(--ink); transform: scale(1.04); }
.price-card--featured p{ color: rgba(255,255,255,.7); }
.price-card--featured .price-tag{ color: var(--foil); }
.price-card:hover{ transform: translateY(-6px); }
.price-card--featured:hover{ transform: scale(1.04) translateY(-6px); }
.price-tag{ font-family: var(--font-display); font-size: 2.6rem; color: var(--press-red); margin: 14px 0; }
.price-tag small{ font-family: var(--font-mono); font-size:.9rem; text-transform:none; }
.price-list{ margin: 22px 0; flex:1; }
.price-list li{ padding: 9px 0; border-top: 1px solid var(--line); font-size:.95rem; display:flex; gap:10px; }
.price-card--featured .price-list li{ border-color: var(--line-on-dark); }
.badge{
  position:absolute; top:-14px; right:28px; background: var(--foil); color:var(--ink);
  font-family:var(--font-mono); font-size:.7rem; padding:6px 14px; letter-spacing:.06em; text-transform:uppercase;
}

/* Process timeline (genuinely sequential -> numbering justified) */
.process{ display:flex; flex-direction:column; }
.process-step{
  display:grid; grid-template-columns: 90px 1fr; gap: 30px; padding: 34px 0; border-top:1px solid var(--line-on-dark);
}
.process-step:last-child{ border-bottom: 1px solid var(--line-on-dark); }
.process-step .num{ font-family: var(--font-mono); font-size:1.4rem; color: var(--press-red); }

/* Testimonials */
.testi{ background: var(--paper); border:1px solid var(--line); padding:34px; }
.testi .quote{ font-family: var(--font-display); font-size:1.05rem; text-transform:none; letter-spacing:0; line-height:1.4; }
.testi .who{ font-family: var(--font-mono); font-size:.78rem; color: var(--muted); margin-top:18px; text-transform:uppercase; }

/* Team */
.team-card{ position:relative; }
.team-card .photo{ aspect-ratio:3/4; background:var(--paper-dim); overflow:hidden; }
.team-card .photo img{ width:100%; height:100%; object-fit:cover; filter:grayscale(1); transition:filter .4s; }
.team-card:hover .photo img{ filter:grayscale(0); }
.team-card h3{ margin-top:16px; font-size:1.05rem; }
.team-card .role{ font-family:var(--font-mono); font-size:.78rem; color:var(--press-red); text-transform:uppercase; }

/* Forms */
.form-row{ display:grid; grid-template-columns: 1fr 1fr; gap: 20px; }
@media (max-width:640px){ .form-row{ grid-template-columns:1fr; } }
.field{ margin-bottom: 22px; }
.field label{ display:block; font-family:var(--font-mono); font-size:.75rem; text-transform:uppercase; letter-spacing:.05em; margin-bottom:8px; color: var(--muted); }
.field input, .field select, .field textarea{
  width:100%; background:transparent; border:none; border-bottom: 1.5px solid var(--line);
  padding: 12px 2px; font-family: var(--font-body); font-size:1rem; color: var(--ink);
  transition: border-color .3s;
}
.section--dark .field input, .section--dark .field select, .section--dark .field textarea{ border-bottom-color: var(--line-on-dark); color: var(--paper); }
.field input:focus, .field select:focus, .field textarea:focus{ border-color: var(--press-red); outline:none; }
.field textarea{ resize:vertical; min-height:120px; }

/* Counter / marquee */
.marquee{ overflow:hidden; border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding: 18px 0; }
.marquee-track{ display:flex; gap: 60px; width:max-content; animation: marquee 26s linear infinite; }
.marquee-track span{ font-family: var(--font-mono); font-size:.85rem; text-transform:uppercase; letter-spacing:.08em; color: var(--muted); white-space:nowrap; }
@keyframes marquee{ from{ transform:translateX(0); } to{ transform:translateX(-50%); } }

/* Footer */
.site-footer{ background: var(--ink); color: var(--paper); padding: 80px 0 30px; }
.site-footer p{ color: rgba(255,255,255,.72); }
.site-logo-img--footer{ height: 84px; }
.footer-grid{ display:grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: 40px; margin-bottom: 60px; }
.footer-grid h4{ font-size:.85rem; letter-spacing:.08em; color: var(--foil); margin-bottom: 18px; }
.footer-grid ul li{ margin-bottom: 10px; }
.footer-grid ul a{ color: rgba(255,255,255,.72); font-size:.92rem; transition:color .3s; }
.footer-grid ul a:hover{ color: var(--paper); }
.footer-bottom{
  border-top: 1px solid var(--line-on-dark); padding-top: 26px;
  display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:14px;
  font-family: var(--font-mono); font-size:.75rem; color: rgba(255,255,255,.62); text-transform:uppercase; letter-spacing:.04em;
}
@media (max-width:880px){ .footer-grid{ grid-template-columns: 1fr 1fr; } }

/* Page header (inner pages) */
.page-header{
  padding: 170px 0 70px; background: var(--ink); color: var(--paper); position:relative; overflow:hidden;
}
.page-header .container{ position:relative; z-index:2; }
.page-header .crumb{ font-family: var(--font-mono); font-size:.78rem; color: rgba(255,255,255,.55); text-transform:uppercase; letter-spacing:.06em; margin-bottom: 14px; }

/* Custom cursor accent (desktop only) */
.press-dot{
  position: fixed; width:10px; height:10px; border-radius:50%; background: var(--press-red);
  pointer-events:none; z-index:9999; transform: translate(-50%,-50%); mix-blend-mode: difference;
  transition: transform .12s linear, width .25s, height .25s;
  display:none;
}
@media (min-width:1024px){ .press-dot{ display:block; } }
.press-dot.is-active{ width:26px; height:26px; }

/* WP core */
.alignwide{ max-width:1400px; }
.wp-block-image{ margin: 2em 0; }
.screen-reader-text{ position:absolute !important; clip:rect(1px,1px,1px,1px); overflow:hidden; height:1px; width:1px; }

/* ==========================================================================
   KUPA ÖNCESİ / SONRASI KARŞILAŞTIRMA
   ========================================================================== */
.before-after-wrap{ padding: 60px 0; }
.before-after{
  position:relative; max-width:440px; margin:0 auto; border-radius:20px;
  overflow:hidden; aspect-ratio:1/1; background: var(--paper-dim);
  box-shadow: 0 10px 40px rgba(0,0,0,.08);
}
.before-after img{ position:absolute; inset:0; width:100%; height:100%; object-fit:contain; padding:20px; }
.before-after .ba-after{ clip-path: inset(0 50% 0 0); }
.before-after .ba-handle{
  position:absolute; top:0; bottom:0; left:50%; width:2px; background:#fff;
  transform:translateX(-50%); pointer-events:none; box-shadow:0 0 0 1px rgba(0,0,0,.12);
}
.before-after .ba-handle::after{
  content:"⇔"; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%);
  width:40px; height:40px; background:#fff; border-radius:50%;
  display:flex; align-items:center; justify-content:center; font-size:1rem; color: var(--ink);
  box-shadow:0 2px 12px rgba(0,0,0,.22);
}
.before-after input[type="range"]{
  position:absolute; inset:0; width:100%; height:100%; margin:0; opacity:0; cursor:ew-resize;
  -webkit-appearance:none; appearance:none;
}
.before-after .ba-label{
  position:absolute; bottom:14px; z-index:3;
  font-family: var(--font-mono); font-size:.68rem; text-transform:uppercase; letter-spacing:.06em;
  background: rgba(17,17,17,.68); color:#fff; padding:5px 12px; border-radius:999px;
}
.before-after .ba-label--before{ left:14px; }
.before-after .ba-label--after{ right:14px; }

/* ==========================================================================
   YÖNETİLEN HERO SLIDER (Slider Yönetimi panelinden eklenen slaytlar)
   ========================================================================== */
.hero-slider--managed .hero-slide{ z-index:0; }
.hero-slide-overlay{
  position:absolute; inset:0; z-index:1;
  background: linear-gradient(180deg, rgba(17,17,17,.45), rgba(17,17,17,.8));
}
.hero-slide-content{
  position:relative; z-index:2;
  height:100%; width:100%;
  display:flex; flex-direction:column; justify-content:flex-end;
  padding-bottom: 90px; padding-top: 116px;
  max-width: 900px;
}
/* Slider Yönetimi panelinden fare ile sürüklenerek ayarlanan serbest metin konumu */
.hero-slide-content--free{
  position:absolute; z-index:2;
  display:flex; flex-direction:column; justify-content:center;
  width:min(640px, 88vw);
  height:auto; max-width:640px;
  padding:0; margin:0;
}
.hero-slide-content--free .hero-kicker,
.hero-slide-content--free .hero-actions{ width:100%; }
.hero-slide-content--free.pf-align-center{ text-align:center; }
.hero-slide-content--free.pf-align-right{ text-align:right; }
.hero-slide-content--free.pf-align-center .eyebrow,
.hero-slide-content--free.pf-align-center .hero-kicker{ justify-content:center; }
.hero-slide-content--free.pf-align-right .eyebrow,
.hero-slide-content--free.pf-align-right .hero-kicker{ justify-content:flex-end; }
.hero-slide-content--free.pf-align-center .hero-sub{ margin-left:auto; margin-right:auto; }
.hero-slide-content--free.pf-align-right .hero-sub{ margin-left:auto; }
.hero-slide-content--free.pf-align-center .hero-actions{ justify-content:center; }
.hero-slide-content--free.pf-align-right .hero-actions{ justify-content:flex-end; }

.hero-slide-content .hero-kicker{ margin-bottom: 18px; }
.hero-slide-content h1{ margin-bottom: .3em; font-size: clamp(2.2rem, 5vw, 4rem); }
.hero-slide-content .hero-sub{ max-width: 560px; }

/* Yazı boyutu seçenekleri (Slider Yönetimi'nden seçilir) */
.hero-slide-content--free.pf-size-small h1{ font-size: clamp(1.6rem, 3.6vw, 2.6rem); }
.hero-slide-content--free.pf-size-small .hero-sub{ font-size: 1rem; max-width:480px; }
.hero-slide-content--free.pf-size-medium h1{ font-size: clamp(2.2rem, 5vw, 3.8rem); }
.hero-slide-content--free.pf-size-large h1{ font-size: clamp(2.6rem, 6.4vw, 5.2rem); }
.hero-slide-content--free.pf-size-large .hero-sub{ font-size: 1.3rem; max-width:620px; }

/* Metin animasyon durumları */
.pf-anim-item{ opacity:0; will-change: transform, opacity; }
.hero-slide[data-animation="fade"] .pf-anim-item{ transition: opacity .7s var(--ease); }
.hero-slide[data-animation="fade"] .pf-anim-item.pf-anim-in{ opacity:1; }

.hero-slide[data-animation="up"] .pf-anim-item{ transform: translateY(36px); transition: opacity .7s var(--ease), transform .7s var(--ease); }
.hero-slide[data-animation="up"] .pf-anim-item.pf-anim-in{ opacity:1; transform:translateY(0); }

.hero-slide[data-animation="typewriter"] .pf-anim-item{ transition: opacity .6s var(--ease); }
.hero-slide[data-animation="typewriter"] .pf-anim-item.pf-anim-in{ opacity:1; }
.pf-typewriter-target::after{
  content:""; display:inline-block; width:3px; height:.9em; background: currentColor;
  margin-left:4px; vertical-align:-.1em; animation: pfCaretBlink 1s steps(1) infinite;
}

.hero-slide[data-animation="cmyk"] .pf-anim-item:not([data-anim-part="title"]){ transform: translateY(20px); transition: opacity .7s var(--ease), transform .7s var(--ease); }
.hero-slide[data-animation="cmyk"] .pf-anim-item.pf-anim-in:not([data-anim-part="title"]){ opacity:1; transform:translateY(0); }
.hero-slide[data-animation="cmyk"] .pf-anim-item[data-anim-part="title"]{ opacity:1; }

@keyframes pfCaretBlink{ 0%,49%{ opacity:1; } 50%,100%{ opacity:0; } }

/* Slider gezinme (dots + oklar) */
.hero-slider-nav{
  position:absolute; left:0; right:0; bottom: 34px; z-index:3;
  display:flex; align-items:center; justify-content:center; gap: 18px;
}
.hero-slider-dots{ display:flex; gap:10px; }
.hero-slider-dot{
  width:10px; height:10px; border-radius:50%; border:1.5px solid rgba(255,255,255,.6);
  background: transparent; padding:0; transition: background .3s, transform .3s;
}
.hero-slider-dot.is-active{ background: var(--press-red); border-color: var(--press-red); transform: scale(1.2); }
.hero-slider-arrow{
  background:none; border:1.5px solid rgba(255,255,255,.4); color:#fff;
  width:38px; height:38px; border-radius:50%; font-size:1.2rem; line-height:1;
  display:flex; align-items:center; justify-content:center; transition: background .3s, border-color .3s;
}
.hero-slider-arrow:hover{ background: rgba(255,255,255,.12); border-color:#fff; }

@media (prefers-reduced-motion: reduce){
  .pf-anim-item{ opacity:1 !important; transform:none !important; }
}

@media (max-width: 880px){
  .hero-slide-content{ padding-bottom: 120px; padding-top: 140px; }
  .hero-slider-nav{ bottom: 70px; gap:12px; }
  .hero-slider-arrow{ width:34px; height:34px; }
}
