/*
Theme Name: Matbah Premium V35 - Spacing Fix
Author: Matbah Derneği
Description: Fixed vertical spacing between Dictionary text and button to match CTA section.
Version: 35.0
*/

@import url('https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,300;0,400;0,700;1,400&family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400&display=swap');

* { margin: 0; padding: 0; box-sizing: border-box; }
body, html { font-family: 'Lato', sans-serif !important; color: #2C2A29; background-color: #F8F5F0; overflow-x: hidden; scroll-behavior: smooth; }
h1, h2, h3, h4, h5, h6 { font-family: 'Playfair Display', serif !important; color: #800000; }
a { color: #800000; text-decoration: none; transition: 0.3s; }
a:hover { opacity: 0.7; }

header { position: fixed; top: 0; left: 0; width: 100%; padding: 40px 5%; display: flex; justify-content: space-between; align-items: center; z-index: 1000; transition: all 0.4s ease; pointer-events: none; }
header > * { pointer-events: auto; }
.logo { max-width: 60%; display: flex; align-items: center; }
.logo-img { max-width: 100%; height: auto; transition: opacity 0.4s ease; }
header.nav-light { color: #800000; }
header.nav-dark { color: #FDFBF7; }
.menu-btn { font-family: 'Lato', sans-serif !important; font-size: 14px; letter-spacing: 2px; cursor: pointer; font-weight: 700; text-transform: uppercase; }

.menu-overlay { position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; background: #2C2A29; color: #FDFBF7; z-index: 2000; display: flex; flex-direction: column; justify-content: center; align-items: center; opacity: 0; pointer-events: none; transition: opacity 0.4s ease; }
.menu-overlay.active { opacity: 1; pointer-events: auto; }
.menu-close { position: absolute; top: 40px; right: 5%; font-family: 'Lato', sans-serif; font-size: 14px; letter-spacing: 2px; cursor: pointer; font-weight: 700; text-transform: uppercase; }
.matbah-nav { list-style: none; text-align: center; }
.matbah-nav li { margin: 20px 0; }
.matbah-nav a { font-family: 'Playfair Display', serif !important; font-size: 4vw; color: #FDFBF7; text-decoration: none; transition: color 0.3s; display: block; }
.matbah-nav a:hover { color: #800000; }

.footer-section { background-color: #800000; color: #FDFBF7; padding: 100px 5%; text-align: center; }
.footer-title { font-size: 4.5vw; margin-bottom: 40px; color: #FDFBF7; }
.btn-contact, .btn-module { display: inline-block; padding: 15px 45px; border: 1px solid; border-radius: 50px; letter-spacing: 2px; font-size: 14px; text-transform: uppercase; transition: 0.3s; margin-top: 0; font-weight: 700; }
.btn-contact { border-color: #FDFBF7; color: #FDFBF7; }
.btn-contact:hover { background-color: #FDFBF7; color: #800000; }
.btn-module { border-color: #800000; color: #800000; background-color: transparent; }
.btn-module:hover { background-color: #800000; color: #FDFBF7; }
.btn-module-alt { background-color: #800000; color: #FDFBF7; border-color: #800000; }
.btn-module-alt:hover { background-color: transparent; color: #800000; }

.footer-socials { margin-top: 40px; display: flex; justify-content: center; gap: 25px; }
.footer-socials a { color: #FDFBF7; opacity: 0.6; transition: all 0.3s ease; display: inline-flex; align-items: center; justify-content: center; }
.footer-socials a:hover { opacity: 1; transform: translateY(-3px); }

.snap-wrapper { width: 100%; position: relative; }
.snap-section { width: 100%; min-height: 100vh; display: flex; flex-direction: column; justify-content: center; padding: 100px 10%; position: relative; }
.bg-color-0 { background-color: #FDFBF7; } .bg-color-1 { background-color: #F8F5F0; } .bg-color-2 { background-color: #F0EBE1; } .bg-color-3 { background-color: #EAE4D8; } .bg-color-4 { background-color: #E3DCCE; } .bg-color-5 { background-color: #DCD4C4; } .bg-color-6 { background-color: #D5CCBA; } .bg-color-7 { background-color: #CFC5B1; }

.section-content { max-width: 70%; margin: 0 auto; text-align: center; }
.content-left { margin-left: 0; margin-right: auto; text-align: left; }
.content-right { margin-right: 0; margin-left: auto; text-align: right; }
.section-title { font-size: 4vw; margin-bottom: 30px; line-height: 1.1; }
.section-text { font-size: 1.1vw; line-height: 1.8; color: #4A4846; }

.section-team { max-width: 100% !important; padding: 0 5%; }
.team-grid { display: flex; gap: 1.5%; width: 100%; margin-top: 40px; justify-content: space-between; align-items: flex-start; }
.team-member { width: 12.8%; text-align: center; transition: transform 0.4s ease; }
.team-photo-wrapper { position: relative; width: 100%; aspect-ratio: 3/4; overflow: hidden; margin-bottom: 20px; background: #EAE4D8; }
.team-photo { width: 100%; height: 100%; object-fit: cover; transition: transform 0.6s ease; display: block; }
.team-member:hover .team-photo { transform: scale(1.05); }
.team-overlay { position: absolute; inset: 0; background: rgba(44, 42, 41, 0.4); opacity: 0; display: flex; justify-content: center; align-items: center; transition: opacity 0.4s ease; }
.team-member:hover .team-overlay { opacity: 1; }
.social-icon-svg { color: #FDFBF7; width: 40px; height: 40px; transition: transform 0.3s ease; }
.social-icon-svg:hover { transform: scale(1.15); }
.team-name { font-family: 'Playfair Display', serif; font-size: 1.3vw; color: #800000; margin-bottom: 5px; line-height: 1.2; }
.team-role { font-family: 'Lato', sans-serif; font-size: 0.75vw; color: #4A4846; text-transform: uppercase; letter-spacing: 1px; }

.cta-buttons { margin-top: 40px; display: flex; justify-content: flex-end; gap: 15px; flex-wrap: wrap; }
.counters-grid { display: flex; justify-content: space-between; gap: 40px; }
.counter-box { text-align: center; flex: 1; }
.counter-num { font-size: 5vw; font-family: 'Playfair Display', serif; color: #800000; margin-bottom: 10px; }
.counter-label { font-size: 1.2vw; color: #4A4846; text-transform: uppercase; letter-spacing: 2px; }
.blog-grid { display: flex; gap: 30px; margin-top: 40px; justify-content: center; }
.blog-card { flex: 1; background: #fff; padding: 20px; box-shadow: 0 10px 30px rgba(0,0,0,0.03); text-align: left; transition: transform 0.3s; display: flex; flex-direction: column; }
.blog-card:hover { transform: translateY(-10px); }
.blog-thumb { width: 100%; height: 200px; object-fit: cover; margin-bottom: 20px; }
.blog-title { font-size: 1.5vw; margin-bottom: 10px; }
.blog-excerpt { font-size: 1vw; color: #4A4846; flex-grow: 1; }

.rehber-grid { display: flex; flex-wrap: wrap; gap: 30px; margin-top: 50px; }
.rehber-item { flex: 1 1 calc(33.333% - 30px); background: #fff; border-radius: 8px; overflow: hidden; box-shadow: 0 10px 30px rgba(0,0,0,0.03); text-decoration: none; color: inherit; transition: transform 0.3s; }
.rehber-item:hover { transform: translateY(-10px); }
.rehber-thumb { width: 100%; height: 250px; object-fit: cover; }
.rehber-content { padding: 25px; }
.rehber-title { font-family: 'Playfair Display', serif; font-size: 24px; color: #800000; margin-bottom: 10px; }
.rehber-meta { font-family: 'Lato', sans-serif; font-size: 12px; color: #888; text-transform: uppercase; letter-spacing: 1px; margin-bottom: 15px; }
.sozluk-container { max-width: 900px; margin: 150px auto 100px auto; padding: 0 20px; }
.sozluk-grid { display: flex; flex-direction: column; gap: 20px; margin-top: 40px; }
.sozluk-item { background: #fff; padding: 30px; border-radius: 8px; box-shadow: 0 5px 15px rgba(0,0,0,0.03); border-left: 5px solid #800000; }
.sozluk-term { font-family: 'Playfair Display', serif; color: #800000; font-size: 28px; margin-bottom: 10px; }
.sozluk-desc { font-family: 'Lato', sans-serif; color: #4A4846; font-size: 16px; line-height: 1.8; }

.kumbara-container { max-width: 1000px; margin: 150px auto 100px auto; padding: 0 20px; }
.kumbara-header { text-align: center; margin-bottom: 60px; }
.kumbara-header h1 { font-size: 48px; margin-bottom: 15px; }
.kumbara-header p { font-size: 18px; color: #4A4846; }
.kumbara-form { background: #fff; padding: 50px; border-radius: 12px; box-shadow: 0 20px 50px rgba(0,0,0,0.05); }
.form-group { margin-bottom: 30px; }
.form-label { display: block; font-family: 'Playfair Display', serif; font-size: 22px; color: #800000; margin-bottom: 15px; border-bottom: 1px solid #EAE4D8; padding-bottom: 10px; }
.form-control { width: 100%; padding: 15px; font-family: 'Lato', sans-serif; font-size: 16px; border: 1px solid #DCD4C4; border-radius: 6px; background: #FDFBF7; transition: 0.3s; }
.form-control:focus { outline: none; border-color: #800000; background: #fff; }
textarea.form-control { resize: vertical; min-height: 100px; }
.ingredient-row { display: flex; gap: 10px; margin-bottom: 15px; align-items: center; }
.ing-col-component { flex: 2; } .ing-col-name { flex: 3; } .ing-col-amount { flex: 1; } .ing-col-unit { flex: 2; }
.btn-add-row { background: transparent; border: 1px dashed #800000; color: #800000; padding: 10px 20px; cursor: pointer; border-radius: 4px; font-family: 'Lato'; font-weight: bold; transition: 0.3s; display: inline-block;}
.btn-add-row:hover { background: #800000; color: #fff; }
.step-row { display: flex; gap: 15px; margin-bottom: 15px; }
.step-number { font-family: 'Playfair Display', serif; font-size: 24px; color: #800000; font-weight: bold; width: 30px; text-align: right; padding-top: 10px; }
.step-input { flex: 1; }
.btn-submit-recipe { background: #800000; color: #fff; border: none; padding: 20px 40px; font-size: 18px; font-family: 'Lato'; font-weight: bold; letter-spacing: 2px; border-radius: 50px; cursor: pointer; width: 100%; transition: 0.3s; margin-top: 20px; }
.btn-submit-recipe:hover { background: #2C2A29; }

.recipe-card-container { max-width: 1200px; margin: 150px auto 100px auto; padding: 0 20px; }
.recipe-header { text-align: center; margin-bottom: 50px; }
.recipe-title { font-size: 56px; margin-bottom: 15px; }
.recipe-meta { font-family: 'Lato'; color: #888; text-transform: uppercase; letter-spacing: 2px; }
.recipe-grid { display: flex; gap: 60px; }
.recipe-sidebar { flex: 1; background: #fff; padding: 40px; border-radius: 12px; box-shadow: 0 15px 40px rgba(0,0,0,0.04); align-self: flex-start; position: sticky; top: 100px; }
.recipe-main { flex: 2; }
.sidebar-title { font-family: 'Playfair Display', serif; font-size: 28px; color: #800000; border-bottom: 2px solid #EAE4D8; padding-bottom: 15px; margin-bottom: 25px; }
.component-group { margin-bottom: 25px; }
.component-title { font-family: 'Lato'; font-weight: bold; text-transform: uppercase; letter-spacing: 1px; color: #4A4846; margin-bottom: 15px; font-size: 14px; background: #F8F5F0; padding: 5px 10px; border-radius: 4px; display: inline-block; }
.ingredient-list { list-style: none; }
.ingredient-list li { display: flex; justify-content: space-between; border-bottom: 1px dashed #EAE4D8; padding: 10px 0; font-family: 'Lato'; color: #2C2A29; }
.ingredient-list li span.ing-qty { font-weight: bold; color: #800000; text-align: right; }
.steps-title { font-family: 'Playfair Display', serif; font-size: 36px; color: #800000; margin-bottom: 30px; }
.step-item { display: flex; gap: 20px; margin-bottom: 30px; }
.step-item-num { font-family: 'Playfair Display', serif; font-size: 40px; color: #EAE4D8; font-weight: bold; line-height: 1; }
.step-item-text { font-family: 'Lato'; font-size: 18px; line-height: 1.8; color: #4A4846; padding-top: 5px; }

.page-container { max-width: 800px; margin: 150px auto 100px auto; padding: 0 20px; }
.page-title { font-size: 60px; margin-bottom: 40px; text-align: center; }
.page-content { font-size: 20px; line-height: 1.9; color: #4A4846; }
.post-meta { text-align: center; font-family: 'Lato'; color: #888; margin-bottom: 40px; text-transform: uppercase; letter-spacing: 1px; }

@media (max-width: 768px) {
    header { padding: 15px 5%; background-color: rgba(248, 245, 240, 0.98); box-shadow: 0 2px 10px rgba(0,0,0,0.05); }
    header.nav-dark { background-color: rgba(44, 42, 41, 0.98); box-shadow: 0 2px 10px rgba(0,0,0,0.5); }
    .logo { max-width: 70%; }
    .logo-img { max-width: 140px !important; }
    
    .section-content { max-width: 100% !important; text-align: center !important; }
    .content-left, .content-right { margin: 0 auto; text-align: center; }
    .hero-title-normal { font-size: 40px !important; }
    .hero-title-italic { font-size: 48px !important; }
    .section-title { font-size: 36px !important; margin-bottom: 10px; }
    .section-text { font-size: 16px !important; }
    .cta-buttons { justify-content: center; }
    .snap-section { padding-top: 100px; justify-content: flex-start; }
    
    .team-grid { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: 20px; gap: 15px; -webkit-overflow-scrolling: touch; scrollbar-width: none; justify-content: flex-start; margin-top: 20px; align-items: stretch; }
    .team-grid::-webkit-scrollbar { display: none; }
    .team-member { min-width: 70vw; scroll-snap-align: center; flex: none; transform: none !important; } 
    
    .team-member.role-1 { order: 1; }
    .team-member.role-2 { order: 2; }
    .team-member.role-3 { order: 3; }
    .team-member.role-4 { order: 4; }
    .team-member.role-5 { order: 5; }

    .team-name { font-size: 24px !important; }
    .team-role { font-size: 12px !important; }
    
    .counters-grid { flex-direction: column; gap: 30px; }
    .counter-num { font-size: 48px !important; }
    .counter-label { font-size: 16px !important; }
    .blog-grid { flex-direction: column; }
    .blog-title { font-size: 22px !important; }
    .blog-excerpt { font-size: 16px !important; }
    .footer-title { font-size: 32px !important; }
    .matbah-nav a { font-size: 36px !important; }
    .rehber-item { flex: 1 1 100%; }
    .recipe-grid { flex-direction: column; }
    .recipe-sidebar { position: static; }
    .ingredient-row { flex-direction: column; gap: 5px; background: #f9f9f9; padding: 15px; border-radius: 8px; align-items: stretch; }
    .kumbara-form { padding: 20px; }
    .recipe-title { font-size: 36px; }
}
