@charset "UTF-8";

/* ==========================================================================
   V19 - DÖNGÜYÜ KIRAN NİHAİ, TAM VE ONARILMIŞ SÜRÜM
   ========================================================================== */

/* -------------------------------------------------------------------------- */
/* TEMEL AYARLAR VE DEĞİŞKENLER */
/* -------------------------------------------------------------------------- */

:root {
    --color-background: #100f0f;
    --color-text-cream: #e4dcd3;
    --color-gold-metal: #a67c52;
    --color-gold-highlight: #d9b38a;
    --font-serif-display: 'Cinzel', serif;
    --font-sans-body: 'Poppins', sans-serif;
}

* { 
    margin: 0; 
    padding: 0; 
    box-sizing: border-box; 
}

html { 
    scroll-behavior: smooth; 
}

body { 
    background-color: var(--color-background); 
    color: var(--color-text-cream); 
    font-family: var(--font-sans-body); 
    cursor: default; 
    opacity: 0; 
    transition: opacity 1s ease; 
}

body.loaded { 
    opacity: 1; 
}

body.menu-open { 
    overflow: hidden; 
}

a, button { 
    cursor: pointer; 
    text-decoration: none;
    color: inherit;
}

.text-center { text-align: center; }
.page-section { padding: 120px 5%; position: relative; }
.container { width: 100%; max-width: 1200px; margin: 0 auto; padding: 0 20px; }
.subtitle { display: block; font-size: 0.9rem; color: var(--color-gold-metal); letter-spacing: 2px; text-transform: uppercase; margin-bottom: 15px; }
.section-title { font-family: var(--font-serif-display); font-size: clamp(2.5rem, 5vw, 3.5rem); font-weight: 700; margin-bottom: 20px; }
.divider { width: 80px; height: 2px; background: var(--color-gold-metal); margin: 30px auto; }

/* -------------------------------------------------------------------------- */
/* YARDIMCI ELEMANLAR (ÖN YÜKLEYİCİ) */
/* -------------------------------------------------------------------------- */

.preloader { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: var(--color-background); z-index: 9999; display: flex; align-items: center; justify-content: center; transition: opacity 0.8s ease, visibility 0.8s ease; transition-delay: 0.5s; }
.preloader img { max-width: 150px; }
body.loaded .preloader { opacity: 0; visibility: hidden; }

/* -------------------------------------------------------------------------- */
/* HEADER VE NAVİGASYON (TAM VE ÇALIŞAN HALİ) */
/* -------------------------------------------------------------------------- */

.site-header { position: fixed; top: 0; left: 0; width: 100%; z-index: 1000; padding: 20px 5%; background: linear-gradient(to bottom, rgba(16,15,15,0.7) 0%, transparent 100%); transition: all 0.5s ease; }
.site-header.scrolled { padding: 10px 5%; background-color: var(--color-background); border-bottom: 1px solid rgba(166, 124, 82, 0.2); }
.header-container { display: flex; justify-content: space-between; align-items: center; width: 100%; max-width: 1600px; margin: 0 auto; }
.logo-container { width: 110px; transition: width 0.5s ease; flex-shrink: 0; }
.site-header.scrolled .logo-container { width: 80px; }
.logo-container img { width: 100%; height: auto; display: block; }

.main-nav { display: none; }
@media (min-width: 992px) { .main-nav { display: block; } }
.main-nav > ul { display: flex; align-items: center; gap: 45px; list-style: none; }

.main-nav > ul > li > a { font-family: var(--font-serif-display); font-size: 1.1rem; color: var(--color-text-cream); position: relative; padding: 15px 0 15px 35px; display: flex; align-items: center; transition: color 0.3s ease; }
li.has-dropdown > a.non-clickable { cursor: default; }
.main-nav > ul > li > a:hover { color: var(--color-gold-highlight); }
.main-nav > ul > li > a::before { content: ''; position: absolute; left: 0; top: 50%; transform: translateY(-50%) translateX(-10px); opacity: 0; transition: all 0.3s cubic-bezier(0.25, 1, 0.5, 1); width: 28px; height: 28px; background: url('../images/icons/sise.png') no-repeat center center / contain; }
.main-nav > ul > li:hover > a::before { opacity: 1; transform: translateY(-50%) translateX(0); }
.main-nav > ul > li > a::after { content: ''; position: absolute; bottom: 8px; left: 35px; right: 0; height: 1px; background: var(--color-gold-metal); transform: scaleX(0); transform-origin: right; transition: transform 0.4s ease-out; }
.main-nav > ul > li:hover > a::after { transform: scaleX(1); transform-origin: left; }

