
/* ════════════════════════════════════════════
   TOKENS
════════════════════════════════════════════ */
:root {
  --red:        #C41230;
  --red-dark:   #9E0E27;
  --red-deep:   #72091C;
  --red-lt:     #FBF0F2;
  --red-mid:    #F2D5DB;
  --gold:       #C9973A;
  --gold-lt:    #FBF6EC;
  --white:      #FFFFFF;
  --paper:      #FAF8F5;
  --sand:       #F2EDE5;
  --ink:        #16120E;
  --ink-mid:    #3B342C;
  --muted:      #7C746A;
  --border:     #E4DDD5;
  --rule:       #EDE8E2;

  --radius-sm:  4px;
  --radius:     8px;
  --radius-lg:  14px;
  --radius-xl:  20px;

  --shadow-sm:  0 1px 4px rgba(0,0,0,.07);
  --shadow:     0 4px 18px rgba(0,0,0,.1);
  --shadow-lg:  0 12px 40px rgba(0,0,0,.14);
  --shadow-red: 0 8px 28px rgba(156,14,39,.28);
}

/* ════════════════════════════════════════════
   RESET & BASE
════════════════════════════════════════════ */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }

body {
  font-family: 'Plus Jakarta Sans', sans-serif;
  background: var(--paper);
  color: var(--ink);
  line-height: 1.6;
  overflow-x: hidden;
}

img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
button { cursor: pointer; border: none; background: none; font: inherit; }
ul, ol { list-style: none; }

/* ════════════════════════════════════════════
   UTILITIES
════════════════════════════════════════════ */
.container {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 20px;
}
@media(min-width:768px){ .container { padding: 0 32px; } }
@media(min-width:1024px){ .container { padding: 0 40px; } }

.section-gap { padding: 64px 0; }
@media(min-width:768px){ .section-gap { padding: 88px 0; } }

.section-label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  color: var(--red);
  margin-bottom: 10px;
}
.section-label::before {
  content: '';
  display: block;
  width: 24px; height: 2px;
  background: var(--red);
  border-radius: 1px;
}

.section-title {
  font-family: 'EB Garamond', serif;
  font-weight: 700;
  font-size: clamp(26px, 4vw, 38px);
  color: var(--ink);
  line-height: 1.2;
  letter-spacing: -.5px;
  margin-bottom: 6px;
}
.section-sub {
  font-size: 15px;
  color: var(--muted);
  max-width: 560px;
  line-height: 1.7;
}
.section-head {
  margin-bottom: 40px;
}

.see-all {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-weight: 700;
  font-size: 13.5px;
  color: var(--red);
  transition: gap .2s;
}
.see-all:hover { gap: 10px; }
.see-all svg { width: 16px; height: 16px; }

/* ════════════════════════════════════════════
   TOP BAR
════════════════════════════════════════════ */
.topbar {
  background: var(--ink);
  padding: 8px 0;
  border-bottom: 2px solid var(--red);
}
.topbar .container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
}
.topbar-left {
  font-size: 12px;
  color: rgba(255,255,255,.5);
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}
.topbar-left a { color: rgba(255,255,255,.5); transition: color .2s; }
.topbar-left a:hover { color: var(--white); }
.topbar-right {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-shrink: 0;
}
.topbar-social {
  display: flex;
  gap: 10px;
}
.topbar-social a {
  width: 28px; height: 28px;
  border-radius: 50%;
  background: rgba(255,255,255,.1);
  border: 1px solid rgba(255,255,255,.15);
  display: flex; align-items: center; justify-content: center;
  font-size: 13px;
  color: rgba(255,255,255,.6);
  transition: all .2s;
}
.topbar-social a:hover { background: var(--red); border-color: var(--red); color: var(--white); }
@media(max-width:640px){
  .topbar-left span:not(:first-child) { display: none; }
}

/* ════════════════════════════════════════════
   HEADER / NAV
════════════════════════════════════════════ */
header {
  background: var(--white);
  border-bottom: 1px solid var(--border);
  position: sticky;
  top: 0;
  z-index: 900;
  box-shadow: var(--shadow-sm);
}
.header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 68px;
  gap: 20px;
}

/* Logo */
.logo-link {
  display: flex;
  align-items: center;
  gap: 13px;
  flex-shrink: 0;
}
.logo-emblem {
  width: 46px; height: 46px;
  /* The crest PNG is a circle on a transparent square canvas — a white
     circular tile keeps the logo reading as a circle (a red/rounded-square
     tile would show through the transparent corners). */
  background: var(--white);
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-size: 22px;
  flex-shrink: 0;
  box-shadow: 0 2px 10px rgba(196,18,48,.3);
  position: relative;
  overflow: hidden;
}
.logo-emblem::after {
  content: '';
  position: absolute;
  top: -8px; right: -8px;
  width: 24px; height: 24px;
  border-radius: 50%;
  background: rgba(255,255,255,.15);
}
/* Real logo image inside the emblem tile (replaces the old emoji). */
.logo-emblem img {
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
}
.logo-text { line-height: 1.2; }
.logo-text .l1 {
  font-family: 'EB Garamond', serif;
  font-weight: 700;
  font-size: 16px;
  color: var(--ink);
  display: block;
  letter-spacing: -.2px;
}
.logo-text .l2 {
  font-size: 10.5px;
  color: var(--muted);
  display: block;
  letter-spacing: .5px;
  text-transform: uppercase;
  font-weight: 600;
}
/* Phones/tablets (below the 900px desktop-nav breakpoint): let the long brand
   title shrink and wrap instead of forcing one line, so the search/menu controls
   are never pushed off-screen. Placed AFTER the base .logo-link rule so it wins
   the cascade. The header grows a little taller when the title wraps; desktop
   (>=900px, where .desktop-nav appears) is unchanged. */
@media(max-width:899px){
  .header-inner { height: auto; min-height: 68px; padding: 8px 0; }
  .logo-link { flex-shrink: 1; min-width: 0; }
  .logo-text { min-width: 0; }
}

/* Desktop Nav */
.desktop-nav {
  display: none;
  align-items: center;
  gap: 2px;
}
/* Show the full top nav only when it actually fits (its intrinsic width is
   ~1316px); below this the hamburger drawer is used instead. Previously 900px,
   which clipped the nav/CTA on 1024-1280px screens. */
