:root{
  --parchment:#e9dfc4;
  --parchment-dark:#d8caa2;
  --ink:#2b2416;
  --forest:#1c2a1c;
  --forest-2:#26361f;
  --gold:#c8a24a;
  --gold-bright:#e6c877;
  --rust:#7a4324;
  --line:rgba(200,162,74,0.35);
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{overflow-x:hidden;}
body{
  background:var(--forest);
  color:var(--parchment);
  font-family:'Cormorant Garamond', serif;
  font-size:19px;
  line-height:1.6;
}
h1,h2,h3,.brand{
  font-family:'Cinzel', serif;
  letter-spacing:.04em;
}
a{color:inherit;text-decoration:none;}

/* ---------- top nav ---------- */
header{
  position:fixed;top:0;left:0;right:0;z-index:50;
  display:flex;align-items:center;justify-content:space-between;
  padding:18px 5vw;
  background:linear-gradient(to bottom, rgba(15,20,12,0.92), rgba(15,20,12,0));
}
.brand{
  display:flex;align-items:center;gap:12px;
  font-size:1.05rem;
  color:var(--gold-bright);
  text-transform:uppercase;
}
header .brand{
  align-self:flex-start;
  align-items:flex-start;
}
header .brand span{
  padding-top:10px;
}
.brand .mark{
  width:82px;height:106px;flex:none;
  object-fit:contain;
}
nav ul{
  display:flex;gap:30px;list-style:none;
}
nav a{
  font-family:'Cinzel', serif;
  font-size:.76rem;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--parchment);
  opacity:.85;
  padding-bottom:4px;
  border-bottom:1px solid transparent;
  transition:.25s;
}
nav a:hover, nav a.active{opacity:1;border-color:var(--gold);color:var(--gold-bright);}

/* ---------- menüdeki kategori açılırı ---------- */
/* li blok kalır: bağlantı diğer menü öğeleriyle aynı hizada dursun */
.nav-alt{position:relative;display:block;}
.nav-alt-ok{
  position:relative;
  display:inline-flex;align-items:center;justify-content:center;
  vertical-align:middle;
  border:0;background:transparent;
  padding:0 4px;margin-left:2px;
  color:var(--parchment);opacity:.7;
  font-size:.6rem;line-height:1;
  cursor:pointer;
  transition:.25s;
}
/* yerleşimi bozmadan dokunmatik için geniş vuruş alanı */
.nav-alt-ok::after{
  content:"";
  position:absolute;top:50%;left:50%;
  transform:translate(-50%,-50%);
  width:38px;height:38px;
}
.nav-alt-ok::before{content:"▾";}
.nav-alt-ok:hover, .nav-alt.acik .nav-alt-ok{opacity:1;color:var(--gold-bright);}
.nav-alt.acik .nav-alt-ok{transform:rotate(180deg);}
.nav-alt-menu{
  display:none;
  /* menü, öğeye bitişik başlar: aradaki boşlukta imleç düşüp menü kapanmasın */
  position:absolute;top:100%;left:-16px;
  min-width:210px;
  list-style:none;
  padding:16px 0 10px;
  background:rgba(12,17,10,0.97);
  border:1px solid var(--line);
  z-index:60;
}
.nav-alt:hover .nav-alt-menu,
.nav-alt.acik .nav-alt-menu{display:block;}
.nav-alt-menu li{display:block;}
.nav-alt-menu a{
  display:block;
  padding:9px 20px;
  border-bottom:0;
  font-size:.72rem;
  opacity:.9;
}
.nav-alt-menu a:hover{
  background:rgba(200,162,74,0.12);
  color:var(--gold-bright);
  opacity:1;
}

/* ---------- kategori slider'ı ---------- */
/* her seferinde tek görsel gösterir */
.kategori-slider{
  position:relative;
  width:100%;
}
.kategori-ray{
  display:flex;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
}
.kategori-ray::-webkit-scrollbar{display:none;}
.kategori-kart{
  position:relative;
  flex:0 0 100%;
  aspect-ratio:16 / 7;
  overflow:hidden;
  border:1px solid var(--line);
  scroll-snap-align:start;
  transition:.25s;
}
.kategori-kart img{
  width:100%;height:100%;
  object-fit:cover;display:block;
  filter:saturate(0.8) brightness(0.5);
  transition:.35s;
}
.kategori-kart:hover{border-color:var(--gold);}
.kategori-kart:hover img{filter:saturate(0.95) brightness(0.62);transform:scale(1.04);}
.kategori-kart-perde{
  position:absolute;left:0;right:0;bottom:0;
  padding:22px 24px 20px;
  background:linear-gradient(to top, rgba(12,17,10,0.94), rgba(12,17,10,0.55) 55%, rgba(12,17,10,0) 100%);
}
.kategori-kart-perde h3{
  font-size:1.3rem;
  color:var(--gold-bright);
  text-shadow:0 2px 12px rgba(0,0,0,0.85);
}
.kategori-kart-perde span{
  display:block;margin-top:4px;
  font-family:'Cinzel', serif;
  font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--parchment-dark);
}
.kategori-ok{
  position:absolute;top:50%;transform:translateY(-50%);
  z-index:2;
  width:42px;height:42px;
  display:flex;align-items:center;justify-content:center;
  border:1px solid var(--line);
  background:rgba(12,17,10,0.78);
  color:var(--gold-bright);
  font-size:1.1rem;line-height:1;
  cursor:pointer;
  transition:.2s;
}
.kategori-ok:hover{border-color:var(--gold);background:rgba(12,17,10,0.95);}
.kategori-ok[hidden]{display:none;}
.kategori-ok.geri{left:14px;}
.kategori-ok.ileri{right:14px;}
.kategori-ok.geri::before{content:"‹";}
.kategori-ok.ileri::before{content:"›";}
.kategori-slider.tek-kart .kategori-ok,
.kategori-slider.tek-kart .kategori-noktalar{display:none;}