.main-nav li.has-dropdown { position: relative; }
.dropdown-menu { position: absolute; top: 90%; left: 0; background-color: var(--color-background); border: 1px solid rgba(166, 124, 82, 0.3); border-top: 2px solid var(--color-gold-metal); padding: 10px; list-style: none; min-width: 240px; z-index: 1001; opacity: 0; visibility: hidden; transform: translateY(10px); transition: all 0.3s ease-out; }
.main-nav li.has-dropdown:hover > .dropdown-menu { opacity: 1; visibility: visible; transform: translateY(0); }
.dropdown-menu li { margin: 0; border-bottom: 1px solid rgba(166, 124, 82, 0.1); }
.dropdown-menu li:last-child { border-bottom: none; }
.dropdown-menu a { display: block; padding: 12px 15px 12px 38px; font-size: 1rem; font-family: var(--font-sans-body); font-weight: 400; position: relative; transition: all 0.3s ease; }
.dropdown-menu a:hover { background-color: rgba(166, 124, 82, 0.1); color: var(--color-gold-highlight); }
.dropdown-menu a::before { content: ''; position: absolute; left: 8px; top: 50%; transform: translateY(-50%) scale(0.8); opacity: 0; transition: all 0.3s ease; width: 24px; height: 24px; background: url('../images/icons/kadeh.png') no-repeat center center / contain; }
.dropdown-menu a:hover::before { opacity: 1; }

.header-right { display: flex; align-items: center; gap: 30px; }
.lang-switcher { display: flex; align-items: center; }
.lang-switcher a { opacity: 0.7; transition: opacity 0.3s ease; }
.lang-switcher a:hover { opacity: 1; }
.lang-switcher a.active { opacity: 1; font-weight: bold; }
.lang-switcher span { margin: 0 5px; opacity: 0.5; }

.hamburger-menu { display: block; width: 30px; height: 24px; position: relative; background: none; border: none; }
@media (min-width: 992px) { .hamburger-menu { display: none; } }
.hamburger-menu span { display: block; position: absolute; height: 2px; width: 100%; background: var(--color-text-cream); border-radius: 2px; left: 0; transition: all 0.35s ease-in-out; }
.hamburger-menu span:nth-of-type(1) { top: 0px; } .hamburger-menu span:nth-of-type(2) { top: 10px; } .hamburger-menu span:nth-of-type(3) { top: 20px; }
body.menu-open .hamburger-menu span:nth-of-type(1) { top: 10px; transform: rotate(135deg); } body.menu-open .hamburger-menu span:nth-of-type(2) { opacity: 0; left: -30px; } body.menu-open .hamburger-menu span:nth-of-type(3) { top: 10px; transform: rotate(-135deg); }
.fullscreen-menu { position: fixed; top: 0; left: 0; width: 100%; height: 100vh; background-color: var(--color-background); display: flex; justify-content: center; align-items: center; opacity: 0; visibility: hidden; transition: opacity 0.5s ease, visibility 0.5s ease; z-index: 999; }
body.menu-open .fullscreen-menu { opacity: 1; visibility: visible; }
.fullscreen-nav ul { text-align: center; list-style: none; }
.fullscreen-link { font-family: var(--font-serif-display); font-size: clamp(2.5rem, 8vw, 4.5rem); line-height: 1.5; }

/* -------------------------------------------------------------------------- */
/* ANASAYFA BÖLÜMLERİ */
/* -------------------------------------------------------------------------- */