@media(min-width:1360px){ .desktop-nav { display: flex; } }
.desktop-nav a {
  font-size: 14px;
  font-weight: 600;
  color: var(--ink-mid);
  padding: 8px 14px;
  border-radius: var(--radius);
  transition: all .18s;
  white-space: nowrap;
}
.desktop-nav a:hover { background: var(--red-lt); color: var(--red); }
.desktop-nav a.active { color: var(--red); }

/* CTA in nav */
.nav-cta {
  display: none;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
}
@media(min-width:640px){ .nav-cta { display: flex; } }
.btn-nav-primary {
  background: var(--red);
  color: var(--white);
  font-weight: 700;
  font-size: 13.5px;
  padding: 9px 20px;
  border-radius: var(--radius);
  transition: all .2s;
  white-space: nowrap;
}
.btn-nav-primary:hover { background: var(--red-dark); box-shadow: var(--shadow-red); transform: translateY(-1px); }

/* Hamburger */
.hamburger {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42px; height: 42px;
  border-radius: var(--radius);
  border: 1.5px solid var(--border);
  background: var(--paper);
  flex-shrink: 0;
  transition: all .2s;
}
@media(min-width:1360px){ .hamburger { display: none; } }
.hamburger:hover { background: var(--red-lt); border-color: var(--red); }
.hamburger span {
  display: flex; flex-direction: column; gap: 4.5px;
  pointer-events: none;
}
.hamburger span i {
  display: block;
  width: 20px; height: 2px;
  background: var(--ink);
  border-radius: 2px;
  transition: all .3s;
}
.hamburger.open span i:nth-child(1) { transform: translateY(6.5px) rotate(45deg); }
.hamburger.open span i:nth-child(2) { opacity: 0; transform: scaleX(0); }
.hamburger.open span i:nth-child(3) { transform: translateY(-6.5px) rotate(-45deg); }

/* Mobile drawer */
.mobile-nav {
  position: fixed;
  top: 0; left: 0; right: 0; bottom: 0;
  background: var(--white);
  z-index: 800;
  transform: translateX(100%);
  visibility: hidden;
  transition: transform .35s cubic-bezier(.4,0,.2,1), visibility .35s;
  overflow-y: auto;
  padding-top: 80px;
  padding-bottom: 40px;
}
.mobile-nav.open { transform: translateX(0); visibility: visible; }
.mobile-nav-inner {
  padding: 24px 28px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.mobile-nav-inner a {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 15px 16px;
  border-radius: var(--radius);
  font-weight: 600;
  font-size: 16px;
  color: var(--ink);
  border-bottom: 1px solid var(--rule);
  transition: all .18s;
}
.mobile-nav-inner a:last-child { border-bottom: none; }
.mobile-nav-inner a:hover { background: var(--red-lt); color: var(--red); }
.mobile-nav-inner .mn-icon { font-size: 20px; width: 28px; text-align: center; }
.mobile-nav-cta {
  margin: 24px 28px 0;
  display: flex; flex-direction: column; gap: 12px;
}
.mobile-nav-cta a {
  display: block;
  text-align: center;
  padding: 14px;
  border-radius: var(--radius);
  font-weight: 700;
  font-size: 15px;
}
.mn-primary { background: var(--red); color: var(--white); }
.mn-secondary { background: var(--red-lt); color: var(--red); }

/* ════════════════════════════════════════════
   HERO
════════════════════════════════════════════ */
.hero {
  background: var(--red-deep);
  background-image:
    radial-gradient(ellipse at 30% 60%, rgba(200,0,40,.4) 0%, transparent 55%),
    radial-gradient(ellipse at 90% 10%, rgba(255,180,0,.08) 0%, transparent 45%);
  position: relative;
  overflow: hidden;
  padding: 0;
}
/* Texture overlay */
.hero::before {
  content: '';
  position: absolute; inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.025'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  pointer-events: none;
}
/* Bottom wave */
.hero::after {
  content: '';
  position: absolute;
  bottom: -1px; left: 0; right: 0;
  height: 60px;
  background: var(--paper);
  clip-path: ellipse(55% 100% at 50% 100%);
}

.hero-inner {
  padding: 72px 0 100px;
  display: grid;
  grid-template-columns: 1fr;
  gap: 48px;
  position: relative;
  z-index: 1;
}
@media(min-width:900px){
  .hero-inner {
    grid-template-columns: 1fr 420px;
    gap: 56px;
    align-items: center;
    padding: 88px 0 116px;
  }
}

.hero-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(255,255,255,.1);
  border: 1px solid rgba(255,255,255,.2);
  color: rgba(255,255,255,.85);
  font-size: 11.5px;
  font-weight: 700;
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 20px;
  letter-spacing: .8px;
  text-transform: uppercase;
}
.hero-pill .hp-dot {
  width: 6px; height: 6px;
  border-radius: 50%;
  background: #FFD580;
  animation: pulse 2s infinite;
}
@keyframes pulse { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:.5;transform:scale(.8)} }

.hero h1 {
  font-family: 'EB Garamond', serif;
  font-size: clamp(38px, 6vw, 66px);
  font-weight: 800;
  color: var(--white);
  line-height: 1.05;
  letter-spacing: -1.5px;
  margin-bottom: 20px;
}
.hero h1 em {
  font-style: italic;
  font-weight: 500;
  color: rgba(255,255,255,.6);
}
.hero h1 strong {
  font-weight: 800;
  color: var(--white);
  position: relative;
  display: inline-block;
}
.hero h1 strong::after {
  content: '';
  position: absolute;
  bottom: 2px; left: 0; right: 0;
  height: 3px;
  background: var(--gold);
  border-radius: 2px;
  opacity: .7;
}