.kategori-noktalar{
  position:absolute;left:0;right:0;bottom:14px;
  z-index:2;
  display:flex;justify-content:center;gap:9px;
}
.kategori-noktalar button{
  width:8px;height:8px;padding:0;
  border:1px solid var(--gold);
  background:transparent;
  cursor:pointer;
  transform:rotate(45deg);
  transition:.2s;
}
.kategori-noktalar button.active{background:var(--gold);}

/* ---------- kategori şeridi ---------- */
.kategori-serit{
  display:flex;flex-wrap:wrap;justify-content:center;gap:12px;
  max-width:820px;margin:0 auto 44px;
}
.kategori-serit a{
  font-family:'Cinzel', serif;
  font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;
  color:var(--parchment-dark);
  border:1px solid var(--line);
  padding:9px 18px;
  transition:.2s;
}
.kategori-serit a:hover{border-color:var(--gold);color:var(--gold-bright);}
.kategori-serit a.active{
  background:var(--gold);border-color:var(--gold);color:var(--forest);
}

.menu-toggle{
  display:none;
  flex-direction:column;justify-content:center;gap:5px;
  width:34px;height:34px;
  background:transparent;border:none;cursor:pointer;
  flex:none;
}
.menu-toggle span{
  display:block;width:100%;height:2px;background:var(--gold-bright);transition:.25s;
}
.menu-toggle.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.menu-toggle.is-open span:nth-child(2){opacity:0;}
.menu-toggle.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

/* ---------- beyaz çerçeve düzeni (ana sayfa) ---------- */
/* görsel sayfanın zeminini kaplar, içerik ortadaki beyaz sütunda durur;
   böylece görsel çerçevenin dışında görünmeye devam eder */