.hero-section-v3 { height: 100vh; position: relative; display: flex; align-items: center; justify-content: center; }
.video-background { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; }
.video-background video { width: 100%; height: 100%; object-fit: cover; }
.hero-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(10, 8, 7, 0.6); z-index: 1; }
.hero-content { position: relative; z-index: 2; text-align: center; }
.hero-content h1 { font-family: var(--font-serif-display); font-size: clamp(3rem, 10vw, 8rem); color: #fff; text-shadow: 0 5px 20px rgba(0,0,0,0.5); overflow: hidden; }
.hero-content .char { transform: translateY(120px); }
.hero-slogan { opacity: 0; transform: translateY(30px); font-size: clamp(1rem, 2.5vw, 1.3rem); }
.scroll-down-indicator { position: absolute; bottom: 30px; left: 50%; transform: translateX(-50%); width: 2px; height: 50px; background: rgba(255,255,255,0.3); z-index: 3; overflow: hidden; }
.scroll-down-indicator::after { content:''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: #fff; transform: scaleY(0); transform-origin: top; animation: scroll-anim 2.5s infinite; }
@keyframes scroll-anim { 50% { transform: scaleY(1); } 100% { transform: scaleY(1); transform-origin: bottom; } }

.transition-section { padding: 100px 5%; background-color: var(--color-background); text-align: center; }
.transition-quote { font-family: var(--font-serif-display); font-size: clamp(1.8rem, 4vw, 2.5rem); color: var(--color-gold-metal); font-weight: 600; line-height: 1.5; }
.transition-quote .word { display: inline-block; overflow: hidden; }
.transition-quote .char { transform: translateY(100%); }

.about-kenburns-section { height: 100vh; position: relative; display: flex; align-items: center; justify-content: center; overflow: hidden; text-align: center; }
.about-background { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.about-background img { width: 100%; height: 100%; object-fit: cover; transform: scale(1.1); }
.about-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(16, 15, 15, 0.7); }
.about-content { position: relative; z-index: 2; max-width: 800px; }
.about-content p { font-size: 1.1rem; line-height: 1.9; opacity: 0.9; }

.collection-master-section { background-color: #141313; }
.category-block { padding: 80px 0; border-bottom: 1px solid rgba(166, 124, 82, 0.1); }
.category-block:last-of-type { border-bottom: none; }
.category-title { font-size: 2.5rem; text-align: center; margin-bottom: 60px; position: relative; display: inline-block; padding-bottom: 10px; left: 50%; transform: translateX(-50%); }
.category-title::after { content: ''; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); width: 60%; height: 2px; background: var(--color-gold-metal); }
.product-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 30px; }
.product-card { background-color: var(--color-background); text-align: center; border: 1px solid transparent; transition: all 0.4s ease; opacity: 0; transform: translateY(30px); }
.product-card:hover { transform: translateY(-10px); border-color: rgba(166, 124, 82, 0.5); }
.product-image { background-color: #000; padding: 10px; }
.product-image img { width: 100%; height: 300px; object-fit: contain; }
.product-info { padding: 20px; }
.product-info h4 { font-family: var(--font-serif-display); font-size: 1.3rem; margin-bottom: 5px; }
.product-info p { font-size: 0.9rem; opacity: 0.7; }

.testimonials-section { background-color: var(--color-background); padding: 120px 0; }
.testimonials-slider { padding: 40px 20px; /* Kenar boşlukları eklendi */ max-width: 800px; margin: 0 auto; }
.testimonial-card { background-color: rgba(0,0,0,0.2); padding: 40px; border-left: 3px solid var(--color-gold-metal); }
.testimonial-card p { font-family: var(--font-serif-display); font-size: 1.5rem; font-style: italic; line-height: 1.6; margin-bottom: 20px; }
.testimonial-card span { font-weight: bold; color: var(--color-gold-highlight); }
.swiper-pagination-bullet-active { background-color: var(--color-gold-metal); }

.quote-section { display: flex; align-items: center; justify-content: center; min-height: 80vh; }
.quote-text { font-family: var(--font-serif-display); font-size: clamp(2rem, 6vw, 5rem); text-align: center; line-height: 1.4; }
.quote-text .char { display: inline-block; opacity: 0.1; }

.contact-section-v3 { background-color: #0a0909; }
.cta-button { display: inline-block; font-family: var(--font-serif-display); font-weight: 700; font-size: 0.9rem; letter-spacing: 2px; text-transform: uppercase; padding: 15px 40px; border: 2px solid var(--color-gold-metal); transition: all 0.4s ease; }
.cta-button:hover { background-color: var(--color-gold-metal); color: var(--color-background); }

/* -------------------------------------------------------------------------- */
/* STABİL VE ŞIK FOOTER (ANİMASYONSUZ) */
/* -------------------------------------------------------------------------- */
.site-footer-main {
    position: relative;
    padding: 100px 5% 40px;
    background-color: #0c0b0b;
    border-top: 2px solid var(--color-gold-metal);
    font-size: 0.95rem;
}

.footer-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 50px;
    margin-bottom: 60px;
    text-align: left;
    opacity: 1;
    transform: none;
}
@media (min-width: 768px) {
    .footer-grid {
        grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
        gap: 40px;
    }
}

.widget-title {
    font-family: var(--font-serif-display);
    font-size: 1.5rem;
    color: var(--color-gold-highlight);
    margin-bottom: 25px;
    position: relative;
    padding-bottom: 10px;
}
.widget-title::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 40px;
    height: 2px;
    background-color: var(--color-gold-metal);
}

.footer-widget ul { list-style: none; }
.footer-widget li { margin-bottom: 12px; }
.footer-widget a { opacity: 0.8; transition: all 0.3s ease; display: inline-block; }
.footer-widget a:hover { opacity: 1; color: var(--color-gold-highlight); padding-left: 5px; }

.footer-logo { display: block; width: 120px; margin-bottom: 20px; opacity: 0.9; }
.footer-logo img { width: 100%; }
.footer-motto { line-height: 1.7; opacity: 0.7; max-width: 280px; }
.footer-contact li { line-height: 1.6; }

.footer-bottom { border-top: 1px solid rgba(166, 124, 82, 0.2); padding-top: 30px; }
.bottom-container { display: flex; justify-content: space-between; align-items: center; flex-direction: column; }
@media (min-width: 768px) { .bottom-container { flex-direction: row; } }
.footer-copy { opacity: 0.6; font-size: 0.8rem; letter-spacing: 0.5px; margin-bottom: 20px; }
@media (min-width: 768px) { .footer-copy { margin-bottom: 0; } }
.footer-social { display: flex; align-items: center; gap: 25px; }
.footer-social a { color: var(--color-text-cream); opacity: 0.7; transition: all 0.3s ease; }
.footer-social a:hover { opacity: 1; color: var(--color-gold-highlight); transform: translateY(-3px); }
.footer-social svg { width: 22px; height: 22px; }
/* ==========================================================================
   EKLENECEK KODLAR: KATEGORİ SAYFALARI
   ========================================================================== */

/* Navbar'ın içeriğin üstüne binmesini engelleyen genel kural */
main {
    padding-top: 95px; /* Header'ın yaklaşık yüksekliği */
}

/* Anasayfadaki ve diğer tam ekran bölümlerdeki üst boşluğu sıfırlama */
.hero-section-v3, .about-kenburns-section, .page-header {
    margin-top: -95px;
}

/* Sayfa Başlığı Alanı ("Kırmızı Şaraplar" yazan banner) */
.page-header {
    position: relative;
    height: 50vh;
    min-height: 400px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    overflow: hidden;
}

.page-header-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    transform: scale(1.1);
}