.hero-desc {
  font-size: 16px;
  color: rgba(255,255,255,.65);
  max-width: 480px;
  line-height: 1.8;
  margin-bottom: 36px;
}
.hero-btns {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}
.btn-hero-w {
  background: var(--white);
  color: var(--red-dark);
  font-weight: 800;
  font-size: 15px;
  padding: 13px 28px;
  border-radius: var(--radius);
  transition: all .2s;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.btn-hero-w:hover { background: var(--sand); transform: translateY(-2px); box-shadow: 0 8px 24px rgba(0,0,0,.2); }
.btn-hero-ghost {
  background: rgba(255,255,255,.1);
  color: rgba(255,255,255,.9);
  border: 1.5px solid rgba(255,255,255,.25);
  font-weight: 700;
  font-size: 15px;
  padding: 12px 26px;
  border-radius: var(--radius);
  transition: all .2s;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.btn-hero-ghost:hover { background: rgba(255,255,255,.18); color: var(--white); }

/* Hero stats row */
.hero-stats {
  display: flex;
  gap: 28px;
  margin-top: 40px;
  flex-wrap: wrap;
}
.hs-item { text-align: left; }
.hs-num {
  font-family: 'EB Garamond', serif;
  font-weight: 700;
  font-size: 32px;
  color: var(--white);
  line-height: 1;
}
.hs-num span { color: #FFD580; }
.hs-label { font-size: 11.5px; color: rgba(255,255,255,.5); font-weight: 600; letter-spacing: .5px; text-transform: uppercase; margin-top: 2px; }

/* ────── UPCOMING EVENT CARD ────── */
.upcoming-card {
  background: var(--white);
  border-radius: var(--radius-xl);
  overflow: hidden;
  box-shadow: 0 24px 60px rgba(0,0,0,.25);
  position: relative;
}
.uc-banner {
  background: linear-gradient(135deg, var(--red) 0%, var(--red-dark) 100%);
  padding: 14px 22px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.uc-banner h4 {
  font-weight: 700;
  font-size: 13px;
  color: var(--white);
  letter-spacing: .3px;
  display: flex;
  align-items: center;
  gap: 7px;
}
.uc-badge {
  background: rgba(255,255,255,.2);
  color: rgba(255,255,255,.9);
  font-size: 10px;
  font-weight: 800;
  padding: 3px 10px;
  border-radius: 100px;
  letter-spacing: 1px;
  text-transform: uppercase;
}
.uc-body { padding: 22px; }
.uc-date {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: var(--red-lt);
  color: var(--red-dark);
  font-size: 11.5px;
  font-weight: 700;
  padding: 5px 12px;
  border-radius: 100px;
  margin-bottom: 12px;
}
.uc-title {
  font-family: 'EB Garamond', serif;
  font-weight: 700;
  font-size: 20px;
  color: var(--ink);
  line-height: 1.3;
  margin-bottom: 10px;
}
.uc-location {
  font-size: 13px;
  color: var(--muted);
  display: flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 18px;
}

/* Countdown */
.countdown {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
  margin-bottom: 20px;
}
.cd-unit {
  background: var(--red-lt);
  border: 1.5px solid var(--red-mid);
  border-radius: var(--radius);
  padding: 10px 8px;
  text-align: center;
}
.cd-num {
  font-family: 'EB Garamond', serif;
  font-weight: 700;
  font-size: 26px;
  color: var(--red-dark);
  line-height: 1;
  display: block;
}
.cd-label {
  font-size: 9.5px;
  font-weight: 700;
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: .8px;
  margin-top: 3px;
  display: block;
}

.uc-register {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background: var(--red);
  color: var(--white);
  font-weight: 700;
  font-size: 14px;
  padding: 13px;
  border-radius: var(--radius);
  transition: all .2s;
  text-decoration: none;
}
.uc-register:hover { background: var(--red-dark); box-shadow: var(--shadow-red); }

/* ════════════════════════════════════════════
   ANNOUNCEMENT ALERT
════════════════════════════════════════════ */
.alert-band {
  background: var(--gold-lt);
  border-top: 3px solid var(--gold);
  border-bottom: 1px solid #E8D49A;
  padding: 14px 0;
}
.alert-band .container {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
}
.ab-pill {
  background: var(--gold);
  color: var(--white);
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  padding: 4px 12px;
  border-radius: 2px;
  flex-shrink: 0;
}
.ab-text {
  font-size: 13.5px;
  color: var(--ink-mid);
  flex: 1;
  line-height: 1.5;
}
.ab-text strong { color: var(--ink); }
.ab-link {
  font-weight: 700;
  font-size: 13px;
  color: var(--gold);
  flex-shrink: 0;
  transition: color .2s;
}
.ab-link:hover { color: #8A6918; }

/* ════════════════════════════════════════════
   ETKINLIK (EVENTS)
════════════════════════════════════════════ */
.events-bg { background: var(--white); }

.events-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
}
@media(min-width:640px){ .events-grid { grid-template-columns: 1fr 1fr; } }
@media(min-width:1024px){ .events-grid { grid-template-columns: 1fr 1fr 1fr; } }

/* Event Card */
.event-card {
  background: var(--paper);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  overflow: hidden;
  transition: all .25s;
  display: flex;
  flex-direction: column;
}
.event-card:hover { box-shadow: var(--shadow-lg); transform: translateY(-3px); border-color: transparent; }

.ec-thumb {
  aspect-ratio: 16/9;
  background: var(--sand);
  position: relative;
  overflow: hidden;
}
.ec-thumb-img {
  width: 100%; height: 100%;
  object-fit: cover;
  transition: transform .4s ease;
}
.event-card:hover .ec-thumb-img { transform: scale(1.04); }
/* Placeholder thumb */
.ec-thumb-placeholder {
  width: 100%; height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 8px;
  font-size: 40px;
}
.ec-thumb-placeholder span {
  font-size: 12px;
  font-weight: 600;
  color: var(--muted);
}

.ec-tag {
  position: absolute;
  top: 12px; left: 12px;
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 1px;
  padding: 4px 10px;
  border-radius: 100px;
}
.tag-etkinlik { background: var(--red); color: var(--white); }
.tag-konser   { background: #9333ea; color: var(--white); }
.tag-egitim   { background: #0369a1; color: var(--white); }
.tag-sosyal   { background: #15803d; color: var(--white); }
.tag-upcoming { background: var(--gold); color: var(--white); }

.ec-body { padding: 18px 20px; flex: 1; display: flex; flex-direction: column; }
.ec-meta {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 10px;
  flex-wrap: wrap;
}
.ec-date {
  font-size: 12px;
  font-weight: 700;
  color: var(--red);
  display: flex;
  align-items: center;
  gap: 5px;
}
.ec-location-text {
  font-size: 12px;
  color: var(--muted);
  display: flex;
  align-items: center;
  gap: 4px;
}
.ec-title {
  font-family: 'EB Garamond', serif;
  font-weight: 700;
  font-size: 19px;
  color: var(--ink);
  line-height: 1.35;
  margin-bottom: 8px;
  flex: 1;
  transition: color .2s;
}
.event-card:hover .ec-title { color: var(--red); }
.ec-desc { font-size: 13.5px; color: var(--muted); line-height: 1.6; margin-bottom: 16px; }
.ec-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: auto;
  padding-top: 14px;
  border-top: 1px solid var(--rule);
}
.ec-attendees {
  font-size: 12px;
  color: var(--muted);
  display: flex;
  align-items: center;
  gap: 5px;
}
.ec-link {
  font-weight: 700;
  font-size: 13px;
  color: var(--red);
  display: flex;
  align-items: center;
  gap: 4px;
  transition: gap .2s;
}
.event-card:hover .ec-link { gap: 8px; }

/* ════════════════════════════════════════════
   PHOTO GALLERY
════════════════════════════════════════════ */
.gallery-bg { background: var(--paper); }

.gallery-tabs {
  display: flex;
  gap: 8px;
  margin-bottom: 32px;
  flex-wrap: wrap;
}
.gtab {
  font-weight: 700;
  font-size: 13px;
  padding: 8px 20px;
  border-radius: 100px;
  border: 1.5px solid var(--border);
  color: var(--ink-mid);
  background: var(--white);
  transition: all .2s;
}
.gtab:hover { border-color: var(--red); color: var(--red); }
.gtab.active { background: var(--red); color: var(--white); border-color: var(--red); }

/* Masonry-style grid */
.photo-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}
@media(min-width:640px){ .photo-grid { grid-template-columns: repeat(3, 1fr); } }
@media(min-width:1024px){ .photo-grid { grid-template-columns: repeat(4, 1fr); gap: 12px; } }

.photo-item {
  position: relative;
  border-radius: var(--radius);
  overflow: hidden;
  cursor: default;
  background: var(--sand);
}
.photo-item[data-full] { cursor: zoom-in; }   /* real photos open full-size */
.photo-item:nth-child(5),
.photo-item:nth-child(9) {
  grid-column: span 2;
}
.photo-aspect {
  aspect-ratio: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 8px;
  font-size: 36px;
  background: var(--sand);
  transition: transform .4s ease;
}
.photo-item:nth-child(5) .photo-aspect,
.photo-item:nth-child(9) .photo-aspect {
  aspect-ratio: 2/1;
}
.photo-item:hover .photo-aspect { transform: scale(1.04); }

.photo-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,.7) 0%, transparent 60%);
  opacity: 0;
  transition: opacity .3s;
  display: flex;
  align-items: flex-end;
  padding: 14px;
}
.photo-item:hover .photo-overlay { opacity: 1; }
.photo-caption {
  font-size: 12.5px;
  font-weight: 600;
  color: var(--white);
  line-height: 1.4;
}
/* Video marker */
.photo-play {
  position: absolute;
  top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  width: 44px; height: 44px;
  border-radius: 50%;
  background: rgba(255,255,255,.9);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  opacity: 0;
  transition: opacity .2s;
  pointer-events: none;
}
.photo-item.is-video .photo-play { opacity: 1; }

/* ════════════════════════════════════════════
   DUYURULAR
════════════════════════════════════════════ */
.duyuru-bg { background: var(--white); }

.duyuru-layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: 40px;
}
@media(min-width:900px){ .duyuru-layout { grid-template-columns: 1fr 340px; align-items: start; } }

.duyuru-list { display: flex; flex-direction: column; gap: 0; }

/* Featured duyuru */
.duyuru-featured {
  display: flex;
  gap: 0;
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  overflow: hidden;
  margin-bottom: 16px;
  background: var(--paper);
  text-decoration: none;
  transition: all .2s;
}
.duyuru-featured:hover { box-shadow: var(--shadow); border-color: var(--red); }
.df-stripe { width: 5px; background: var(--red); flex-shrink: 0; }
.df-body { padding: 22px 24px; }
.df-cat {
  font-size: 10.5px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  color: var(--red);
  margin-bottom: 8px;
  display: flex;
  align-items: center;
  gap: 7px;
}
.df-cat::before { content: ''; display: block; width: 16px; height: 2px; background: var(--red); }
.df-title {
  font-family: 'EB Garamond', serif;
  font-weight: 700;
  font-size: 20px;
  color: var(--ink);
  line-height: 1.35;
  margin-bottom: 8px;
  transition: color .2s;
}
.duyuru-featured:hover .df-title { color: var(--red); }
.df-excerpt { font-size: 14px; color: var(--muted); line-height: 1.65; margin-bottom: 12px; }
.df-meta { display: flex; align-items: center; gap: 12px; font-size: 12px; color: var(--muted); }
.df-meta strong { color: var(--red); font-size: 13px; font-weight: 700; }

/* Normal duyuru row */
.duyuru-item {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  padding: 16px 0;
  border-bottom: 1px solid var(--rule);
  text-decoration: none;
  transition: all .2s;
}
.duyuru-item:last-child { border-bottom: none; }
.duyuru-item:hover .di-title { color: var(--red); }
.di-bullet {
  width: 10px; height: 10px;
  border-radius: 50%;
  border: 2px solid var(--red);
  flex-shrink: 0;
  margin-top: 6px;
  transition: background .2s;
}
.duyuru-item:hover .di-bullet { background: var(--red); }
.di-body { flex: 1; }
.di-cat {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--red);
  margin-bottom: 4px;
  display: block;
}
.di-title {
  font-family: 'EB Garamond', serif;
  font-weight: 600;
  font-size: 16px;
  color: var(--ink);
  line-height: 1.4;
  margin-bottom: 4px;
  transition: color .2s;
}
.di-date { font-size: 12px; color: var(--muted); }

