/*
Theme Name: Arer Tech
Theme URI: https://arertech.com
Template: arertech
Author: Arer Tech
Author URI: https://arertech.com
Description: Technology Consultancy WordPress Theme
Version: 3.3.4
Update URI: false
Requires at least: 6.2
Tested up to: 7.1
Requires PHP: 8.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: arertech31
*/

/* ==========================================================================
   EBEVEYN STİLİNİN YÜKLENMESİ
   Ebeveynin inc/assets.php dosyası tek stil dosyasını get_stylesheet_uri()
   ile kaydeder; WordPress bunu AKTİF temanın (çocuk aktifse çocuğun)
   style.css'ine çözer ve ebeveynin style.css'ini kendiliğinden YÜKLEMEZ.
   İlk uygulamada burada `@import url("../arertech/style.css")` vardı.
   Kaldırıldı: @import, tarayıcının önce bu dosyayı indirip ayrıştırmasını,
   ANCAK SONRA ebeveyn CSS'ini istemesini zorunlu kılar (seri hale gelen
   fazladan bir gidiş-dönüş). Yerine inc/assets.php içinde yerel WordPress
   enqueue zinciri kurulur: arertech-fonts → arertech31-parent → arertech-style.
   Böylece her iki dosya da <head> içinde paralel keşfedilebilir <link>
   olarak iner. Görsel sonuç birebir aynıdır.
   ========================================================================== */

/* ==========================================================================
   YAZI TİPİ YEDEKLERİ (metrik uyumlu)
   Kaynak: Arer tasarım sisteminin KENDİ tokens/fonts.css dosyası (v6 hattı).
   Gerçek yazı tipi yüklenene kadar metrikleri uyarlanmış yerel bir yedek
   kullanılır; yükleme bitince oluşan yeniden akış (reflow/CLS) en aza iner.
   SON GÖRÜNÜM DEĞİŞMEZ — yalnızca yükleme anındaki sıçrama azalır.
   KALICI NOT (sistemden birebir devralındı): bu src zincirleri TEK bir
   local() değerine indirgenmemelidir. Arial/Courier New çoğu Linux sisteminde
   yoktur; tek adlı zincir @font-face'in tamamen çözümsüz kalmasına ve metrik
   düzeltmelerinin hiç uygulanmamasına yol açar.
   ========================================================================== */
@font-face{font-family:"Space Grotesk Fallback";src:local("Arial"),local("Helvetica"),local("Liberation Sans"),local("Nimbus Sans");ascent-override:100%;descent-override:27%;line-gap-override:0%;size-adjust:104%}
@font-face{font-family:"Inter Fallback";src:local("Arial"),local("Helvetica"),local("Liberation Sans"),local("Nimbus Sans");ascent-override:90%;descent-override:22.5%;line-gap-override:0%;size-adjust:107%}
@font-face{font-family:"JetBrains Mono Fallback";src:local("Courier New"),local("Liberation Mono"),local("Nimbus Mono PS"),local("DejaVu Sans Mono");ascent-override:100%;descent-override:27%;line-gap-override:0%;size-adjust:99%}

:root{
  /* Ebeveynin yığınlarıyla AYNI sıralama; yalnızca metrik uyumlu yedek eklendi. */
  --f-head:'Space Grotesk','Space Grotesk Fallback',ui-sans-serif,system-ui,sans-serif;
  --f-body:'Inter','Inter Fallback',ui-sans-serif,system-ui,sans-serif;
  --f-mono:'JetBrains Mono','JetBrains Mono Fallback',ui-monospace,SFMono-Regular,monospace;
}

/* ==========================================================================
   ÖLÇÜLMÜŞ DÜZELTMELER
   Her biri yerel, gerçek WordPress + Firefox koşusunda ölçülmüş somut bir
   kusura dayanır (bkz. docs/SIGNATURE-VISUAL-QA.md). Yeni görsel dil
   tanıtmaz; yalnızca ebeveynin KENDİ kurallarının amacını yerine getirir.
   ========================================================================== */

/* [R1] Hizmet kartı görseli — 16/10 oranına uymayan bir kaynak görsel
   (ör. 768x500) kart medyasını ~7px uzatıyor; aynı satırdaki kartların
   etiket/başlık hizası kayıyordu (ölçüm: 175.6px'e karşı 183px, eyebrow
   1418px'e karşı 1425px). .card__media zaten `aspect-ratio:16/10` ilan
   ediyor; duotone sarmalayıcısı normal akışta kaldığı için bu oranı
   aşabiliyordu. Çözüm ebeveynin KENDİ deyimidir (.duo--fill): oran
   kutusunu mutlak konumla doldur. object-fit:cover zaten .duo>img'de
   tanımlı. */
.card__media>.duo,
.post__media>.duo,
.ref__media>.duo{position:absolute;inset:0}