.page-header-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(16, 15, 15, 0.7);
    z-index: 1;
}

.page-header .container {
    position: relative;
    z-index: 2;
}

.page-title {
    font-family: var(--font-serif-display);
    font-size: clamp(3rem, 8vw, 5.5rem);
    color: #fff;
    text-shadow: 0 3px 15px rgba(0,0,0,0.5);
    overflow: hidden;
}

.page-title .char {
    transform: translateY(120px);
}

/* Ürünlerin Listelendiği Alan */
.category-page-section {
    background-color: #141313;
    padding: 100px 5%;
}

.category-intro {
    max-width: 700px;
    margin: 0 auto 80px auto;
    font-size: 1.1rem;
    line-height: 1.8;
    opacity: 0.8;
    text-align: center;
}

/* Ürün Kartı Stilleri (Anasayfadan farklı, daha premium) */
.category-page-section .product-grid {
    display: grid;
    /* Mobil: 1 sütun, Tablet: 2 sütun, Masaüstü: 4 sütun */
    grid-template-columns: repeat(1, 1fr);
    gap: 30px;
}
@media (min-width: 576px) {
    .category-page-section .product-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (min-width: 992px) {
    .category-page-section .product-grid {
        grid-template-columns: repeat(4, 1fr);
        gap: 40px;
    }
}

.category-page-section .product-card {
    background-color: var(--color-background);
    border: 1px solid #222;
    overflow: hidden;
    /* Başlangıç pozisyonu (JS animasyonu için) */
    transform: translateY(50px);
    opacity: 0;
}

.category-page-section .product-card-link {
    display: block;
    transition: transform 0.4s ease;
}

.category-page-section .product-card-link:hover {
    transform: translateY(-10px);
}

.category-page-section .product-card .product-image {
    overflow: hidden;
}

.category-page-section .product-card .product-image img {
    width: 100%;
    height: auto;
    display: block;
    transform: scale(1.0);
    transition: transform 0.5s ease;
}

.category-page-section .product-card-link:hover .product-image img {
    transform: scale(1.05);
}

.category-page-section .product-card .product-info {
    padding: 25px;
    text-align: center;
}

.category-page-section .product-card .product-info h4 {
    font-family: var(--font-serif-display);
    font-size: 1.5rem;
    margin-bottom: 10px;
    color: var(--color-gold-highlight);
}

.category-page-section .product-card .product-info p {
    opacity: 0.7;
}

/* ==========================================================================
   EKLENECEK KODLAR: KATEGORİ SAYFASI ALT YAZI STİLİ
   ========================================================================== */

.page-subtitle {
    font-family: var(--font-sans-body);
    font-size: clamp(1rem, 3vw, 1.4rem);
    color: rgba(255, 255, 255, 0.9);
    margin-top: 15px;
    letter-spacing: 1px;
    opacity: 0; /* JS animasyonu için başlangıçta gizli */
    transform: translateY(30px); /* JS animasyonu için başlangıç pozisyonu */
    overflow: hidden; /* Splitting.js için */
}

/* Splitting.js ile ayrılan harflerin başlangıç durumu (opsiyonel) */
.page-subtitle .char {
    transform: translateY(100%);
}

/* ==========================================================================
   EKLENECEK KODLAR: HİKAYEMİZ SAYFASI
   ========================================================================== */
.bg-dark {
    background-color: #141313;
}

.story-section {
    padding: 100px 5%;
}

.story-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 50px;
    align-items: center;
}
@media (min-width: 992px) {
    .story-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 80px;
    }
    .story-grid.reverse {
        grid-template-areas: "content image";
    }
    .story-grid.reverse .story-image {
        grid-area: image;
    }
    .story-grid.reverse .story-content {
        grid-area: content;
    }
}