/* Sidebar widget */
.duyuru-sidebar { display: flex; flex-direction: column; gap: 24px; }

.side-widget {
  border: 1px solid var(--border);
  border-top: 3px solid var(--red);
  border-radius: 0 0 var(--radius-lg) var(--radius-lg);
  background: var(--white);
  overflow: hidden;
}
.sw-head {
  padding: 14px 20px;
  border-bottom: 1px solid var(--rule);
  font-family: 'EB Garamond', serif;
  font-weight: 700;
  font-size: 17px;
  color: var(--ink);
  display: flex;
  align-items: center;
  gap: 9px;
}
.sw-body { padding: 16px 20px; }

/* Join widget */
.join-widget {
  background: linear-gradient(145deg, var(--red-dark) 0%, var(--red) 100%);
  border-radius: var(--radius-lg);
  padding: 28px 22px;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.join-widget::before {
  content: '★';
  position: absolute;
  font-size: 100px;
  color: rgba(255,255,255,.04);
  top: -20px; right: -10px;
  line-height: 1;
}
.join-widget h4 {
  font-family: 'EB Garamond', serif;
  font-size: 22px;
  font-weight: 700;
  color: var(--white);
  margin-bottom: 10px;
  line-height: 1.2;
}
.join-widget p {
  font-size: 13.5px;
  color: rgba(255,255,255,.7);
  margin-bottom: 20px;
  line-height: 1.65;
}
.join-btn {
  display: block;
  background: var(--white);
  color: var(--red-dark);
  font-weight: 800;
  font-size: 14px;
  padding: 13px;
  border-radius: var(--radius);
  transition: all .2s;
  letter-spacing: .3px;
}
.join-btn:hover { background: var(--sand); transform: translateY(-1px); }

/* Social widget */
.social-links { display: flex; flex-direction: column; gap: 10px; }
.sl-item {
  display: flex;
  align-items: center;
  gap: 13px;
  padding: 11px 14px;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  background: var(--paper);
  text-decoration: none;
  transition: all .2s;
  color: var(--ink-mid);
  font-weight: 600;
  font-size: 14px;
}
.sl-item:hover { border-color: currentColor; transform: translateX(4px); }
.sl-icon { width: 36px; height: 36px; border-radius: var(--radius-sm); display: flex; align-items: center; justify-content: center; font-size: 18px; flex-shrink: 0; }
.sl-insta { color: #E1306C; }   .sl-insta .sl-icon { background: #fce4ec; }
.sl-fb    { color: #1877F2; }   .sl-fb .sl-icon    { background: #e3f2fd; }
.sl-yt    { color: #FF0000; }   .sl-yt .sl-icon    { background: #ffebee; }
.sl-twit  { color: #000000; }   .sl-twit .sl-icon  { background: #f5f5f5; }
.sl-wa    { color: #1FAF57; }   .sl-wa .sl-icon    { background: #e7f7ee; }
.sl-count { margin-left: auto; font-size: 12px; color: var(--muted); font-weight: 500; }
/* Two-line "Bizi Takip Et" rows: channel name + handle, arrow instead of the
   old (fake) follower-count column. */
.sl-text  { display: flex; flex-direction: column; gap: 1px; min-width: 0; }
.sl-label { font-weight: 700; font-size: 13.5px; }
.sl-sub   { font-size: 11.5px; color: var(--muted); }
.sl-go    { margin-left: auto; color: var(--muted); font-weight: 700; }

/* ════════════════════════════════════════════
   VIDEO SECTION
════════════════════════════════════════════ */
.video-bg {
  background: var(--ink);
  position: relative;
  overflow: hidden;
}
.video-bg::before {
  content: '';
  position: absolute; inset: 0;
  background: radial-gradient(ellipse at 50% 0%, rgba(196,18,48,.18) 0%, transparent 60%);
  pointer-events: none;
}

.video-head-row {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 40px;
}
.video-head-row .section-label { color: #FF7A8A; }
.video-head-row .section-label::before { background: #FF7A8A; }
.video-head-row .section-title { color: var(--white); }
.video-head-row .section-sub { color: rgba(255,255,255,.5); }
.video-head-row .see-all { color: #FF7A8A; }

/* Featured video */
.video-layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
}
@media(min-width:900px){ .video-layout { grid-template-columns: 1.6fr 1fr; } }

.video-featured {
  position: relative;
  border-radius: var(--radius-lg);
  overflow: hidden;
  cursor: pointer;
  background: #1A1714;
}
.vf-thumb {
  aspect-ratio: 16/9;
  background: linear-gradient(135deg, #2A1A1A, #1A1714);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 12px;
  font-size: 60px;
  position: relative;
}
.vf-play {
  position: absolute;
  width: 72px; height: 72px;
  border-radius: 50%;
  background: var(--red);
  display: flex; align-items: center; justify-content: center;
  font-size: 26px;
  box-shadow: 0 0 0 12px rgba(196,18,48,.2);
  transition: all .25s;
}
.video-featured:hover .vf-play { transform: scale(1.1); box-shadow: 0 0 0 18px rgba(196,18,48,.15); }
.vf-info {
  padding: 18px 20px;
}
.vf-info h3 {
  font-family: 'EB Garamond', serif;
  font-weight: 700;
  font-size: 20px;
  color: var(--white);
  line-height: 1.35;
  margin-bottom: 6px;
}
.vf-info p { font-size: 13px; color: rgba(255,255,255,.45); }

/* Video list */
.video-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.video-card {
  display: flex;
  gap: 14px;
  align-items: center;
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.07);
  border-radius: var(--radius);
  padding: 14px;
  cursor: pointer;
  transition: all .2s;
  text-decoration: none;
}
.video-card:hover { background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.15); }
.vc-thumb {
  width: 80px; height: 54px;
  background: #2A1A1A;
  border-radius: var(--radius-sm);
  flex-shrink: 0;
  display: flex; align-items: center; justify-content: center;
  font-size: 22px;
  position: relative;
  overflow: hidden;
}
.vc-play {
  position: absolute;
  width: 28px; height: 28px;
  border-radius: 50%;
  background: rgba(196,18,48,.85);
  display: flex; align-items: center; justify-content: center;
  font-size: 10px;
  color: var(--white);
}
.vc-info { flex: 1; }
.vc-info h4 {
  font-weight: 700;
  font-size: 13.5px;
  color: rgba(255,255,255,.85);
  line-height: 1.4;
  margin-bottom: 4px;
}
.vc-info span { font-size: 11.5px; color: rgba(255,255,255,.35); }

/* ════════════════════════════════════════════
   TEAM
════════════════════════════════════════════ */
.team-bg { background: var(--paper); }

.team-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}
@media(min-width:640px){ .team-grid { grid-template-columns: repeat(3, 1fr); } }
@media(min-width:900px){ .team-grid { grid-template-columns: repeat(5, 1fr); } }

.team-card {
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  padding: 24px 16px;
  text-align: center;
  transition: all .25s;
}
.team-card:hover { box-shadow: var(--shadow); transform: translateY(-2px); border-color: var(--red); }
.tc-avatar {
  width: 72px; height: 72px;
  border-radius: 50%;
  background: var(--sand);
  border: 3px solid var(--border);
  font-size: 28px;
  display: flex; align-items: center; justify-content: center;
  margin: 0 auto 14px;
  transition: border-color .2s;
}
.team-card:hover .tc-avatar { border-color: var(--red); }
/* Image avatars (e.g. the commission logo until member photos arrive). */
.tc-avatar img {
  width: 100%; height: 100%;
  object-fit: cover;
  border-radius: 50%;
  display: block;
}
.tc-name {
  font-family: 'EB Garamond', serif;
  font-weight: 700;
  font-size: 15px;
  color: var(--ink);
  margin-bottom: 4px;
}
.tc-role { font-size: 11.5px; color: var(--red); font-weight: 700; text-transform: uppercase; letter-spacing: .5px; }

/* ════════════════════════════════════════════
   FOOTER
════════════════════════════════════════════ */
footer {
  background: var(--ink);
  border-top: 4px solid var(--red);
}
.footer-main {
  padding: 56px 0 40px;
  display: grid;
  grid-template-columns: 1fr;
  gap: 40px;
  border-bottom: 1px solid rgba(255,255,255,.08);
}
@media(min-width:640px){ .footer-main { grid-template-columns: 2fr 1fr; } }
@media(min-width:900px){ .footer-main { grid-template-columns: 2fr 1fr 1fr 1fr; } }

.footer-brand .logo-text .l1 { color: var(--white); }
.footer-brand .logo-text .l2 { color: rgba(255,255,255,.3); }
.footer-brand p { font-size: 13.5px; margin-top: 14px; line-height: 1.7; color: rgba(255,255,255,.45); max-width: 300px; }
.footer-socials { display: flex; gap: 10px; margin-top: 20px; }
.footer-socials a {
  width: 36px; height: 36px;
  border-radius: var(--radius-sm);
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.12);
  display: flex; align-items: center; justify-content: center;
  font-size: 16px;
  color: rgba(255,255,255,.55);
  transition: all .2s;
}
.footer-socials a:hover { background: var(--red); border-color: var(--red); color: var(--white); }

.footer-col h5 {
  font-family: 'EB Garamond', serif;
  font-weight: 700;
  font-size: 16px;
  color: var(--white);
  margin-bottom: 16px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(255,255,255,.1);
}
.footer-col ul { display: flex; flex-direction: column; gap: 10px; }
.footer-col ul a { font-size: 13.5px; color: rgba(255,255,255,.5); transition: color .2s; }
.footer-col ul a:hover { color: var(--white); }
.footer-col ul li { display: flex; align-items: center; gap: 7px; }
.footer-col ul li::before { content: '›'; color: var(--red); font-size: 16px; line-height: 1; }

.footer-bottom {
  padding: 18px 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  font-size: 12px;
  color: rgba(255,255,255,.25);
}
.footer-bottom a { color: rgba(255,255,255,.4); transition: color .2s; }
.footer-bottom a:hover { color: var(--white); }

/* ════════════════════════════════════════════
   LIGHTBOX MODAL
════════════════════════════════════════════ */
.lightbox {
  position: fixed;
  inset: 0;
  z-index: 2200;   /* above the content modal (2100): the lightbox opens on top of it */
  background: rgba(0,0,0,.92);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  opacity: 0;
  pointer-events: none;
  transition: opacity .3s;
}
.lightbox.open { opacity: 1; pointer-events: auto; }
.lb-close {
  position: absolute;
  top: 16px; right: 20px;
  font-size: 28px;
  color: rgba(255,255,255,.7);
  cursor: pointer;
  transition: color .2s;
  width: 44px; height: 44px;
  display: flex; align-items: center; justify-content: center;
  border-radius: var(--radius);
  background: rgba(255,255,255,.08);
}
.lb-close:hover { color: var(--white); background: var(--red); }
.lb-img {
  max-width: 90vw;
  max-height: 90vh;
  width: auto;
  height: auto;
  object-fit: contain;       /* show the photo as it is — never crop or stretch */
  border-radius: var(--radius-lg);
  box-shadow: 0 12px 48px rgba(0,0,0,.55);
  display: block;
}
.lb-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 48px; height: 48px;
  display: flex; align-items: center; justify-content: center;
  font-size: 34px; line-height: 1;
  color: rgba(255,255,255,.85);
  background: rgba(255,255,255,.08);
  border: none;
  border-radius: var(--radius);
  cursor: pointer;
  transition: color .2s, background .2s;
  -webkit-tap-highlight-color: transparent;
}
.lb-nav:hover { color: var(--white); background: var(--red); }
.lb-prev { left: 20px; }
.lb-next { right: 20px; }
.lb-nav[hidden] { display: none; }   /* one photo → no arrows */

/* ════════════════════════════════════════════
   SCROLL TO TOP
════════════════════════════════════════════ */
.scroll-top {
  position: fixed;
  bottom: 24px;
  right: 20px;
  width: 44px; height: 44px;
  border-radius: var(--radius);
  background: var(--red);
  color: var(--white);
  display: flex; align-items: center; justify-content: center;
  font-size: 18px;
  box-shadow: var(--shadow-red);
  cursor: pointer;
  transition: all .25s;
  opacity: 0;
  transform: translateY(12px);
  pointer-events: none;
  z-index: 500;
  border: none;
}
.scroll-top.show { opacity: 1; transform: translateY(0); pointer-events: auto; }
.scroll-top:hover { background: var(--red-dark); transform: translateY(-2px); }

/* ════════════════════════════════════════════
   ORNAMENTAL DIVIDER
════════════════════════════════════════════ */
.ornament-divider {
  text-align: center;
  padding: 8px 0;
  color: var(--border);
  font-size: 16px;
  letter-spacing: 10px;
}

/* ════════════════════════════════════════════
   PAGE-LOAD ANIMATION
════════════════════════════════════════════ */
@keyframes fadeUp {
  from { opacity:0; transform:translateY(20px); }
  to   { opacity:1; transform:translateY(0); }
}
.hero-pill    { animation: fadeUp .5s ease both; }
.hero h1      { animation: fadeUp .55s .1s ease both; }
.hero-desc    { animation: fadeUp .55s .2s ease both; }
.hero-btns    { animation: fadeUp .55s .3s ease both; }
.hero-stats   { animation: fadeUp .55s .4s ease both; }
.upcoming-card { animation: fadeUp .65s .2s ease both; }

/* ════════════════════════════════════════════
   CONTENT MODAL (Etkinlik / Eğitim Detayı)
════════════════════════════════════════════ */
.content-modal {
  position: fixed;
  inset: 0;
  z-index: 2100;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  opacity: 0;
  pointer-events: none;
  transition: opacity .3s;
}
.content-modal.open { opacity: 1; pointer-events: auto; }
.cm-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.85);
  cursor: pointer;
}
.cm-panel {
  position: relative;
  background: var(--white);
  border-radius: var(--radius-xl);
  width: 100%;
  max-width: 700px;
  max-height: 88vh;
  overflow-y: auto;
  box-shadow: 0 24px 80px rgba(0,0,0,.4);
  scrollbar-width: thin;
}
.cm-close {
  position: absolute;
  top: 12px; right: 12px;
  width: 36px; height: 36px;
  border-radius: var(--radius);
  background: rgba(255,255,255,.92);
  display: flex; align-items: center; justify-content: center;
  font-size: 16px;
  cursor: pointer;
  z-index: 10;
  border: none;
  transition: all .2s;
  box-shadow: 0 2px 8px rgba(0,0,0,.15);
}
.cm-close:hover { background: var(--red); color: var(--white); }
.cm-cover {
  aspect-ratio: 16/9;
  background: var(--sand);
  border-radius: var(--radius-xl) var(--radius-xl) 0 0;
  overflow: hidden;
  display: flex; align-items: center; justify-content: center;
}
.cm-cover img { width: 100%; height: 100%; object-fit: cover; cursor: zoom-in; }
.cm-gallery {
  display: flex;
  gap: 8px;
  padding: 14px 24px 0;
  overflow-x: auto;
  scrollbar-width: thin;
}
.cm-gallery-thumb {
  width: 80px; height: 58px;
  border-radius: var(--radius-sm);
  background: var(--sand);
  flex-shrink: 0;
  display: flex; align-items: center; justify-content: center;
  cursor: pointer;
  border: 2px solid transparent;
  transition: border-color .2s;
  overflow: hidden;
}
.cm-gallery-thumb:hover { border-color: var(--red); }
.cm-gallery-thumb img { width: 100%; height: 100%; object-fit: cover; }
.cm-body { padding: 18px 24px 28px; }
.cm-tag {
  display: inline-flex;
  align-items: center;
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 1.2px;
  padding: 4px 12px;
  border-radius: 100px;
  margin-bottom: 12px;
}
.cm-meta {
  display: flex;
  gap: 16px;
  font-size: 13px;
  color: var(--muted);
  margin-bottom: 12px;
  flex-wrap: wrap;
}
.cm-title {
  font-family: 'EB Garamond', serif;
  font-weight: 700;
  font-size: 24px;
  color: var(--ink);
  line-height: 1.25;
  margin-bottom: 12px;
  letter-spacing: -.3px;
}
.cm-desc {
  font-size: 14.5px;
  color: var(--ink-mid);
  line-height: 1.8;
  margin-bottom: 20px;
}
.cm-cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--red);
  color: var(--white) !important;
  font-weight: 700;
  font-size: 14px;
  padding: 12px 24px;
  border-radius: var(--radius);
  transition: all .2s;
  text-decoration: none;
}
.cm-cta:hover { background: var(--red-dark); box-shadow: var(--shadow-red); }