/* [R2] "Neden biz" sıra numaraları: --blue-500 %55 opaklıkla --navy-900
   üzerinde ölçülen kontrast ~2.0:1 idi (axe: color-contrast, serious).
   26px/500 büyük metin eşiği 3:1'dir. Aynı mavi ailesinde kalınarak
   mevcut --blue-300 token'ına geçildi ve opaklık ayarlandı; sessiz
   dekoratif karakter korunur, ölçülen kontrast eşiği aşar. */
.why b{color:var(--blue-300);opacity:.68}

/* [R8] TranslatePress yüzen dil kutusu. Ebeveyn bunu `#trp-floater-ls` ile
   gizlemeye çalışıyor; güncel TranslatePress (3.3.8) bu kimliği değil
   `.trp-floating-switcher` sınıfını kullandığı için kural artık eşleşmiyor
   ve kutu, tasarımın öngördüğü başlık konumundaki alanın yanında görünür
   kalıyor (ölçüm: 54x57px, display:flex).
   KOŞULLU olarak gizlenir: yalnızca temanın kendi dil alanı gerçekten
   dolduysa (body.has-langslot — bkz. inc/language.php). Kısa kod boş ya da
   yanlışsa kutu görünür kalır, böylece ziyaretçi değiştiricisiz kalmaz. */
.has-langslot #trp-floater-ls,
.has-langslot .trp-floating-switcher{display:none!important}

/* [R9] Ebeveyn `.trp-language-switcher{background:transparent}` ilan ediyor,
   yani niyet açık: kutu şeffaf olmalı, görünen yüzey içteki navy sarmalayıcı
   olmalı. TranslatePress 3.3.8'in kendi "v2" stil dosyası bu kuralı
   geçersiz kılıp beyaz bir zemin basıyor (ölçüm: rgb(255,255,255)), bu da
   koyu başlıkta beyaz bir kutu olarak görünüyor. Burada yalnızca ebeveynin
   KENDİ ilan ettiği niyet, güncel işaretlemede tutacak özgüllükle yeniden
   uygulanır; yeni bir görsel karar verilmez. Tema dil alanıyla sınırlıdır. */
.langslot .trp-language-switcher{background:transparent!important;box-shadow:none!important}

/* [R3] Basma (active) geri bildirimi: tasarım sisteminde tanımsız bırakılmış
   tek etkileşim durumu. Kardeş marka (Arer Hosting) bunu translateY(1px)
   olarak tanımlıyor; aynı değer buraya türetildi. Hareket azaltma tercihi
   mutlak surette korunur. */
@media (prefers-reduced-motion:no-preference){
  .btn:active{transform:translateY(1px)}
}

/* ==========================================================================
   YENİ BİLEŞEN: yerel başvuru formu
   plugins/arertech-inquiries etkinleştirilip native_inquiry açıldığında
   render edilen, orijinalde KARŞILIĞI OLMAYAN yeni bir form. Yeni bir
   görsel dil TANITMAZ; tamamen ebeveynin .fluentform için zaten
   tanımladığı aynı token'ları ve aynı görsel kuralları yeniden kullanır.
   ========================================================================== */
.inquiry-form .field{margin-bottom:18px}
.inquiry-form label{color:var(--ink);font-family:var(--f-body);font-size:14px;font-weight:500;margin-bottom:7px;display:block}
.inquiry-form input,.inquiry-form textarea,.inquiry-form select{width:100%;background:var(--navy-900);color:var(--ink);border:1px solid var(--line);border-radius:9px;padding:13px 15px;font-family:var(--f-body);font-size:15px;line-height:1.5;transition:border-color .2s,box-shadow .2s;box-shadow:none}
.inquiry-form input::placeholder,.inquiry-form textarea::placeholder{color:var(--muted);opacity:.65}
.inquiry-form input:focus,.inquiry-form textarea:focus,.inquiry-form select:focus{border-color:var(--blue-300);outline:none;box-shadow:0 0 0 3px rgba(74,158,255,.16)}
.inquiry-form textarea{min-height:132px;resize:vertical}
.inquiry-form select{appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 20px) center,calc(100% - 15px) center;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:44px}
.inquiry-form .consent{display:flex;align-items:flex-start;gap:8px}
.inquiry-form .consent label{margin-bottom:0;color:var(--muted);font-size:14px}
.inquiry-form input[type=checkbox]{accent-color:var(--blue-500);width:16px;height:16px;flex-shrink:0;margin-top:3px}
.inquiry-form details.field summary{color:var(--blue-300);cursor:pointer;font-size:14px;margin-bottom:10px}
.inquiry-form details.field[open] summary{margin-bottom:10px}
.inquiry-form .btn{width:100%}
.inquiry-form .hp-trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.notice{border-radius:10px;padding:14px 16px;margin-bottom:18px;font-size:13.5px}
.notice:not(.notice--error){background:rgba(78,201,168,.1);border:1px solid rgba(78,201,168,.35);color:var(--green-400)}
.notice--error{background:rgba(255,107,107,.1);border:1px solid rgba(255,107,107,.35);color:var(--error-text)}