.story-image img {
    width: 100%;
    height: auto;
    display: block;
    border: 1px solid #222;
}

.story-content .section-title {
    font-size: clamp(2.2rem, 4vw, 3rem);
}

.story-content p {
    line-height: 1.9;
    opacity: 0.8;
    margin-bottom: 20px;
}

.terroir-section {
    position: relative;
    padding: 150px 5%;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.terroir-parallax-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 140%; /* Parallax efekti için ekstra yükseklik */
    background-image: url('../images/backgrounds/terroir-bg.jpg'); /* Bu resmi bulmalısın */
    background-size: cover;
    background-position: center;
    z-index: 0;
}

.terroir-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(16, 15, 15, 0.85);
    z-index: 1;
}

.terroir-content {
    position: relative;
    z-index: 2;
    max-width: 750px;
}

.terroir-content p {
    font-size: 1.2rem;
    line-height: 1.9;
    opacity: 0.9;
}

.invitation-section {
    padding: 100px 5%;
}

.invitation-text {
    max-width: 600px;
    margin: 0 auto 40px auto;
    font-size: 1.1rem;
    line-height: 1.8;
    opacity: 0.8;
}

/* Animasyonlar için başlangıç durumu */
.animate-on-scroll {
    opacity: 0;
    transform: translateY(40px);
}

/* ==========================================================================
   EKLENECEK KODLAR: İLETİŞİM SAYFASI (İNCE AYARLAR YAPILDI)
   ========================================================================== */

/* Navbar boşluğunu bu sayfa için sıfırlıyoruz */
.contact-split-section {
    margin-top: -95px;
}

.contact-split-section {
    display: grid;
    grid-template-columns: 1fr;
}
@media (min-width: 992px) {
    .contact-split-section {
        grid-template-columns: 1fr 1.2fr;
    }
}

.contact-image-pane {
    height: 50vh;
    width: 100%;
    position: relative;
}
@media (min-width: 992px) {
    .contact-image-pane {
        height: 100vh;
        position: sticky;
        top: 0;
    }
}

.contact-image-pane .contact-image-bg {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
}

.contact-content-pane {
    background-color: #141313;
    z-index: 2;
}

/* 1. DÜZELTME: İçeriği daha aşağı almak için üst boşluk artırıldı */
.contact-content-inner {
    padding: 140px 8%; /* 100px'ten 140px'e çıkarıldı */
}

.contact-block {
    padding: 40px 0;
    border-bottom: 1px solid rgba(166, 124, 82, 0.1);
}
.contact-block:last-child {
    border-bottom: none;
}
.contact-block p {
    max-width: 600px;
    line-height: 1.8;
    opacity: 0.8;
}

.contact-form-premium input,
.contact-form-premium textarea {
    width: 100%;
    background: var(--color-background);
    border: 1px solid #333;
    padding: 18px;
    color: var(--color-text-cream);
    font-size: 1rem;
    transition: border-color 0.3s ease;
    margin-bottom: 20px;
}
.contact-form-premium input:focus,
.contact-form-premium textarea:focus {
    outline: none;
    border-color: var(--color-gold-metal);
}
.contact-form-premium textarea {
    resize: vertical;
    min-height: 120px;
}

/* 2. DÜZELTME: "Gönder" butonu baştan tasarlandı */
.contact-form-premium .cta-button {
    width: 100%; /* Formun tamamını kaplasın */
    padding: 20px;
    font-size: 1rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    background-color: transparent;
    border: 2px solid var(--color-gold-metal);
    color: var(--color-gold-metal);
    transition: all 0.4s ease;
}

.contact-form-premium .cta-button:hover {
    background-color: var(--color-gold-metal);
    color: var(--color-background);
    letter-spacing: 3px; /* Premium hover efekti */
    box-shadow: 0 0 15px rgba(166, 124, 82, 0.5); /* Hafif parlama */
}

.contact-form-title {
    font-family: var(--font-serif-display);
    font-size: 1.8rem;
    margin-bottom: 30px;
}