/* ════════════════════════════════════════════
   EĞİTİMLER
════════════════════════════════════════════ */
.egitimler-bg { background: var(--paper); }

.egitimler-layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: 48px;
}
@media(min-width:900px){ .egitimler-layout { grid-template-columns: 1fr 1fr; gap: 56px; align-items: start; } }

.eg-sub-title {
  font-family: 'EB Garamond', serif;
  font-weight: 700;
  font-size: 20px;
  color: var(--ink);
  margin-bottom: 20px;
  padding-bottom: 10px;
  border-bottom: 2px solid var(--red);
  display: flex;
  align-items: center;
  gap: 8px;
}

.ep-list { display: flex; flex-direction: column; gap: 10px; }
.ep-item {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  padding: 14px;
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  cursor: pointer;
  background: var(--white);
  transition: all .2s;
  text-align: left;
  width: 100%;
  font-family: inherit;
  font-size: inherit;
}
.ep-item:hover { border-color: var(--red); box-shadow: var(--shadow); transform: translateX(3px); }
.ep-thumb {
  width: 68px; height: 52px;
  border-radius: var(--radius-sm);
  background: var(--sand);
  flex-shrink: 0;
  display: flex; align-items: center; justify-content: center;
  font-size: 26px;
  overflow: hidden;
}
.ep-thumb img { width: 100%; height: 100%; object-fit: cover; }
.ep-info { flex: 1; }
.ep-cat {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  color: var(--red);
  margin-bottom: 3px;
  display: block;
}
.ep-title {
  font-family: 'EB Garamond', serif;
  font-weight: 700;
  font-size: 16px;
  color: var(--ink);
  line-height: 1.35;
  margin-bottom: 3px;
  transition: color .2s;
}
.ep-item:hover .ep-title { color: var(--red); }
.ep-date { font-size: 12px; color: var(--muted); }