.cerceve-zemin{
  position:fixed;inset:0;z-index:-1;
  background:url("/assets/rohan-map-hero.jpg") center center / cover no-repeat;
}
.cerceve-zemin::after{
  content:"";
  position:absolute;inset:0;
  background:linear-gradient(rgba(12,16,10,0.45), rgba(10,13,8,0.72));
}
.sayfa-cerceve{
  position:relative;z-index:1;
  width:min(1180px, calc(100% - 72px));
  margin:46px auto 64px;
  background:#fff;
  border:1px solid rgba(122,67,36,0.22);
  box-shadow:0 26px 70px rgba(0,0,0,0.45);
  /* çerçeve içinde açık tema: bileşenler zaten bu değişkenleri kullanıyor */
  --parchment:#2b2416;
  --parchment-dark:#5f5545;
  --ink:#2b2416;
  --gold:#9a7526;
  --gold-bright:#7a5312;
  --forest:#ffffff;
  --forest-2:#f5f0e4;
  --line:rgba(122,67,36,0.26);
  color:var(--parchment);
}
/* header çerçevenin içinde durur, sabit değil */
.sayfa-cerceve header{
  position:static;
  background:none;
  border-bottom:1px solid var(--line);
  /* yan dolgu marka satırına verilir ki yeşil şerit kenardan kenara uzansın */
  padding:0;
  /* site adı üst satırda, menü alt satırda */
  flex-wrap:wrap;
}
.sayfa-cerceve header .brand{margin:16px 0 0 34px;}
.sayfa-cerceve .menu-toggle{margin:0 34px 0 0;}
/* menü şeridi rohan yeşili: çerçevenin açık teması dışında kalır */
.sayfa-cerceve header nav{
  flex-basis:100%;
  margin-top:16px;
  background:#26361f;
}
.sayfa-cerceve header nav ul{
  justify-content:center;
  padding:14px 20px;
  gap:26px;
}
/* yalnızca üst seviye bağlantılar beyaz; açılır menü beyaz zeminde koyu kalır */
.sayfa-cerceve header nav > ul > li > a{color:#fff;opacity:.88;}
.sayfa-cerceve header nav > ul > li > a:hover,
.sayfa-cerceve header nav > ul > li > a.active{opacity:1;color:#fff;border-color:var(--gold);}
.sayfa-cerceve .nav-alt-ok{color:#fff;}
.sayfa-cerceve .nav-alt-menu{background:#fff;}
.sayfa-cerceve footer .copy{color:rgba(43,36,22,0.5);}

/* çerçeve içinde koyu zeminli kutular açık tona döner */
.sayfa-cerceve .hero-duyuru{background:var(--forest-2);}
.sayfa-cerceve .hero-duyuru:hover{background:#ece5d4;}
.sayfa-cerceve .hero-yan{background:var(--forest-2);}
.sayfa-cerceve .instagram-frame{background:var(--forest-2);}

/* ---------- hero ---------- */
.hero{
  position:relative;
  /* yan dolguyu .hero-content yönetir */
  padding:0;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  overflow:hidden;
}
.hero-content{
  position:relative;z-index:2;
  width:100%;
  max-width:none;
  padding:52px 48px 44px;
  display:grid;
  /* yaklaşan etkinlikler paneli sağ kenara doğru itilir */
  grid-template-columns:minmax(0,1.85fr) minmax(0,0.85fr);
  gap:40px;
  align-items:center;
  text-align:left;
}
.hero-ana{min-width:0;}
.kicker{
  font-family:'Cinzel', serif;
  font-size:.8rem;
  letter-spacing:.35em;
  text-transform:uppercase;
  color:var(--gold);
  margin-bottom:22px;
}
.hero h1{
  font-size:clamp(2.6rem, 6vw, 5rem);
  font-weight:900;
  color:var(--parchment);
  text-shadow:0 4px 24px rgba(0,0,0,0.6);
  line-height:1.05;
}
.hero h1 span{
  display:block;
  color:var(--gold-bright);
  font-size:.42em;
  letter-spacing:.25em;
  margin-top:16px;
  font-weight:500;
}
.hero p.lede{
  margin:24px 0 0;
  max-width:560px;
  font-size:1.25rem;
  font-style:italic;
  color:var(--parchment-dark);
}
.hero-cta{
  margin-top:34px;
  display:flex;
  gap:18px;
  flex-wrap:wrap;
}

/* ---------- hero: duyuru şeridi ve yaklaşan etkinlikler ---------- */
.hero-panel-baslik{
  display:flex;align-items:baseline;justify-content:space-between;gap:16px;
  font-family:'Cinzel', serif;
  font-size:.72rem;letter-spacing:.24em;text-transform:uppercase;
  color:var(--gold);
  padding-bottom:12px;
  margin-bottom:14px;
  border-bottom:1px solid var(--line);
}
.hero-panel-baslik a{
  font-size:.66rem;letter-spacing:.12em;
  color:var(--gold-bright);opacity:.85;
  white-space:nowrap;
}
.hero-panel-baslik a:hover{opacity:1;}

.hero-duyurular{
  margin-top:40px;
  /* sütunu doldurur: sağdaki panelle arada yalnızca ızgara boşluğu kalsın */
  max-width:none;
}
/* yer varsa yan yana, yoksa alt alta; boş sütun bırakmadan genişliği doldurur */
.hero-duyuru-liste{
  display:flex;flex-wrap:wrap;
  gap:12px;
}
.hero-duyuru-liste > .hero-duyuru{flex:1 1 240px;min-width:0;}
.hero-duyuru{
  display:block;
  padding:12px 16px;
  border:1px solid var(--line);
  border-left-width:3px;
  background:rgba(12,17,10,0.55);
  transition:.2s;
}
.hero-duyuru.onemli{border-left-color:var(--gold);}
.hero-duyuru:hover{border-color:var(--gold);background:rgba(12,17,10,0.75);}
.hero-duyuru-tarih{
  display:block;
  font-family:'Cinzel', serif;
  font-size:.64rem;letter-spacing:.1em;
  color:var(--gold);
  margin-bottom:3px;
}
.hero-duyuru b{
  font-weight:500;
  color:var(--parchment);
  font-size:1.02rem;
}

.hero-yan{
  /* sütunu tam doldurur: duyurularla arada yalnızca ızgara boşluğu kalır */
  width:100%;
  border:1px solid var(--line);
  background:rgba(12,17,10,0.72);
  padding:24px 24px 22px;
}
.hero-etkinlik{
  display:flex;gap:16px;align-items:center;
  padding:12px 0;
  border-bottom:1px solid rgba(200,162,74,0.18);
  transition:.2s;
}
.hero-etkinlik:last-child{border-bottom:none;padding-bottom:0;}
.hero-etkinlik:hover .hero-etkinlik-bilgi span{color:var(--parchment);}
.hero-etkinlik-tarih{
  flex:none;width:52px;text-align:center;
  font-family:'Cinzel', serif;
  font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;
  color:var(--gold);
}
.hero-etkinlik-tarih b{
  display:block;
  font-size:1.5rem;letter-spacing:0;
  color:var(--gold-bright);
  line-height:1.1;
}
.hero-etkinlik-bilgi{min-width:0;}
/* üstte büyük olan kategori adı, altta etkinliğin konusu */
.hero-etkinlik-bilgi h3{
  font-size:1.12rem;
  color:var(--gold-bright);
  line-height:1.25;
  transition:.2s;
}
.hero-etkinlik-bilgi span{
  display:block;margin-top:4px;
  font-size:.92rem;font-style:italic;
  color:var(--parchment-dark);
}
.hero-yan-bos{
  color:var(--parchment-dark);
  font-style:italic;
  font-size:.98rem;
}
.btn{
  font-family:'Cinzel', serif;
  font-size:.78rem;
  letter-spacing:.12em;
  text-transform:uppercase;
  padding:15px 34px;
  border:1px solid var(--gold);
  transition:.25s;
  display:inline-block;
  background:transparent;
  cursor:pointer;
}
.btn-solid{
  background:var(--gold);
  color:var(--forest);
}
.btn-solid:hover{background:var(--gold-bright);}
.btn-ghost{
  color:var(--gold-bright);
  background:transparent;
}
.btn-ghost:hover{background:rgba(200,162,74,0.12);}

.scroll-cue{
  position:absolute;bottom:34px;left:50%;transform:translateX(-50%);
  z-index:2;
  font-family:'Cinzel', serif;
  font-size:.7rem;
  letter-spacing:.3em;
  text-transform:uppercase;
  color:var(--gold);
  opacity:.75;
  display:flex;flex-direction:column;align-items:center;gap:10px;
}
.scroll-cue::after{
  content:"";
  width:1px;height:38px;
  background:linear-gradient(var(--gold), transparent);
}

/* ---------- section shell ---------- */
section{
  padding:120px 5vw;
  position:relative;
}
.section-head{
  text-align:center;
  max-width:680px;
  margin:0 auto 64px;
}
.section-head .kicker{margin-bottom:14px;}
.section-head h2{
  font-size:clamp(1.8rem,3.4vw,2.6rem);
  color:var(--gold-bright);
}
.rule{
  width:70px;height:2px;
  margin:20px auto 0;
  background:var(--gold);
  position:relative;
}
.rule::before,.rule::after{
  content:"";
  position:absolute;top:50%;translate:0 -50%;
  width:6px;height:6px;
  background:var(--gold);
  transform:rotate(45deg);
}
.rule::before{left:-14px;}
.rule::after{right:-14px;}

/* ---------- about ---------- */
.about{
  background:var(--forest-2);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.about-grid{
  max-width:1000px;margin:0 auto;
  display:grid;grid-template-columns:1fr 1fr;gap:60px;
  align-items:center;
}
.about p{color:var(--parchment-dark);margin-bottom:16px;font-size:1.15rem;}
.about-frame{
  border:1px solid var(--line);
  padding:8px;
}
.about-frame .inner{
  border:1px solid var(--gold);
  padding:40px 30px;
  text-align:center;
}
.about-frame h3{color:var(--gold-bright);font-size:1.1rem;margin-bottom:10px;}
.about-frame .rune{font-size:2.4rem;color:var(--gold);margin-bottom:14px;display:block;}

/* ---------- hakkımızda sayfası ---------- */
.about-page p{color:var(--parchment-dark);margin-bottom:16px;font-size:1.15rem;}
.about-page .about-grid{align-items:stretch;}
.about-page .about-frame{display:flex;}
.about-page .about-frame .inner{
  flex:1;
  display:flex;flex-direction:column;justify-content:center;
}
.about-page .about-frame p{margin-bottom:0;}

/* ---------- pillars ---------- */
.pillars{
  max-width:1100px;margin:0 auto;
  display:grid;grid-template-columns:repeat(3,1fr);gap:40px;
}
.pillar{
  text-align:center;
  padding:44px 26px;
  border:1px solid var(--line);
  background:linear-gradient(180deg, rgba(200,162,74,0.05), transparent);
  transition:.25s;
}
.pillar:hover{border-color:var(--gold);transform:translateY(-4px);}
.pillar .rune{
  font-size:2rem;color:var(--gold);margin-bottom:18px;display:block;
}
.pillar h3{
  color:var(--parchment);
  font-size:1.05rem;
  margin-bottom:12px;
}
.pillar p{
  color:var(--parchment-dark);
  font-size:1.02rem;
}

/* ---------- duyurular ---------- */
.duyurular{
  background:var(--forest-2);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  padding:50px 5vw;
}
.duyuru-list{
  max-width:820px;margin:0 auto;
  display:flex;flex-direction:column;gap:18px;
}
.duyuru-row{
  display:flex;gap:18px;align-items:flex-start;
  padding:18px 20px;
  border:1px solid var(--line);
  background:rgba(200,162,74,0.04);
}
.duyuru-row.onemli{border-color:var(--gold);}
.duyuru-tarih{
  font-family:'Cinzel', serif;
  font-size:.72rem;
  letter-spacing:.08em;
  color:var(--gold);
  white-space:nowrap;
  padding-top:3px;
}
.duyuru-body h3{font-size:1.05rem;color:var(--parchment);margin-bottom:4px;}
.duyuru-body p{color:var(--parchment-dark);font-size:.98rem;}
.duyuru-row.gecmis{opacity:.62;}

/* ---------- sayfalar arası geçiş ---------- */
.sayfa-gecis{
  text-align:center;
  border-top:1px solid var(--line);
}
.sayfa-gecis h2{
  font-size:clamp(1.6rem,3vw,2.2rem);
  color:var(--gold-bright);
  margin-bottom:18px;
}
.sayfa-gecis p{
  color:var(--parchment-dark);
  max-width:520px;margin:0 auto 30px;
  font-size:1.08rem;
  font-style:italic;
}

/* ---------- events ---------- */
.events{
  background:var(--forest-2);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.events-subhead{
  font-family:'Cinzel', serif;
  font-size:.85rem;
  letter-spacing:.15em;
  text-transform:uppercase;
  color:var(--gold-bright);
  max-width:820px;margin:0 auto 18px;
  padding-top:34px;
}
.events-subhead:first-child{padding-top:0;}
.events-list{
  max-width:820px;margin:0 auto 40px;
  display:flex;flex-direction:column;
}
.events-fallback{
  text-align:center;color:var(--parchment-dark);font-style:italic;
}
.event-row{
  display:grid;grid-template-columns:110px 1fr auto;
  gap:28px;align-items:center;
  padding:26px 10px;
  border-bottom:1px solid var(--line);
  transition:.2s;
}
a.event-row:hover{background:rgba(200,162,74,0.06);}
.events-list .event-row:first-child{border-top:1px solid var(--line);}
.event-date{
  font-family:'Cinzel', serif;
  color:var(--gold-bright);
  font-size:.85rem;
  letter-spacing:.08em;
  text-align:center;
  border-right:1px solid var(--line);
  padding-right:20px;
}
.event-date b{display:block;font-size:1.6rem;color:var(--gold);}
.event-info h3{font-size:1.15rem;color:var(--parchment);margin-bottom:4px;}
.event-info p{color:var(--parchment-dark);font-size:.98rem;}
.event-thumb{
  width:64px;height:64px;object-fit:cover;
  float:left;margin:0 14px 4px 0;
  border:1px solid var(--gold);
}
.event-tag{
  font-family:'Cinzel', serif;
  font-size:.68rem;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--forest);
  background:var(--gold);
  padding:6px 14px;
  white-space:nowrap;
}
.event-tag.gecmis{background:transparent;color:var(--parchment-dark);border:1px solid var(--line);}

/* ---------- gallery (kayan) ---------- */
.gallery{
  background:var(--forest);
}
.gallery-track{
  display:flex;gap:18px;
  max-width:1240px;margin:0 auto;
  overflow-x:auto;
  padding-bottom:20px;
  scroll-snap-type:x proximity;
  scrollbar-color:var(--gold) transparent;
}
.gallery-track::-webkit-scrollbar{height:8px;}
.gallery-track::-webkit-scrollbar-thumb{background:var(--gold);}
.gallery-track::-webkit-scrollbar-track{background:var(--forest-2);}
.gallery-item{
  flex:0 0 auto;
  width:min(280px, 70vw);
  scroll-snap-align:start;
  border:1px solid var(--line);
  padding:6px;
  background:var(--forest-2);
}
.gallery-item img{
  width:100%;height:220px;object-fit:cover;display:block;
}
.gallery-item .cap{
  padding:10px 6px 4px;
  font-size:.85rem;
  color:var(--parchment-dark);
}
.gallery-item .cap b{display:block;color:var(--gold-bright);font-family:'Cinzel', serif;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;margin-bottom:3px;}
.gallery-empty{text-align:center;color:var(--parchment-dark);font-style:italic;}

/* ---------- instagram ---------- */
.instagram{padding-bottom:60px;background:var(--forest-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.instagram-inner{
  max-width:1080px;margin:0 auto;
  display:grid;grid-template-columns:0.9fr 1.1fr;gap:60px;
  align-items:center;
}
.instagram-copy{text-align:left;}
.instagram-copy .kicker{margin-bottom:14px;}
.instagram-copy h2{
  font-size:clamp(1.6rem,3vw,2.3rem);
  color:var(--gold-bright);
}
.instagram-copy .rule{margin:20px 0 0;}
.instagram-copy .rule::before{left:0;}
.instagram-copy .rule::after{left:56px;right:auto;}
.insta-lede{
  color:var(--parchment-dark);
  font-style:italic;
  margin:20px 0 26px;
}
.instagram-frame{
  width:100%;max-width:340px;min-width:0;margin:0;
  min-height:220px;
  border:1px solid var(--line);
  padding:8px;
  box-sizing:border-box;
  overflow:hidden;
}
.instagram-frame *{max-width:100%;}
.instagram-frame .sk_branding{
  margin:0 !important;
  padding:0 !important;
  height:0 !important;
  min-height:0 !important;
  overflow:hidden !important;
}
.instagram-frame [href*="sociablekit"],
.instagram-frame [class*="branding"],
.instagram-frame [class*="powered"]{
  display:none !important;
}
.instagram-frame .sk-instagram-feed{
  min-height:220px;
  border:1px solid var(--gold);
  display:flex;align-items:center;justify-content:center;
  color:var(--parchment-dark);
  font-family:'Cinzel', serif;
  font-size:.75rem;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.instagram-frame .sk-instagram-feed:empty::before{
  content:"Instagram Beslemesi";
}

/* ---------- join cta ---------- */
.join{
  text-align:center;
  padding-top:60px;
}
.join h2{
  font-size:clamp(2rem,4vw,3rem);
  color:var(--gold-bright);
  margin-bottom:20px;
}
.join p{
  color:var(--parchment-dark);
  max-width:560px;margin:0 auto 36px;
  font-size:1.15rem;
  font-style:italic;
}

/* ---------- footer ---------- */
footer{
  padding:50px 5vw 40px;
  border-top:1px solid var(--line);
  text-align:center;
}
footer .brand{justify-content:center;margin-bottom:18px;}
footer .brand .mark{width:44px;height:56px;}
footer .foot-links{
  display:flex;gap:26px;justify-content:center;
  margin-bottom:22px;
  flex-wrap:wrap;
}
footer .foot-links a{
  font-family:'Cinzel', serif;
  font-size:.72rem;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--parchment-dark);
}
footer .foot-links a:hover{color:var(--gold-bright);}
footer .copy{
  font-size:.85rem;
  color:rgba(233,223,196,0.45);
}

/* ---------- inner page hero (yazılar / etkinlik detay) ---------- */
.page-hero{
  padding:170px 5vw 70px;
  text-align:center;
  background:var(--forest-2);
  border-bottom:1px solid var(--line);
}
.page-hero h1{
  font-size:clamp(2rem,4vw,3rem);
  color:var(--gold-bright);
}
.page-hero .lede{
  margin-top:18px;
  max-width:640px;margin-left:auto;margin-right:auto;
  color:var(--parchment-dark);
  font-style:italic;
  font-size:1.1rem;
}
.breadcrumb{
  font-family:'Cinzel', serif;
  font-size:.7rem;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--gold);
  margin-bottom:18px;
  display:inline-block;
}
.breadcrumb:hover{color:var(--gold-bright);}

/* ---------- yazılar listesi (zigzag) ---------- */
.yazi-filters{
  display:flex;gap:14px;justify-content:center;flex-wrap:wrap;
  margin-bottom:60px;
}
.yazi-filters a{
  font-family:'Cinzel', serif;
  font-size:.72rem;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--parchment-dark);
  border:1px solid var(--line);
  padding:9px 18px;
  transition:.2s;
}
.yazi-filters a:hover, .yazi-filters a.active{
  color:var(--forest);background:var(--gold);border-color:var(--gold);
}
.yazi-zigzag{
  max-width:900px;margin:0 auto;
  display:flex;flex-direction:column;
  gap:0;
}
.yazi-card{
  width:min(440px, 88vw);
  border:1px solid var(--line);
  background:linear-gradient(180deg, rgba(200,162,74,0.05), transparent);
  padding:32px 30px;
  margin-bottom:56px;
  transition:.25s;
  display:block;
}
.yazi-card:hover{border-color:var(--gold);transform:translateY(-3px);}
.yazi-zigzag .yazi-card:nth-child(3n+1){align-self:flex-start;}
.yazi-zigzag .yazi-card:nth-child(3n+2){align-self:flex-end;margin-top:40px;}
.yazi-zigzag .yazi-card:nth-child(3n+3){align-self:flex-start;margin-top:40px;}
.yazi-tur{
  font-family:'Cinzel', serif;
  font-size:.65rem;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--gold);
  margin-bottom:10px;
  display:block;
}
.yazi-card h3{
  font-size:1.35rem;
  color:var(--parchment);
  margin-bottom:6px;
}
.yazi-yazar{
  font-size:.85rem;
  color:var(--parchment-dark);
  font-style:italic;
  margin-bottom:14px;
  display:block;
}
.yazi-excerpt{
  position:relative;
  max-height:4.6em;
  overflow:hidden;
  color:var(--parchment-dark);
  font-size:.98rem;
  line-height:1.55;
}
.yazi-excerpt::after{
  content:"";
  position:absolute;left:0;right:0;bottom:0;height:2.6em;
  background:linear-gradient(to bottom, transparent, var(--forest) 92%);
}
.yazi-card:hover .yazi-excerpt::after{
  background:linear-gradient(to bottom, transparent, var(--forest-2) 92%);
}
.yazi-empty{text-align:center;color:var(--parchment-dark);font-style:italic;}

/* ---------- kütüphane (belgeler) ---------- */
/* düz metin belge listesi (etkinlik sayfasındaki "bu buluşmanın belgeleri") */
.belge-list{
  max-width:820px;margin:0 auto;
  display:flex;flex-direction:column;gap:18px;
}
.belge-card{
  display:block;
  border:1px solid var(--line);
  background:linear-gradient(180deg, rgba(200,162,74,0.05), transparent);
  padding:26px 28px;
  transition:.2s;
}
.belge-card:hover{border-color:var(--gold);transform:translateY(-2px);}
.belge-baslik{
  display:flex;align-items:baseline;justify-content:space-between;gap:14px;flex-wrap:wrap;
}
.belge-baslik h3{font-size:1.2rem;color:var(--parchment);}
.belge-card .belge-yazar{
  font-size:.88rem;color:var(--gold-bright);font-style:italic;
  margin:8px 0 10px;
}
.belge-ozet{color:var(--parchment-dark);font-size:.98rem;}

/* kütüphane sayfası: PDF kapaklı kart ızgarası */
.belge-izgara{
  max-width:1040px;margin:0 auto;
  display:grid;grid-template-columns:repeat(3,1fr);gap:26px;
}
.belge-kapak{
  display:block;
  border:1px solid var(--line);
  background:var(--forest-2);
  transition:.2s;
}
.belge-kapak:hover{border-color:var(--gold);transform:translateY(-2px);}
.belge-onizleme{
  position:relative;
  /* A4 en-boy oranı (210 × 297) */
  aspect-ratio:210 / 297;
  overflow:hidden;
}
.belge-onizleme img{
  width:100%;height:100%;
  /* ilk sayfanın üst kısmı görünsün diye üstten hizalanır */
  object-fit:cover;object-position:top center;
  display:block;
}
.belge-onizleme-yok{
  position:absolute;inset:0;
  display:flex;align-items:center;justify-content:center;
  font-family:'Cinzel', serif;
  font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;
  color:var(--parchment-dark);opacity:.5;
}
/* başlık, kartı uzatmamak için önizlemenin üzerine gölgeyle biner */
.belge-perde{
  position:absolute;left:0;right:0;bottom:0;
  padding:22px 22px 20px;
  background:linear-gradient(
    to top,
    rgba(12,17,10,0.96) 0%,
    rgba(12,17,10,0.88) 45%,
    rgba(12,17,10,0.55) 75%,
    rgba(12,17,10,0) 100%
  );
}
.belge-perde h3{
  font-size:1.24rem;
  line-height:1.3;
  color:var(--parchment);
  text-shadow:0 2px 10px rgba(0,0,0,0.85);
}
.belge-rozet{
  position:absolute;top:14px;right:14px;z-index:1;
  font-family:'Cinzel', serif;
  font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;
  color:var(--forest);background:var(--gold);
  padding:4px 10px;white-space:nowrap;
}
.belge-perde .belge-yazar{
  font-size:.95rem;color:var(--gold-bright);font-style:italic;
  margin-top:7px;
  text-shadow:0 2px 10px rgba(0,0,0,0.85);
}

/* ---------- belge detay: künye / atıf / pdf ---------- */
.kunye{
  max-width:680px;margin:0 auto 40px;
  border:1px solid var(--gold);
  padding:28px 30px;
}
.kunye-row{
  display:grid;grid-template-columns:180px 1fr;gap:14px;
  font-size:.98rem;color:var(--parchment-dark);
  padding:7px 0;
}
.kunye-row:not(:last-child){border-bottom:1px solid var(--line);}
.kunye-row b{
  font-family:'Cinzel', serif;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;
  color:var(--gold-bright);font-weight:500;
}
.atif-kutu{
  max-width:680px;margin:0 auto 40px;
  background:var(--forest-2);border:1px solid var(--line);
  padding:22px 26px;
  display:flex;flex-direction:column;gap:16px;
}
.atif-metin{color:var(--parchment-dark);font-size:.95rem;line-height:1.6;}
.atif-btn{align-self:flex-start;}
.pdf-viewer{max-width:900px;margin:0 auto;position:relative;}
.pdf-frame{
  width:100%;height:75vh;min-height:420px;
  border:1px solid var(--line);display:block;background:var(--parchment);
}
.pdf-ac-btn{display:none;}
.pdf-indir{
  display:block;max-width:900px;margin:18px auto 0;
  text-align:center;
  font-family:'Cinzel', serif;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;
  color:var(--gold-bright);
}
.pdf-indir:hover{color:var(--gold);}

.belge-alt-baslik{
  max-width:680px;margin:60px auto 16px;
  font-family:'Cinzel', serif;
  font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;
  color:var(--parchment-dark);
  opacity:.8;
  border-top:1px solid var(--line);
  padding-top:24px;
}
.kunye-silik{
  border-color:var(--line);
  padding:20px 24px;
}
.kunye-silik .kunye-row b{color:var(--parchment-dark);opacity:.9;}
.atif-kutu-silik{
  background:transparent;
  border-color:var(--line);
}

/* ---------- albümler ---------- */
.albumler-grid{
  max-width:1100px;margin:0 auto;
  display:grid;grid-template-columns:repeat(auto-fill, minmax(240px, 1fr));gap:24px;
}
.albumler-card{
  display:block;border:1px solid var(--line);background:var(--forest-2);
  overflow:hidden;transition:.2s;
}
.albumler-card:hover{border-color:var(--gold);transform:translateY(-3px);}
.albumler-card img{width:100%;height:200px;object-fit:cover;display:block;}
.albumler-cap{padding:16px 18px;}
.albumler-cap b{display:block;color:var(--gold-bright);font-family:'Cinzel', serif;font-size:.95rem;margin-bottom:6px;}
.albumler-cap span{color:var(--parchment-dark);font-size:.85rem;}

/* ---------- hobbit yaşı hesaplayıcı ---------- */
.hobbit-kutu{
  max-width:520px;margin:0 auto;
  border:1px solid var(--gold);
  padding:40px 36px;
  text-align:center;
}
.hobbit-form label{
  display:block;
  font-family:'Cinzel', serif;
  font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;
  color:var(--gold-bright);
  margin-bottom:14px;
}
.hobbit-form-row{
  display:flex;gap:12px;justify-content:center;flex-wrap:wrap;
}
.hobbit-form input{
  width:140px;
  background:transparent;
  border:1px solid var(--line);
  color:var(--parchment);
  font-family:'Cormorant Garamond', serif;
  font-size:1.2rem;
  text-align:center;
  padding:12px;
}
.hobbit-form input:focus{outline:none;border-color:var(--gold);}
.hobbit-hata{
  color:var(--rust);
  font-size:.9rem;font-style:italic;
  margin-top:14px;
}
.hobbit-sonuc{
  margin-top:34px;
  padding-top:30px;
  border-top:1px solid var(--line);
  display:flex;flex-direction:column;align-items:center;gap:6px;
}
.hobbit-sonuc[hidden]{display:none;}
.hobbit-sonuc-label{
  font-family:'Cinzel', serif;
  font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;
  color:var(--parchment-dark);
}
.hobbit-sonuc-deger{
  font-family:'Cinzel', serif;
  font-size:3rem;font-weight:700;
  color:var(--gold-bright);
}
.hobbit-sonuc-birim{
  font-style:italic;
  color:var(--parchment-dark);
}

/* ---------- yazı detay ---------- */
.yazi-detay{
  max-width:680px;margin:0 auto;
  padding:70px 5vw 120px;
}
.yazi-detay .meta{
  text-align:center;margin-bottom:50px;
}
.yazi-detay .meta .yazi-tur{margin-bottom:14px;}
.yazi-detay h1{
  font-size:clamp(2rem,4vw,2.8rem);
  color:var(--gold-bright);
  margin-bottom:14px;
}
.yazi-detay .yazar-satiri{
  color:var(--parchment-dark);
  font-style:italic;
  font-size:1.05rem;
}
.yazi-detay .ceviri-notu{
  margin-top:8px;
  font-size:.9rem;
  color:var(--parchment-dark);
  opacity:.8;
}
.yazi-detay .kapak{
  width:100%;max-height:420px;object-fit:cover;
  border:1px solid var(--line);
  margin-bottom:50px;
}
.yazi-govde{
  font-size:1.15rem;
  color:var(--parchment);
}
.yazi-govde p{margin-bottom:1.4em;}
.yazi-govde.siir{
  text-align:center;
  font-style:italic;
  font-size:1.25rem;
  line-height:1.9;
  color:var(--parchment);
}
.yazi-govde.siir p{
  white-space:pre-line;
  margin-bottom:2.2em;
}

@media (max-width:1080px){
  .belge-izgara{grid-template-columns:repeat(2,1fr);}
}

@media (max-width:1080px){
  .hero-content{
    grid-template-columns:1fr;
    gap:40px;
    text-align:center;
    padding:36px 22px 34px;
  }
  .hero p.lede{margin-left:auto;margin-right:auto;}
  .hero-cta{justify-content:center;}
  .hero-duyurular{max-width:none;margin-top:34px;}
  .hero-yan{justify-self:center;max-width:520px;}
  .hero-etkinlik{text-align:left;}
}

@media (max-width:820px){
  .sayfa-cerceve{
    width:calc(100% - 20px);
    margin:16px auto 24px;
  }
  /* mobilde menü zaten yandan açılıyor: marka ile düğme tek satırda kalsın */
  .sayfa-cerceve header{padding:14px 0;flex-wrap:nowrap;}
  .sayfa-cerceve header .brand{margin:0 0 0 18px;}
  .sayfa-cerceve .menu-toggle{margin:0 18px 0 0;}
  /* yandan açılan panel de yeşil zemin, beyaz yazı */
  .sayfa-cerceve header nav{margin:0;background:#26361f;}
  .sayfa-cerceve header nav a{color:#fff;}
  .sayfa-cerceve header nav ul{padding:0;}
  /* panel zaten yeşil: açılır menü beyaz kutu olmasın */
  .sayfa-cerceve .nav-alt-menu{background:transparent;}
  .belge-izgara{grid-template-columns:1fr;}
  /* dokunmatikte açılır menü yalnızca oka basınca açılsın */
  .nav-alt:hover .nav-alt-menu{display:none;}
  .nav-alt-menu{
    position:static;
    width:100%;
    margin-top:14px;
    background:transparent;
    border:0;border-left:1px solid var(--line);
    padding:0;
  }
  .nav-alt.acik .nav-alt-menu{display:block;}
  .nav-alt-menu a{padding:10px 18px;font-size:.78rem;}
  .menu-toggle{display:flex;}
  nav{
    display:block;
    position:fixed;top:0;right:0;
    width:min(280px, 78vw);height:100vh;
    background:var(--forest-2);
    border-left:1px solid var(--line);
    padding:100px 30px 30px;
    transform:translateX(100%);
    transition:transform .3s ease;
    z-index:49;
  }
  nav.is-open{transform:translateX(0);}
  nav ul{flex-direction:column;gap:26px;}
  nav a{font-size:.85rem;}
  .about-grid{grid-template-columns:1fr;}
  .pillars{grid-template-columns:1fr;}
  .event-row{grid-template-columns:1fr;text-align:center;}
  .event-date{border-right:none;border-bottom:1px solid var(--line);padding:0 0 14px;margin-bottom:10px;}
  .instagram-inner{grid-template-columns:1fr;text-align:center;}
  .instagram-copy{text-align:center;}
  .instagram-copy .rule{margin:20px auto 0;}
  .instagram-copy .rule::before{left:-14px;}
  .instagram-copy .rule::after{left:auto;right:-14px;}
  .instagram-frame{margin:0 auto;}
  .duyuru-row{flex-direction:column;gap:8px;}
  .yazi-zigzag .yazi-card,
  .yazi-zigzag .yazi-card:nth-child(3n+1),
  .yazi-zigzag .yazi-card:nth-child(3n+2),
  .yazi-zigzag .yazi-card:nth-child(3n+3){
    align-self:center;width:100%;margin-top:0;margin-bottom:24px;
  }
  .kunye-row{grid-template-columns:1fr;gap:2px;}
  .pdf-frame{display:none;}
  .pdf-ac-btn{display:block;width:100%;text-align:center;}
}