.contact-info-item { display: flex; align-items: flex-start; gap: 20px; margin-bottom: 30px; }
.contact-info-item:last-child { margin-bottom: 0; }
.contact-info-item .icon { font-size: 1.4rem; color: var(--color-gold-metal); margin-top: 5px; }
.contact-info-item .info h3 { font-family: var(--font-serif-display); font-size: 1rem; letter-spacing: 1px; text-transform: uppercase; color: #888; margin-bottom: 8px; }

.contact-block .map-container {
    width: 100%;
    height: 350px;
}
.contact-block .map-container iframe {
    width: 100%;
    height: 100%;
    border: none;
    filter: invert(100%) grayscale(90%);
}

.animate-contact-block {
    opacity: 0;
    transform: translateY(40px);
}

/* ==========================================================================
   EKLENECEK KODLAR: PREMİUM DENEYİM SAYFASI EFEKTLERİ
   ========================================================================== */

.experience-step {
    margin-bottom: 150px; /* Bölümler arasına daha fazla boşluk */
}

.experience-step-content {
    position: relative;
    z-index: 2; /* Numaranın arkasında kalması için */
}

/* Dekoratif Numara Stili */
.step-number {
    position: absolute;
    top: 50%;
    left: -40px;
    transform: translateY(-50%);
    font-family: var(--font-serif-display);
    font-size: 12rem;
    font-weight: 700;
    color: var(--color-text-cream);
    opacity: 0.05;
    z-index: -1;
    line-height: 1;
}

.experience-step.reverse .step-number {
    left: auto;
    right: -40px;
}

/* Görsel Parallax Efekti İçin Kapsayıcı */
.experience-step-image {
    transition: transform 0.4s ease;
}
.experience-step:hover .experience-step-image {
    transform: scale(1.02);
}

.parallax-image-wrapper {
    overflow: hidden;
    height: 100%;
}
.parallax-image {
    width: 100%;
    height: 120%; /* Yukarı/aşağı kayma payı */
    object-fit: cover;
    transform: translateY(-10%); /* Başlangıç pozisyonu */
}

/* Metin Animasyonları İçin Başlangıç Durumu */
.animate-text-reveal {
    opacity: 0;
    transform: translateY(30px);
}

/* ==========================================================================
   EKLENECEK KODLAR: KATEGORİ SAYFASI (ÖN YÜZ)
   ========================================================================== */

.no-products-frontend {
    font-size: 1.1rem;
    color: var(--color-text-cream);
    opacity: 0.7;
    text-align: center;
    padding: 50px 0;
    width: 100%;
    grid-column: 1 / -1; /* Grid yapısını kaplaması için */
}

/* Ürün kartı linklerini düzeltme (Zaten olmalı ama garanti olsun) */
.product-card-link {
    display: block;
    text-decoration: none;
    color: inherit;
    transition: transform 0.4s ease;
}
.product-card-link:hover {
    transform: translateY(-10px);
}

/* ==========================================================================
   EKLENECEK KODLAR: ÜRÜN DETAY SAYFASI
   ========================================================================== */

/* Navbar sorununu bu sayfa için de çöz */
.product-detail-section {
    margin-top: -95px;
    padding: 150px 5%; /* 120px'den artırıldı */
    background-color: var(--color-background);
}

.product-detail-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 50px;
}
@media (min-width: 992px) {
    .product-detail-grid {
        grid-template-columns: 1fr 1.2fr;
        gap: 80px;
        align-items: flex-start;
    }
}

.product-detail-image img {
    width: 100%;
    height: auto;
    max-height: 80vh;
    object-fit: contain;
    background-color: #000;
    border: 1px solid #222;
}

.product-price {
    font-family: var(--font-serif-display);
    font-size: 2.5rem;
    color: var(--color-gold-metal);
    margin: 20px 0;
}

.product-description {
    line-height: 1.9;
    opacity: 0.8;
    margin-bottom: 30px;
}

.cart-form {
    margin-top: 30px;
    padding-top: 30px;
    border-top: 1px solid rgba(166, 124, 82, 0.2);
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    align-items: center;
}

.quantity-selector {
    display: flex;
    align-items: center;
    gap: 10px;
}

.quantity-selector label {
    font-size: 1rem;
    color: #aaa;
}

.quantity-selector input[type="number"] {
    width: 70px;
    padding: 15px 10px;
    background: var(--color-background);
    border: 1px solid #333;
    color: var(--color-text-cream);
    font-size: 1.2rem;
    text-align: center;
    border-radius: 3px;
}
/* Chrome, Safari, Edge, Opera'daki okları kaldır */
.quantity-selector input::-webkit-outer-spin-button,
.quantity-selector input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.btn-add-to-cart {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 1rem;
    padding: 16px 30px;
}

/* ==========================================================================
   EKLENECEK KODLAR: SEPET İKONU VE BİLDİRİM MESAJLARI
   ========================================================================== */

