@import url('https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,300;0,9..144,450;0,9..144,600;0,9..144,700;1,9..144,450;1,9..144,600&family=Source+Serif+4:ital,opsz,wght@0,8..60,400;0,8..60,500;0,8..60,600;1,8..60,400&family=IBM+Plex+Mono:wght@400;500&display=swap');

:root{
  --paper: #ECE3CE;
  --paper-deep: #E1D5B8;
  --ink: #1C1712;
  --ink-soft: #2A231C;
  --burgundy: #7A2430;
  --burgundy-deep: #4A141C;
  --gold: #B08D3E;
  --gold-soft: #C7A662;
  --slate: #35424A;
  --rule: rgba(28,23,18,0.16);
  --rule-light: rgba(236,227,206,0.22);
}
*{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth;}
body{
  background:var(--paper);
  color:var(--ink);
  font-family:'Source Serif 4', serif;
  font-size:17px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
.mono{font-family:'IBM Plex Mono', monospace; letter-spacing:0.04em;}
a{color:inherit;}
img{max-width:100%; display:block;}
.wrap{max-width:1180px; margin:0 auto; padding:0 40px;}
h1,h2,h3,h4{font-family:'Fraunces', serif; font-weight:600; color:var(--ink);}
.rule{height:1px; background:linear-gradient(90deg, transparent, var(--rule) 15%, var(--rule) 85%, transparent); margin:0 auto; max-width:1100px;}

/* ============ NAV ============ */
.site-header{
  position:fixed; top:0; left:0; right:0; z-index:100;
  padding:22px 0;
  transition:background 0.4s ease, padding 0.4s ease, box-shadow 0.4s ease;
}
.site-header.solid{
  background:rgba(28,23,18,0.92);
  backdrop-filter:blur(8px);
  padding:14px 0;
  box-shadow:0 2px 20px rgba(0,0,0,0.25);
}
.site-header .wrap{display:flex; align-items:center; justify-content:space-between;}
.brand{
  font-family:'Fraunces', serif; font-weight:600; font-size:19px;
  color:#F3ECD8; letter-spacing:0.01em; text-decoration:none;
  display:flex; flex-direction:column; line-height:1.1;
}
.brand small{font-family:'IBM Plex Mono', monospace; font-size:9.5px; letter-spacing:0.18em; color:var(--gold-soft); font-weight:400; margin-top:3px;}
nav.main-nav{display:flex; gap:30px; align-items:center;}
nav.main-nav a{
  color:#EAE1C8; text-decoration:none; font-family:'IBM Plex Mono', monospace;
  font-size:12px; letter-spacing:0.08em; text-transform:uppercase;
  position:relative; padding:4px 0;
}
nav.main-nav a::after{
  content:""; position:absolute; left:0; bottom:-2px; width:0; height:1px; background:var(--gold-soft);
  transition:width 0.3s ease;
}
nav.main-nav a:hover::after, nav.main-nav a.active::after{width:100%;}
nav.main-nav a.active{color:var(--gold-soft);}
.nav-toggle{display:none; flex-direction:column; gap:5px; background:none; border:none; cursor:pointer; padding:6px;}
.nav-toggle span{width:24px; height:1.5px; background:#EAE1C8;}

@media (max-width:900px){
  nav.main-nav{
    position:fixed; inset:0 0 0 auto; width:78%; max-width:340px;
    background:var(--ink); flex-direction:column; align-items:flex-start;
    padding:100px 32px 40px; gap:26px; transform:translateX(100%);
    transition:transform 0.4s ease; box-shadow:-10px 0 40px rgba(0,0,0,0.4);
  }
  nav.main-nav.open{transform:translateX(0);}
  .nav-toggle{display:flex;}
}

/* ============ HERO SLIDER ============ */
.hero-slider{position:relative; height:100vh; min-height:640px; overflow:hidden; background:var(--ink);}
.hero-slide{
  position:absolute; inset:0; opacity:0; transition:opacity 1.2s ease;
  display:flex; align-items:flex-end;
}
.hero-slide.active{opacity:1;}
.hero-slide .bg{position:absolute; inset:0; z-index:0;}
.hero-slide .bg svg{width:100%; height:100%; object-fit:cover;}
.hero-slide .scrim{
  position:absolute; inset:0; z-index:1;
  background:linear-gradient(180deg, rgba(20,15,10,0.35) 0%, rgba(18,13,9,0.55) 55%, rgba(14,10,7,0.92) 100%);
}
.hero-content{position:relative; z-index:2; padding:0 40px 100px; max-width:1180px; margin:0 auto; width:100%;}
.hero-eyebrow{
  font-family:'IBM Plex Mono', monospace; font-size:12px; letter-spacing:0.3em;
  text-transform:uppercase; color:var(--gold-soft); margin-bottom:20px;
  display:flex; align-items:center; gap:14px;
}
.hero-eyebrow::before{content:""; width:40px; height:1px; background:var(--gold-soft);}
.hero-title{
  font-family:'Fraunces', serif; font-weight:700; font-size:clamp(42px,7vw,84px);
  line-height:1.02; color:#F6EFDC; letter-spacing:-0.015em; max-width:820px;
}
.hero-title em{font-style:italic; color:var(--gold-soft); font-weight:450;}
.hero-sub{
  font-size:18px; color:#D9CDAE; max-width:560px; margin-top:22px; line-height:1.7;
}
.hero-cta{display:flex; gap:16px; margin-top:36px; flex-wrap:wrap;}
.btn{
  display:inline-flex; align-items:center; gap:10px;
  padding:14px 28px; font-family:'IBM Plex Mono', monospace; font-size:12.5px;
  letter-spacing:0.1em; text-transform:uppercase; text-decoration:none;
  border-radius:1px; transition:all 0.3s ease; cursor:pointer; border:1px solid transparent;
}
.btn-gold{background:var(--gold-soft); color:var(--ink);}
.btn-gold:hover{background:#D8BB79;}
.btn-outline{border-color:rgba(246,239,220,0.4); color:#F6EFDC;}
.btn-outline:hover{border-color:#F6EFDC; background:rgba(246,239,220,0.08);}
.btn-outline-dark{border-color:var(--rule); color:var(--ink);}
.btn-outline-dark:hover{border-color:var(--ink);}

.hero-dots{
  position:absolute; z-index:3; right:40px; bottom:40px;
  display:flex; flex-direction:column; gap:10px; align-items:flex-end;
}
.hero-dots button{
  width:34px; height:2px; background:rgba(246,239,220,0.35); border:none; cursor:pointer; transition:background 0.3s;
}
.hero-dots button.active{background:var(--gold-soft);}
.hero-nav-arrows{position:absolute; z-index:3; bottom:40px; left:40px; display:flex; gap:12px;}
.hero-nav-arrows button{
  width:42px; height:42px; border-radius:50%; border:1px solid rgba(246,239,220,0.35);
  background:rgba(20,15,10,0.3); color:#F6EFDC; cursor:pointer; font-size:16px;
  display:flex; align-items:center; justify-content:center; transition:all 0.3s;
}
.hero-nav-arrows button:hover{border-color:#F6EFDC; background:rgba(246,239,220,0.12);}

.scroll-cue{
  position:absolute; z-index:3; left:40px; bottom:40px; display:none;
  font-family:'IBM Plex Mono', monospace; font-size:10.5px; color:#D9CDAE; letter-spacing:0.2em;
  writing-mode:vertical-rl;
}

/* ============ SECTION SCAFFOLDING ============ */
.section{padding:100px 0;}
.section.tight{padding:70px 0;}
.section-eyebrow{
  font-family:'IBM Plex Mono', monospace; font-size:11.5px; letter-spacing:0.24em;
  text-transform:uppercase; color:var(--burgundy); margin-bottom:14px;
  display:flex; align-items:center; gap:12px;
}
.section-eyebrow::before{content:"—"; color:var(--gold);}
.section-title{font-size:clamp(28px,3.6vw,42px); margin-bottom:8px;}
.section-head-row{
  display:flex; justify-content:space-between; align-items:flex-end; gap:24px;
  margin-bottom:52px; flex-wrap:wrap;
}
.section-desc{max-width:560px; color:#5a5148; font-size:16px;}
.link-more{
  font-family:'IBM Plex Mono', monospace; font-size:12px; letter-spacing:0.08em;
  text-transform:uppercase; text-decoration:none; color:var(--burgundy);
  border-bottom:1px solid var(--burgundy); padding-bottom:2px; white-space:nowrap;
}
.dark-section{background:var(--ink); color:#EAE1C8;}
.dark-section .section-title, .dark-section h2, .dark-section h3{color:#F3ECD8;}
.dark-section .section-eyebrow{color:var(--gold-soft);}
.dark-section .section-desc{color:#B8AD92;}

/* ============ ABOUT TEASER ============ */
.about-teaser{display:grid; grid-template-columns:0.85fr 1.15fr; gap:64px; align-items:center;}
.about-portrait{
  aspect-ratio:3/3; border-radius:2px; overflow:hidden; position:relative;
  background:linear-gradient(160deg, #2A231C, #4A141C 60%, #1C1712);
  border:1px solid var(--rule);
}
.about-portrait .frame-label{
  position:absolute; inset:0; display:flex; align-items:center; justify-content:center;
  flex-direction:column; gap:10px; text-align:center; padding:30px;
}
.about-portrait .frame-label .mono{color:var(--gold-soft); font-size:11px; letter-spacing:0.15em;}
.about-portrait .frame-label p{color:#D9CDAE; font-size:13px; max-width:220px;}
.about-body p{margin-bottom:16px; font-size:16.5px; color:#3a332b;}
.about-body p:first-of-type::first-letter{
  font-family:'Fraunces', serif; font-weight:600; font-size:60px; float:left;
  line-height:0.78; padding:5px 10px 0 0; color:var(--burgundy);
}
.stat-row{display:flex; gap:40px; margin-top:32px; flex-wrap:wrap;}
.stat{}
.stat .num{font-family:'Fraunces', serif; font-weight:700; font-size:36px; color:var(--burgundy-deep);}
.stat .lbl{font-family:'IBM Plex Mono', monospace; font-size:11px; letter-spacing:0.08em; color:var(--slate); text-transform:uppercase; margin-top:4px;}

/* ============ BOOK SLIDER (homepage) ============ */
.book-slider-track{display:flex; gap:28px; overflow-x:auto; scroll-snap-type:x mandatory; padding-bottom:16px; scrollbar-width:none;}
.book-slider-track::-webkit-scrollbar{display:none;}
.book-card{
  scroll-snap-align:start; flex:0 0 300px; text-decoration:none; color:inherit;
  display:block; group:1;
}
.book-cover{
  aspect-ratio:2/3; border-radius:2px; position:relative; overflow:hidden;
  background:linear-gradient(155deg, var(--burgundy-deep), var(--burgundy) 55%, #2A0E14);
  box-shadow:0 20px 40px -12px rgba(28,23,18,0.35);
  transition:transform 0.4s ease, box-shadow 0.4s ease;
  display:flex; align-items:center; justify-content:center; padding:26px; text-align:center;
}
.book-card:hover .book-cover{transform:translateY(-8px); box-shadow:0 30px 50px -14px rgba(28,23,18,0.45);}
.book-cover .book-title-inline{font-family:'Fraunces', serif; font-style:italic; font-weight:500; font-size:19px; color:#F3ECD8; line-height:1.35;}
.book-cover .book-orn{position:absolute; top:20px; left:20px; right:20px; height:1px; background:rgba(176,141,62,0.5);}
.book-cover .book-orn.bottom{top:auto; bottom:20px;}
.book-meta{margin-top:16px;}
.book-meta .cat{font-family:'IBM Plex Mono', monospace; font-size:10.5px; color:var(--gold); letter-spacing:0.1em; text-transform:uppercase;}
.book-meta h3{font-size:18px; margin-top:6px;}

/* ============ EVENT / NEWS CARDS ============ */
.card-grid{display:grid; grid-template-columns:repeat(auto-fit, minmax(260px,1fr)); gap:2px; background:var(--rule); border:1px solid var(--rule);}
.ev-card{background:var(--paper); padding:32px; transition:background 0.3s;}
.ev-card:hover{background:var(--paper-deep);}
.ev-card .type{font-family:'IBM Plex Mono', monospace; font-size:10.5px; letter-spacing:0.1em; text-transform:uppercase; color:var(--burgundy);}
.ev-card .date{font-family:'IBM Plex Mono', monospace; font-size:12px; color:var(--slate); margin-top:8px;}
.ev-card h3{font-size:19px; margin-top:12px; line-height:1.3;}
.ev-card p{font-size:14.5px; color:#5a5148; margin-top:10px;}
.ev-card .tag-placeholder{
  margin-top:16px; display:inline-block; font-family:'IBM Plex Mono', monospace;
  font-size:10px; color:#9a8f7a; border:1px dashed var(--rule); padding:4px 10px;
}

/* ============ GALLERY GRID ============ */
.gallery-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:10px;}
.gallery-grid .g-item{
  aspect-ratio:1/1; border-radius:1px; overflow:hidden; cursor:pointer; position:relative;
  background:linear-gradient(145deg, var(--slate), var(--ink));
}
.gallery-grid .g-item svg{width:100%; height:100%;}
.gallery-grid .g-item .g-cap{
  position:absolute; inset:auto 0 0 0; padding:14px; background:linear-gradient(0deg, rgba(0,0,0,0.65), transparent);
  color:#F3ECD8; font-family:'IBM Plex Mono', monospace; font-size:10.5px; opacity:0; transition:opacity 0.3s;
}
.gallery-grid .g-item:hover .g-cap{opacity:1;}
@media (max-width:900px){.gallery-grid{grid-template-columns:repeat(2,1fr);}}

/* ============ VIDEO GRID ============ */
.video-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
.video-card{cursor:pointer; text-decoration:none; color:inherit;}
.video-thumb{
  aspect-ratio:16/9; border-radius:2px; position:relative; overflow:hidden;
  background:linear-gradient(155deg, var(--burgundy-deep), var(--ink));
}
.video-thumb .play-btn{
  position:absolute; inset:0; display:flex; align-items:center; justify-content:center;
}
.video-thumb .play-btn span{
  width:58px; height:58px; border-radius:50%; background:rgba(246,239,220,0.14);
  border:1px solid rgba(246,239,220,0.5); display:flex; align-items:center; justify-content:center;
  transition:all 0.3s;
}
.video-thumb .play-btn span::after{content:""; border-style:solid; border-width:8px 0 8px 14px; border-color:transparent transparent transparent #F3ECD8; margin-left:4px;}
.video-card:hover .play-btn span{background:var(--gold-soft); border-color:var(--gold-soft);}
.video-card:hover .play-btn span::after{border-left-color:var(--ink);}
.video-card .v-title{margin-top:14px; font-size:16px; font-family:'Fraunces',serif; font-weight:600;}
.video-card .v-meta{font-family:'IBM Plex Mono', monospace; font-size:10.5px; color:var(--gold); margin-top:4px;}
@media (max-width:900px){.video-grid{grid-template-columns:repeat(1,1fr);}}

/* ============ LIGHTBOX / MODAL ============ */
.lightbox-overlay, .video-modal-overlay{
  position:fixed; inset:0; background:rgba(12,9,6,0.94); z-index:1000;
  display:none; align-items:center; justify-content:center; padding:40px;
}
.lightbox-overlay.open, .video-modal-overlay.open{display:flex;}
.lightbox-overlay .lb-content{max-width:900px; width:100%; text-align:center;}
.lightbox-overlay .lb-frame{aspect-ratio:4/3; border-radius:2px; overflow:hidden; margin-bottom:20px;}
.lightbox-overlay .lb-frame svg{width:100%; height:100%;}
.lightbox-overlay .lb-cap{color:#D9CDAE; font-family:'IBM Plex Mono', monospace; font-size:12px;}
.video-modal-overlay .vm-content{max-width:900px; width:100%;}
.video-modal-overlay .vm-frame{aspect-ratio:16/9; background:#000; border-radius:2px; overflow:hidden;}
.video-modal-overlay .vm-frame iframe{width:100%; height:100%; border:0;}
.modal-close{
  position:absolute; top:28px; right:32px; width:44px; height:44px; border-radius:50%;
  border:1px solid rgba(246,239,220,0.4); background:none; color:#F3ECD8; font-size:20px;
  cursor:pointer; display:flex; align-items:center; justify-content:center; transition:all 0.3s;
}
.modal-close:hover{background:rgba(246,239,220,0.12); border-color:#F3ECD8;}
.lb-arrow{
  position:absolute; top:50%; transform:translateY(-50%); background:none; border:none;
  color:#F3ECD8; font-size:32px; cursor:pointer; padding:10px; opacity:0.7; transition:opacity 0.3s;
}
.lb-arrow:hover{opacity:1;}
.lb-arrow.prev{left:14px;} .lb-arrow.next{right:14px;}

/* ============ PAGE HERO (inner pages) ============ */
.page-hero{
  padding:170px 0 70px; background:var(--ink); color:#F3ECD8; position:relative; overflow:hidden;
}
.page-hero::before{
  content:""; position:absolute; inset:0;
  background:radial-gradient(circle at 15% 20%, rgba(176,141,62,0.14), transparent 45%),
             radial-gradient(circle at 85% 80%, rgba(122,36,48,0.22), transparent 50%);
}
.page-hero .wrap{position:relative; z-index:1;}
.breadcrumb{font-family:'IBM Plex Mono', monospace; font-size:11px; letter-spacing:0.1em; color:var(--gold-soft); text-transform:uppercase; margin-bottom:18px;}
.page-hero h1{font-size:clamp(32px,5vw,54px); color:#F6EFDC;}
.page-hero p{color:#C9BE9E; max-width:600px; margin-top:16px; font-size:16.5px;}

/* ============ TIMELINE (shared) ============ */
.tezkire-list{border-top:1px solid var(--rule);}
.tezkire-item{display:grid; grid-template-columns:130px 1px 1fr; gap:0 28px; padding:28px 0; border-bottom:1px solid var(--rule);}
.tezkire-item .yil{font-family:'IBM Plex Mono', monospace; font-size:14px; color:var(--burgundy); padding-top:2px;}
.tezkire-item .cizgi-dikey{background:var(--rule);}
.tezkire-item .icerik .kurum{font-family:'Fraunces', serif; font-weight:600; font-size:19px; margin-bottom:4px;}
.tezkire-item .icerik .aciklama{font-size:15.5px; color:#4a423a;}
.tezkire-item .icerik .tez{margin-top:8px; font-style:italic; font-size:15px; color:var(--slate); border-left:2px solid var(--gold); padding-left:12px;}

/* ============ FOOTER ============ */
footer.site-footer{background:var(--ink); color:#B8AD92; padding:70px 0 30px;}
.footer-grid{display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:40px; padding-bottom:50px;}
.footer-grid h4{color:#F3ECD8; font-family:'IBM Plex Mono', monospace; font-size:11px; letter-spacing:0.12em; text-transform:uppercase; margin-bottom:18px; font-weight:500;}
.footer-grid ul{list-style:none;}
.footer-grid li{margin-bottom:10px;}
.footer-grid a{text-decoration:none; color:#B8AD92; font-size:14px; transition:color 0.3s;}
.footer-grid a:hover{color:var(--gold-soft);}
.footer-bottom{
  border-top:1px solid rgba(184,173,146,0.2); padding-top:24px;
  display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px;
  font-family:'IBM Plex Mono', monospace; font-size:11px; letter-spacing:0.04em;
}
.social-row{display:flex; gap:14px;}
.social-row a{
  width:36px; height:36px; border-radius:50%; border:1px solid rgba(184,173,146,0.3);
  display:flex; align-items:center; justify-content:center; text-decoration:none; color:#EAE1C8;
  font-size:13px; transition:all 0.3s;
}
.social-row a:hover{border-color:var(--gold-soft); color:var(--gold-soft);}

@media (max-width:900px){
  .about-teaser{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr 1fr;}
  .card-grid{grid-template-columns:1fr;}
  .gallery-grid{grid-template-columns:repeat(2,1fr);}
  .wrap{padding:0 22px;}
}

.reveal{opacity:0; transform:translateY(18px); transition:opacity 0.7s ease, transform 0.7s ease;}
.reveal.in{opacity:1; transform:translateY(0);}

.placeholder-note{
  font-family:'IBM Plex Mono', monospace; font-size:11px; color:#9a8f7a;
  border:1px dashed var(--rule); padding:10px 16px; margin-top:14px; display:inline-block;
}

@media (prefers-reduced-motion: reduce){ html{scroll-behavior:auto;} .reveal{transition:none; opacity:1; transform:none;} }
.hero-slide .bg{
    position:absolute;
    inset:0;
    overflow:hidden;
}

.hero-video{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    z-index:0;
}

.hero-slide .scrim{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.45);
    z-index:1;
}

.hero-content{
    position:relative;
    z-index:2;
}
.about-portrait {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.portrait-caption {
  padding: 24px;
  text-align: center;
  margin-auto: auto; /* Alanın ortasına dikey hizalamak için */
}

.portrait-eyebrow {
  display: block;
  font-size: 0.85rem;
  letter-spacing: 2px;
  color: #c5a059; /* Tasarımınıza uygun altın/krem tonu */
  margin-bottom: 8px;
  text-transform: uppercase;
}

.portrait-title {
  font-size: 1.25rem;
  color: #ffffff;
  margin: 0;
  font-weight: 600;
}
/* Kitap Kapak Konteynırı ve Efektler */
.book-cover {
  position: relative;
  overflow: hidden;
  border-radius: 4px; /* İsteğe bağlı köşe yuvarlatma */
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15); /* Hafif gölge */
  transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1), box-shadow 0.4s ease;
}

/* Kapağın Kendisine Görsel Efektler */
.book-cover img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
}

/* Işık (Shining) Parlama Katmanı */
.book-cover::after {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 60%;
  height: 100%;
  background: linear-gradient(
    90deg,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, 0.35) 50%,
    rgba(255, 255, 255, 0) 100%
  );
  transform: skewX(-25deg);
  pointer-events: none;
  transition: left 0.75s ease-in-out;
}

/* Hover (Üzerine Gelince) Animasyonları */
.book-cover:hover {
  box-shadow: 0 18px 35px rgba(0, 0, 0, 0.25);
}

.book-cover:hover img {
  transform: scale(1.08); /* Yumuşak Yakınlaşma (Zoom) */
}

.book-cover:hover::after {
  left: 150%; /* Işığın soldan sağa geçişi */
}