.ea-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
}
@media(min-width:640px){ .ea-grid { grid-template-columns: repeat(4, 1fr); gap: 10px; } }

.ea-item {
  position: relative;
  border-radius: var(--radius);
  overflow: hidden;
  cursor: pointer;
  background: var(--sand);
  border: 1px solid var(--border);
  transition: all .22s;
  aspect-ratio: 1;
  display: flex; align-items: center; justify-content: center;
  font-size: 26px;
  font-family: inherit;
}
.ea-item:hover { border-color: var(--red); box-shadow: var(--shadow-sm); transform: translateY(-2px); }
.ea-item img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.ea-num {
  position: absolute;
  top: 5px; left: 5px;
  width: 20px; height: 20px;
  background: var(--red);
  color: var(--white);
  font-size: 9px;
  font-weight: 800;
  border-radius: 4px;
  display: flex; align-items: center; justify-content: center;
  z-index: 1;
  font-family: 'Plus Jakarta Sans', sans-serif;
}
.ea-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,.78) 0%, transparent 55%);
  opacity: 0;
  transition: opacity .25s;
  display: flex; align-items: flex-end;
  padding: 7px;
}
.ea-item:hover .ea-overlay { opacity: 1; }
.ea-name {
  font-size: 10.5px;
  font-weight: 700;
  color: var(--white);
  line-height: 1.3;
  font-family: 'Plus Jakarta Sans', sans-serif;
}

