/* Göral Sigorta — ortak stil dosyası
   Bu dosya index.html, kasko-sigortasi.html ve trafik-sigortasi.html
   içindeki <style> bloklarının birleştirilmiş hâlidir. Kurallar birebir
   aynıdır; sadece görsel yolları (img/ -> ../img/) bu dosyanın konumuna
   göre güncellenmiştir. */

/* ---------- Tüm sayfalarda ortak ---------- */
        * { font-family: 'Chakra Petch', sans-serif; }
        .noise-bg { position: relative; }
        .noise-bg::before { content: ''; position: absolute; inset: 0; 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)'/%3E%3C/svg%3E"); opacity: 0.03; pointer-events: none; z-index: 1; }
        .hero-fullscreen h1, .hero-fullscreen p, .hero-fullscreen span { text-shadow: 0 2px 28px rgba(0,0,0,0.9), 0 1px 4px rgba(0,0,0,0.7); }
        .hero-fullscreen { background: radial-gradient(ellipse 65% 42% at 50% 52%, rgba(0,0,0,0.72) 0%, rgba(0,0,0,0.4) 70%, rgba(0,0,0,0) 100%), linear-gradient(180deg, rgba(0,0,0,0.5) 0%, rgba(0,0,0,0.55) 50%, rgba(0,0,0,0.9) 100%), url('../img/hero-bg.jpg') center/cover no-repeat; min-height: 100vh; }
        .service-img-card { position: relative; overflow: hidden; aspect-ratio: 4/3; }
        .service-img-card img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(100%) brightness(0.7); transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1); }
        .service-img-card:hover img { filter: grayscale(0%) brightness(1); transform: scale(1.05); }
        .service-img-card::after { content: ''; position: absolute; inset: 0; border: 2px solid transparent; transition: border-color 0.4s ease; pointer-events: none; }
        .service-img-card:hover::after { border-color: #CCFF00; }
        .service-img-card .overlay { position: absolute; inset: 0; background: linear-gradient(to top, rgba(0,0,0,0.9) 0%, rgba(0,0,0,0.3) 50%, transparent 100%); }
        .service-img-card .content { position: absolute; bottom: 0; left: 0; right: 0; padding: 1.5rem; z-index: 10; }
        /* Partner logo bandi: tek acik zemin, sabit dizilim */
        .partner-panel { background: #191B1F; border: 1px solid rgba(255,255,255,0.06); border-radius: 4px; padding: 1.75rem 0.5rem; }
        .partner-track { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; }
        .partner-item { position: relative; flex: 0 0 50%; height: 64px; display: flex; align-items: center; justify-content: center; padding: 0 0.75rem; box-sizing: border-box; border-radius: 3px; transition: background-color 0.3s ease; }
        @media (min-width: 640px) { .partner-item { flex-basis: 20%; } }
        @media (min-width: 1024px) { .partner-item { flex-basis: 14.2857%; height: 68px; } }
        .partner-item img { max-width: 100%; max-height: 100%; width: auto; height: auto; object-fit: contain; opacity: 0.8; transition: opacity 0.3s ease; }
        /* Renkli logolarin yarisi acik zemin icin tasarlanmis (Turkiye, Orient, Ana, hepiyi koyuda okunmaz),
           o yuzden fare gelince altinda acik bir zemin beliriyor. */
        .partner-item:hover { background-color: #F2F3F5; }
        .partner-item .p-renk { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); max-width: calc(100% - 1.5rem); opacity: 0; }
        .partner-item:hover .p-renk { opacity: 1; }
        .partner-item:hover .p-mono { opacity: 0; }
        /* Optik denge: her logo yaklasik ayni alani kaplasin diye en-boy oranina gore ayri yukseklik.
           Yeni logo eklenirse oranina bakip buraya satir ekle, yoksa denge bozulur. */
        /* Tek renk ve renkli surumlerin en-boy oranlari FARKLI (mono'da kutular sokulup kirpildi),
           o yuzden iki ayri boy tablosu. Yeni logo eklenirse ikisine de satir gerekir. */
        .p-mono[src*="turkiye"]    { max-height: 24px; }
        .p-mono[src*="ak-sigorta"] { max-height: 22px; }
        .p-mono[src*="allianz"]    { max-height: 27px; }
        .p-mono[src*="anadolu"]    { max-height: 30px; }
        .p-mono[src*="orient"]     { max-height: 32px; }
        .p-mono[src*="neova"]      { max-height: 32px; }
        .p-mono[src*="ray-"]       { max-height: 32px; }
        .p-mono[src*="eureko"]     { max-height: 34px; }
        .p-mono[src*="hepiyi"]     { max-height: 40px; }
        .p-mono[src*="ana-"]       { max-height: 44px; }
        .p-mono[src*="hdi"]        { max-height: 44px; }
        .p-mono[src*="axa"]        { max-height: 48px; }
        .p-mono[src*="sompo"]      { max-height: 48px; }
        .p-renk[src*="turkiye"]    { max-height: 24px; }
        .p-renk[src*="allianz"]    { max-height: 27px; }
        .p-renk[src*="orient"]     { max-height: 32px; }
        .p-renk[src*="neova"]      { max-height: 32px; }
        .p-renk[src*="ray-"]       { max-height: 32px; }
        .p-renk[src*="hepiyi"]     { max-height: 40px; }
        .p-renk[src*="anadolu"]    { max-height: 44px; }
        .p-renk[src*="ak-sigorta"] { max-height: 44px; }
        .p-renk[src*="eureko"]     { max-height: 44px; }
        .p-renk[src*="hdi"]        { max-height: 44px; }
        .p-renk[src*="ana-"]       { max-height: 46px; }
        .p-renk[src*="axa"]        { max-height: 50px; }
        .p-renk[src*="sompo"]      { max-height: 50px; }

        .hud-table { background: linear-gradient(180deg, rgba(204,255,0,0.03) 0%, transparent 100%); border: 1px solid rgba(204,255,0,0.2); }
        .hud-row { border-bottom: 1px solid rgba(255,255,255,0.08); transition: all 0.3s ease; }
        .hud-row:hover { background: rgba(204,255,0,0.05); }
        .hud-glow { text-shadow: 0 0 20px rgba(204,255,0,0.5); }
        .btn-outline { border: 1px solid #CCFF00; color: #CCFF00; background: transparent; transition: all 0.3s ease; }
        .btn-outline:hover { background: #CCFF00; color: #000000; }
        .btn-white-outline { border: 1px solid rgba(255,255,255,0.3); color: #fff; background: transparent; transition: all 0.3s ease; }
        .btn-white-outline:hover { border-color: #fff; background: rgba(255,255,255,0.1); }
        .link-underline { position: relative; color: #D1D5DB; }
        .link-underline::after { content: ''; position: absolute; bottom: -2px; left: 0; width: 0; height: 1px; background: #CCFF00; transition: width 0.3s ease; }
        .link-underline:hover::after { width: 100%; }
        .link-underline:hover { color: #CCFF00; }
        .cta-section { background: linear-gradient(135deg, rgba(17,17,17,0.95) 0%, rgba(0,0,0,0.98) 100%), url('../img/cta-bg.jpg') center/cover no-repeat; }
        ::-webkit-scrollbar { width: 6px; }
        ::-webkit-scrollbar-track { background: #111111; }
        ::-webkit-scrollbar-thumb { background: #333; }
        ::-webkit-scrollbar-thumb:hover { background: #CCFF00; }
        
        .coming-soon-card { position: relative; }
        .coming-soon-card .coming-soon-overlay { position: absolute; inset: 0; background: rgba(0,0,0,0.8); display: flex; align-items: center; justify-content: center; z-index: 20; opacity: 0; transition: opacity 0.4s ease; pointer-events: none; }
        .coming-soon-card:hover .coming-soon-overlay { opacity: 1; }
        .coming-soon-card:hover img { filter: grayscale(100%) brightness(0.2) !important; transform: none !important; }
        .coming-soon-card::after { border-color: transparent !important; }
        .coming-soon-card { cursor: default; }
        .sharp { border-radius: 0 !important; }
        html { scroll-padding-top: 80px; }
        .form-success { display: none; }
        .form-success.show { display: block; }

/* ---------- Branş sayfalarına ait ek kartlar ve form alanları ---------- */
        .info-card { background: linear-gradient(135deg, rgba(204,255,0,0.03) 0%, rgba(204,255,0,0.08) 100%); border: 1px solid rgba(204,255,0,0.2); }
        .warning-card { background: linear-gradient(135deg, rgba(239,68,68,0.05) 0%, rgba(239,68,68,0.1) 100%); border: 1px solid rgba(239,68,68,0.2); }
        .success-card { background: linear-gradient(135deg, rgba(16,185,129,0.05) 0%, rgba(16,185,129,0.1) 100%); border: 1px solid rgba(16,185,129,0.2); }
        .amber-card { background: linear-gradient(135deg, rgba(245,158,11,0.05) 0%, rgba(245,158,11,0.1) 100%); border: 1px solid rgba(245,158,11,0.2); }
        .input-style { width: 100%; background-color: #0D0D0D; border: 1px solid rgba(255,255,255,0.1); padding: 1rem 1.25rem; font-size: 14px; color: white; outline: none; transition: all 0.3s; letter-spacing: 0.05em; }
        .input-style:focus { border-color: rgba(204,255,0,0.5); }
        .input-style::placeholder { color: #6B7280; }
        .modal { display: none; position: fixed; z-index: 3000; left: 0; top: 0; width: 100%; height: 100%; background-color: rgba(0,0,0,0.95); backdrop-filter: blur(5px); }

        /* Çerez onay şeridi — ziyaretçi karar verene kadar Analytics yüklenmez.
           Şeridi js/app.js oluşturuyor, HTML dosyalarında karşılığı yoktur. */
        .cerez-serit { position: fixed; left: 0; right: 0; bottom: 0; z-index: 2500; background: #0D0D0D; border-top: 1px solid rgba(204,255,0,0.25); padding: 1.125rem 1.25rem; display: flex; flex-wrap: wrap; align-items: center; gap: 0.875rem 1.5rem; }
        .cerez-serit p { flex: 1 1 22rem; margin: 0; color: #D1D5DB; font-size: 0.8125rem; line-height: 1.6; letter-spacing: 0.02em; }
        .cerez-serit a { color: #CCFF00; text-decoration: underline; }
        .cerez-dugmeler { flex: 0 0 auto; display: flex; gap: 0.625rem; }
        .cerez-serit button { font-family: inherit; font-size: 0.6875rem; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; padding: 0.75rem 1.5rem; cursor: pointer; border: 1px solid; transition: all 0.3s ease; }
        .cerez-kabul { background: #CCFF00; border-color: #CCFF00; color: #000000; }
        .cerez-kabul:hover { background: #9ECC00; border-color: #9ECC00; }
        .cerez-ret { background: transparent; border-color: rgba(255,255,255,0.3); color: #D1D5DB; }
        .cerez-ret:hover { border-color: #ffffff; color: #ffffff; }
        @media (max-width: 640px) { .cerez-dugmeler { width: 100%; } .cerez-serit button { flex: 1 1 0; padding: 0.75rem 0.5rem; } }