/* Header'daki Sepet İkonu */
.header-cart-icon {
    position: relative;
    margin-left: 15px; /* Dil değiştiriciden ayır */
}
.header-cart-icon a {
    font-size: 1.5rem; /* İkon boyutu */
    color: var(--color-text-cream);
    transition: color 0.3s ease;
}
.header-cart-icon a:hover {
    color: var(--color-gold-highlight);
}
.cart-count {
    position: absolute;
    top: -8px;
    right: -12px;
    background-color: var(--color-gold-metal);
    color: var(--color-background);
    font-size: 0.75rem;
    font-weight: bold;
    border-radius: 50%;
    width: 22px;
    height: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    border: 2px solid var(--color-background);
}
@media (min-width: 992px) {
    .header-cart-icon {
        order: 2; /* Mobil menü ikonundan önce gelmesi için */
    }
}

/* Ürün Detay Sayfası Bildirim Mesajları */
.alert {
    padding: 15px 20px;
    margin-bottom: 30px;
    border-radius: 4px;
    font-size: 1rem;
    text-align: center;
}
.alert-success {
    background-color: rgba(46, 184, 46, 0.1);
    border: 1px solid var(--admin-alert-success);
    color: var(--admin-alert-success);
}
.alert-danger {
    background-color: rgba(255, 107, 107, 0.1);
    border: 1px solid var(--admin-alert-danger);
    color: var(--admin-alert-danger);
}
/* ==========================================================================
   EKLENECEK KODLAR: SEPET SAYFASI STİLLERİ
   ========================================================================== */

.cart-section {
    background-color: #141313;
}

.cart-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 40px;
}
@media (min-width: 992px) {
    .cart-grid {
        grid-template-columns: 2.5fr 1fr;
    }
}

.cart-items-table table {
    width: 100%;
    border-collapse: collapse;
}

.cart-items-table thead {
    border-bottom: 2px solid var(--admin-border);
}

.cart-items-table th {
    text-align: left;
    padding: 15px 10px;
    font-family: var(--font-serif-display);
    font-size: 1.1rem;
    color: #aaa;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.cart-items-table tbody tr {
    border-bottom: 1px solid var(--admin-border);
}

.cart-items-table td {
    padding: 20px 10px;
    vertical-align: middle;
}

.cart-item-image img {
    width: 80px;
    height: 80px;
    object-fit: contain;
    background-color: #000;
    border: 1px solid #222;
}

.cart-item-name a {
    font-family: var(--font-serif-display);
    font-size: 1.3rem;
    color: var(--color-text-cream);
    transition: color 0.3s ease;
}
.cart-item-name a:hover {
    color: var(--color-gold-highlight);
}

.cart-remove-btn {
    background: none;
    border: none;
    color: #777;
    font-size: 0.9rem;
    display: block;
    margin-top: 5px;
    padding: 0;
    transition: color 0.3s ease;
}
.cart-remove-btn:hover {
    color: var(--admin-alert-danger);
}

.cart-item-price, .cart-item-subtotal {
    font-size: 1.1rem;
}

.cart-item-quantity input {
    width: 60px;
    padding: 10px;
    background: var(--color-background);
    border: 1px solid var(--admin-border);
    color: var(--color-text-cream);
    font-size: 1rem;
    text-align: center;
}

.cart-actions {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 30px;
}

.cta-button.btn-secondary {
    background-color: transparent;
    border-color: #555;
    color: #aaa;
}
.cta-button.btn-secondary:hover {
    background-color: #555;
    color: var(--color-text-cream);
    border-color: #555;
}

.cart-summary {
    background-color: var(--admin-panel-bg);
    border: 1px solid var(--admin-border);
    padding: 30px;
    border-radius: 4px;
    position: sticky; /* Kaydırdıkça takip etmesi için */
    top: 120px; /* Header yüksekliği + biraz boşluk */
}

.cart-summary h3 {
    font-family: var(--font-serif-display);
    font-size: 1.8rem;
    margin-bottom: 25px;
    padding-bottom: 15px;
    border-bottom: 1px solid var(--admin-border);
}

.summary-row {
    display: flex;
    justify-content: space-between;
    margin-bottom: 15px;
    font-size: 1rem;
}
.summary-row span:first-child {
    color: #aaa;
}
.summary-row.total {
    font-size: 1.3rem;
    font-weight: bold;
    margin-top: 25px;
    padding-top: 20px;
    border-top: 1px solid var(--admin-border);
}

.cta-button.btn-checkout {
    width: 100%;
    margin-top: 20px;
    padding: 20px;
    font-size: 1.1rem;
}

.cart-empty {
    padding: 80px 0;
}
.cart-empty h2 {
    font-family: var(--font-serif-display);
    font-size: 2rem;
    margin-bottom: 40px;
    opacity: 0.8;
}