/* ════════════════════════════════════════════
   SEARCH OVERLAY
════════════════════════════════════════════ */
.search-overlay {
  position: fixed;
  inset: 0;
  z-index: 1500;
  background: rgba(22,18,14,.96);
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding-top: 120px;
  opacity: 0;
  pointer-events: none;
  transition: opacity .25s;
}
.search-overlay.open { opacity: 1; pointer-events: auto; }
.search-box { width: 100%; max-width: 640px; padding: 0 20px; }
.search-box input {
  width: 100%;
  background: rgba(255,255,255,.08);
  border: 2px solid rgba(255,255,255,.2);
  border-radius: var(--radius-lg);
  padding: 18px 24px;
  font-size: 22px;
  color: var(--white);
  font-family: 'Plus Jakarta Sans', sans-serif;
  outline: none;
  transition: border-color .2s;
}
.search-box input::placeholder { color: rgba(255,255,255,.35); }
.search-box input:focus { border-color: var(--red); }
.search-hint { font-size: 13px; color: rgba(255,255,255,.35); margin-top: 14px; text-align: center; }
/* Results list (filled by assets/main.js from the window.SEARCH index). */
.search-results {
  margin-top: 14px;
  background: var(--paper);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-lg);
  max-height: min(50vh, 440px);
  overflow-y: auto;
}
.search-results[hidden] { display: none; }
.sr-item {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  padding: 13px 16px;
  background: none;
  border: none;
  border-bottom: 1px solid var(--rule);
  font-family: 'Plus Jakarta Sans', sans-serif;
  text-align: left;
  cursor: pointer;
  transition: background .15s;
}
.sr-item:last-child { border-bottom: none; }
.sr-item:hover, .sr-item:focus-visible { background: var(--sand); }
.sr-type {
  flex-shrink: 0;
  font-size: 9.5px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .8px;
  padding: 4px 9px;
  border-radius: 100px;
}
.sr-title { font-size: 14px; font-weight: 700; color: var(--ink); line-height: 1.35; }
.sr-date { margin-left: auto; flex-shrink: 0; font-size: 11.5px; color: var(--muted); }
.search-empty { padding: 20px; text-align: center; font-size: 14px; color: var(--muted); }
.search-close {
  position: absolute;
  top: 20px; right: 24px;
  font-size: 22px;
  color: rgba(255,255,255,.5);
  cursor: pointer;
  width: 44px; height: 44px;
  display: flex; align-items: center; justify-content: center;
  border-radius: var(--radius);
  background: none;
  border: none;
  transition: all .2s;
}
.search-close:hover { background: rgba(255,255,255,.1); color: var(--white); }
.nav-search-btn {
  width: 36px; height: 36px;
  border-radius: var(--radius);
  border: 1.5px solid var(--border);
  background: var(--paper);
  display: flex; align-items: center; justify-content: center;
  font-size: 16px;
  cursor: pointer;
  transition: all .2s;
  flex-shrink: 0;
}
.nav-search-btn:hover { background: var(--red-lt); border-color: var(--red); }

/* ════════════════════════════════════════════
   GALERİ NAV DROPDOWN
════════════════════════════════════════════ */
.nav-dropdown { position: relative; }
.nav-dropdown > a { display: flex !important; align-items: center; gap: 4px; }
.nav-dropdown > a::after { content: '▾'; font-size: 11px; opacity: .6; transition: transform .2s; }
.nav-dropdown:hover > a::after { transform: rotate(180deg); }
.nav-dropdown-menu {
  position: absolute;
  top: calc(100% + 8px); left: 0;
  min-width: 160px;
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  padding: 6px;
  opacity: 0;
  pointer-events: none;
  transform: translateY(-6px);
  transition: all .2s;
  z-index: 100;
}
.nav-dropdown:hover .nav-dropdown-menu { opacity: 1; pointer-events: auto; transform: translateY(0); }
.nav-dropdown-menu a {
  display: flex !important;
  align-items: center;
  gap: 8px;
  padding: 9px 12px !important;
  border-radius: var(--radius-sm) !important;
  font-size: 13.5px !important;
  color: var(--ink-mid) !important;
  white-space: nowrap;
}
.nav-dropdown-menu a:hover { background: var(--red-lt) !important; color: var(--red) !important; }

/* ════════════════════════════════════════════
   PHARMACAMP
════════════════════════════════════════════ */
.pharmacamp-bg { background: var(--white); }
.pharmacamp-hero {
  border-radius: var(--radius-xl);
  background: linear-gradient(135deg, var(--red-deep) 0%, var(--red) 60%, var(--gold) 100%);
  padding: 56px 48px;
  position: relative;
  overflow: hidden;
  margin-bottom: 40px;
}
@media(max-width:640px){ .pharmacamp-hero { padding: 36px 24px; } }
.pharmacamp-hero::before {
  content: '';
  position: absolute; inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23ffffff' fill-opacity='0.04' fill-rule='evenodd'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4z'/%3E%3C/g%3E%3C/svg%3E");
  pointer-events: none;
}
.pharmacamp-hero h2 {
  font-family: 'EB Garamond', serif;
  font-size: clamp(28px, 4vw, 44px);
  font-weight: 800;
  color: var(--white);
  line-height: 1.15;
  letter-spacing: -1px;
  margin-bottom: 14px;
  position: relative;
}
.pharmacamp-hero p { font-size: 16px; color: rgba(255,255,255,.78); line-height: 1.75; max-width: 540px; margin-bottom: 28px; position: relative; }
.pharmacamp-hero-btns { display: flex; gap: 12px; flex-wrap: wrap; position: relative; }
.pharmacamp-info-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
}
@media(min-width:640px){ .pharmacamp-info-grid { grid-template-columns: 1fr 1fr; } }
@media(min-width:1024px){ .pharmacamp-info-grid { grid-template-columns: repeat(3, 1fr); } }
.pc-info-card {
  border: 1px solid var(--border);
  border-top: 3px solid var(--red);
  border-radius: 0 0 var(--radius-lg) var(--radius-lg);
  background: var(--paper);
  padding: 22px 20px;
}
.pc-info-card .pc-icon { font-size: 28px; margin-bottom: 12px; }
.pc-info-card h4 {
  font-family: 'EB Garamond', serif;
  font-weight: 700;
  font-size: 18px;
  color: var(--ink);
  margin-bottom: 8px;
}
.pc-info-card p { font-size: 13.5px; color: var(--muted); line-height: 1.65; }