/* ==========================================================================
   YENİ PREMİUM İLETİŞİM SAYFASI STİLLERİ
   ========================================================================== */

.contact-hero { height: 70vh; position: relative; display: flex; align-items: center; overflow: hidden; margin-top: -95px; }
.contact-hero-bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-size: cover; background-position: center; filter: brightness(0.6); transform: scale(1.1); }
.contact-hero-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(to top, var(--color-background) 0%, transparent 100%); z-index: 1; }
.hero-text-wrapper { position: relative; z-index: 2; text-align: center; }

.contact-main-section { padding: 100px 0; background-color: var(--color-background); }
.contact-grid-modern { display: grid; grid-template-columns: 1fr; gap: 60px; align-items: start; }
@media (min-width: 992px) { .contact-grid-modern { grid-template-columns: 1fr 1.2fr; gap: 100px; } }

.info-card-premium { position: relative; }
.card-header h2 { margin-bottom: 20px; }
.card-header p { font-size: 1.1rem; opacity: 0.7; margin-bottom: 40px; }

.contact-methods { margin-bottom: 40px; }
.method-item { display: flex; gap: 20px; margin-bottom: 35px; }
.method-icon { width: 50px; height: 50px; border: 1px solid var(--color-gold-metal); display: flex; align-items: center; justify-content: center; font-size: 1.2rem; color: var(--color-gold-metal); flex-shrink: 0; }
.method-text h3 { font-family: var(--font-serif-display); font-size: 0.9rem; letter-spacing: 2px; text-transform: uppercase; color: #777; margin-bottom: 8px; }
.method-link { font-size: 1.3rem; transition: color 0.3s; }
.method-link:hover { color: var(--color-gold-highlight); }
.map-link { color: var(--color-gold-metal); font-weight: bold; font-size: 0.9rem; text-transform: uppercase; margin-top: 10px; display: inline-block; }

.social-connect h3 { font-family: var(--font-serif-display); font-size: 1.1rem; margin-bottom: 15px; color: var(--color-gold-metal); }
.social-icons-row { display: flex; gap: 15px; }
.social-icons-row a { width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; border: 1px solid #333; transition: all 0.3s; }
.social-icons-row a:hover { background: var(--color-gold-metal); color: var(--color-background); border-color: var(--color-gold-metal); }

.form-wrapper-premium { background: #161515; padding: 50px; border: 1px solid rgba(166, 124, 82, 0.1); position: relative; }
.form-heading { font-family: var(--font-serif-display); font-size: 1.8rem; margin-bottom: 40px; }

.form-grid { display: grid; grid-template-columns: 1fr; gap: 0px; }
@media (min-width: 768px) { .form-grid { grid-template-columns: 1fr 1fr; gap: 30px; } }

.input-group-modern { position: relative; margin-bottom: 40px; }
.input-group-modern input, .input-group-modern textarea { width: 100%; padding: 10px 0; background: none; border: none; border-bottom: 1px solid #333; color: var(--color-text-cream); font-size: 1.1rem; transition: all 0.3s ease; }
.input-group-modern label { position: absolute; top: 10px; left: 0; color: #666; pointer-events: none; transition: all 0.3s ease; }
.input-group-modern input:focus ~ label, .input-group-modern input:not(:placeholder-shown) ~ label, .input-group-modern textarea:focus ~ label, .input-group-modern textarea:not(:placeholder-shown) ~ label { top: -20px; font-size: 0.8rem; color: var(--color-gold-metal); }
.input-bar { position: absolute; bottom: 0; left: 50%; width: 0; height: 1px; background: var(--color-gold-metal); transition: all 0.4s ease; }
.input-group-modern input:focus ~ .input-bar, .input-group-modern textarea:focus ~ .input-bar { width: 100%; left: 0; }

.submit-btn-premium { width: 100%; background: var(--color-gold-metal); border: none; padding: 20px; color: var(--color-background); font-family: var(--font-serif-display); font-weight: bold; text-transform: uppercase; letter-spacing: 3px; display: flex; align-items: center; justify-content: center; gap: 15px; cursor: pointer; transition: all 0.4s; }
.submit-btn-premium:hover { background: var(--color-gold-highlight); letter-spacing: 4px; }

.map-section-full { position: relative; height: 500px; filter: grayscale(1) invert(0.9); transition: filter 0.5s; }
.map-section-full:hover { filter: grayscale(0) invert(0); }
.map-overlay-content { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 2; pointer-events: none; text-align: center; color: var(--color-background); opacity: 0; transition: opacity 0.4s; font-size: 1.2rem; font-weight: bold; }
.map-section-full:hover .map-overlay-content { opacity: 1; }