/* ============================================================
   STYLE.CSS — Millet Bahçesinde Bilim | TÜBİTAK 4007
   v2.0 — Profesyonel, Kurumsal, Mobil Uyumlu
   ============================================================ */

/* ── 1. CSS DEĞİŞKENLERİ ── */
:root {
  --primary:        #1a8c4e;
  --primary-dark:   #116636;
  --primary-light:  #d4f5e2;
  --secondary:      #1565c0;
  --secondary-dark: #0d47a1;
  --secondary-light:#e3f2fd;
  --accent:         #f57c00;
  --accent-light:   #fff3e0;
  --white:          #ffffff;
  --light:          #f0fbf4;
  --gray-50:        #f9fafb;
  --gray-100:       #f3f4f6;
  --gray-200:       #e5e7eb;
  --gray-400:       #9ca3af;
  --gray-500:       #6b7280;
  --gray-700:       #374151;
  --dark:           #0d1a12;
  --shadow-sm:      0 1px 3px rgba(0,0,0,.10);
  --shadow:         0 4px 16px rgba(0,0,0,.08);
  --shadow-md:      0 8px 32px rgba(0,0,0,.12);
  --shadow-lg:      0 16px 48px rgba(0,0,0,.15);
  --shadow-green:   0 8px 32px rgba(26,140,78,.25);
  --shadow-blue:    0 8px 32px rgba(21,101,192,.20);
  --radius-sm:      8px;
  --radius:         12px;
  --radius-md:      16px;
  --radius-lg:      24px;
  --radius-xl:      32px;
  --radius-full:    9999px;
  --transition:     all .3s ease;
  --transition-slow:all .5s ease;
  --font-primary:   'Inter', sans-serif;
  --font-heading:   'Poppins', sans-serif;
}

/* ── 2. RESET & BASE ── */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; font-size: 16px; }
body {
  font-family: var(--font-primary);
  color: var(--gray-700);
  background: var(--white);
  overflow-x: hidden;
  line-height: 1.7;
}
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration: none; transition: var(--transition); }
ul { list-style: none; padding: 0; margin: 0; }
h1,h2,h3,h4,h5,h6 { font-family: var(--font-heading); font-weight: 700; line-height: 1.3; }

/* ── 3. YARDIMCI ── */
.section-padding { padding: 90px 0; }
@media (max-width:768px){ .section-padding { padding: 60px 0; } }

.section-badge {
  display: inline-flex; align-items: center; gap: 6px;
  background: var(--primary-light); color: var(--primary-dark);
  border: 1px solid rgba(26,140,78,.25);
  padding: 6px 16px; border-radius: var(--radius-full);
  font-size: .78rem; font-weight: 700; letter-spacing: .08em;
  text-transform: uppercase; margin-bottom: 16px;
}
.section-title {
  font-size: clamp(1.9rem, 4vw, 2.75rem);
  font-weight: 800; color: var(--dark); margin-bottom: 16px;
}
.section-title .text-gradient, .text-gradient {
  background: linear-gradient(135deg, var(--primary), var(--secondary));
  -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
}
.section-subtitle { font-size: 1.05rem; color: var(--gray-500); max-width: 580px; line-height: 1.7; }
.section-subtitle.mx-auto { margin-left: auto; margin-right: auto; }

/* ── 4. LOADER ── */
.page-loader {
  position: fixed; inset: 0; z-index: 99999;
  background: linear-gradient(135deg, #0d4a2a 0%, #0d47a1 100%);
  display: flex; align-items: center; justify-content: center;
  transition: opacity .5s ease, visibility .5s ease;
}
.page-loader.hidden { opacity: 0; visibility: hidden; }
.loader-content { text-align: center; color: #fff; }
.loader-logo { margin-bottom: 24px; }
.loader-icon { font-size: 3.5rem; animation: loaderSpin 2s linear infinite; }
@keyframes loaderSpin {
  0%   { transform: rotate(0deg) scale(1); }
  50%  { transform: rotate(180deg) scale(1.15); }
  100% { transform: rotate(360deg) scale(1); }
}
.loader-dots { display: flex; gap: 8px; justify-content: center; margin-bottom: 16px; }
.loader-dots span {
  width: 10px; height: 10px; border-radius: 50%; background: rgba(255,255,255,.6);
  animation: dotBounce 1.2s ease-in-out infinite;
}
.loader-dots span:nth-child(2){ animation-delay: .2s; }
.loader-dots span:nth-child(3){ animation-delay: .4s; }
@keyframes dotBounce {
  0%,80%,100%{ transform: scale(0); opacity:.4; }
  40%        { transform: scale(1); opacity:1;  }
}
.loader-text { font-size: .9rem; opacity: .7; letter-spacing: .1em; }

/* ── 5. NAVBAR ── */
#mainNav {
  background: transparent; padding: 18px 0;
  transition: all .4s ease; z-index: 1050;
}
#mainNav.scrolled {
  background: rgba(10,35,20,0.97);
  backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
  padding: 10px 0; box-shadow: 0 2px 24px rgba(0,0,0,.25);
}
.navbar-logo-icon {
  width: 42px; height: 42px; border-radius: 10px;
  background: linear-gradient(135deg, var(--primary), var(--secondary));
  display: flex; align-items: center; justify-content: center;
  color: #fff; font-size: 1.1rem; flex-shrink: 0; box-shadow: var(--shadow-green);
}
.navbar-brand-text { display: flex; flex-direction: column; line-height: 1.2; }
.brand-main { font-family: var(--font-heading); font-weight: 800; font-size: .95rem; color: #fff; }
.brand-sub  { font-size: .68rem; color: rgba(255,255,255,.65); font-weight: 500; }
.navbar-nav .nav-link {
  color: rgba(255,255,255,.85) !important;
  font-weight: 500; font-size: .88rem; padding: 8px 10px !important;
  border-radius: var(--radius-sm); transition: var(--transition);
}
.navbar-nav .nav-link:hover,
.navbar-nav .nav-link.active { color: #fff !important; background: rgba(255,255,255,.1); }
.nav-cta-btn {
  background: linear-gradient(135deg, var(--primary), var(--primary-dark)) !important;
  color: #fff !important; border: none; padding: 8px 20px !important; box-shadow: var(--shadow-green);
}
.nav-cta-btn:hover { transform: translateY(-2px); box-shadow: 0 6px 20px rgba(26,140,78,.4) !important; }
.navbar-toggler { border: none !important; padding: 6px; background: rgba(255,255,255,.1); border-radius: var(--radius-sm); }
.navbar-toggler:focus { box-shadow: none; }
.toggler-icon { display: flex; flex-direction: column; gap: 5px; width: 22px; }
.toggler-icon span { display: block; height: 2px; background: #fff; border-radius: 2px; }
@media (max-width:991px){
  .navbar-collapse {
    background: rgba(10,35,20,.97); border-radius: var(--radius);
    margin-top: 10px; padding: 16px; box-shadow: var(--shadow-lg);
  }
}

/* ── 6. HERO ── */
#hero {
  min-height: 100vh;
  background: linear-gradient(135deg, #0a2e18 0%, #0d3b6e 60%, #0a1f3d 100%);
  position: relative; overflow: hidden;
  display: flex; align-items: center; padding-top: 90px;
}
.hero-particles { position: absolute; inset: 0; overflow: hidden; pointer-events: none; }
.particle { position: absolute; border-radius: 50%; opacity: .12; animation: floatParticle linear infinite; }
.particle:nth-child(1)  { width:80px;  height:80px;  top:10%; left:5%;  background:var(--primary);    animation-duration:12s; }
.particle:nth-child(2)  { width:50px;  height:50px;  top:70%; left:10%; background:var(--secondary);  animation-duration:16s; animation-delay:2s; }
.particle:nth-child(3)  { width:120px; height:120px; top:20%; left:80%; background:var(--primary);    animation-duration:10s; animation-delay:1s; }
.particle:nth-child(4)  { width:40px;  height:40px;  top:80%; left:75%; background:var(--accent);     animation-duration:14s; animation-delay:3s; }
.particle:nth-child(5)  { width:70px;  height:70px;  top:50%; left:50%; background:var(--secondary);  animation-duration:18s; animation-delay:1.5s; }
.particle:nth-child(6)  { width:35px;  height:35px;  top:35%; left:30%; background:rgba(255,255,255,.3); animation-duration:9s; animation-delay:.5s; }
@keyframes floatParticle {
  0%   { transform: translateY(0) rotate(0deg); }
  50%  { transform: translateY(-40px) rotate(180deg); }
  100% { transform: translateY(0) rotate(360deg); }
}
.hero-floating-icons { position: absolute; inset: 0; pointer-events: none; }
.hero-float-icon {
  position: absolute; font-size: 1.5rem; opacity: .08;
  color: #fff; animation: floatIcon ease-in-out infinite;
}
.hero-float-icon:nth-child(1)  { top:15%; left:12%; animation-duration:6s; }
.hero-float-icon:nth-child(2)  { top:25%; left:85%; animation-duration:8s; animation-delay:1s; }
.hero-float-icon:nth-child(3)  { top:60%; left:8%;  animation-duration:7s; animation-delay:2s; }
.hero-float-icon:nth-child(4)  { top:75%; left:88%; animation-duration:9s; animation-delay:.5s; }
.hero-float-icon:nth-child(5)  { top:45%; left:55%; animation-duration:5s; animation-delay:1.5s; }
.hero-float-icon:nth-child(6)  { top:85%; left:40%; animation-duration:10s; animation-delay:3s; }
@keyframes floatIcon {
  0%,100%{ transform: translateY(0) scale(1); }
  50%    { transform: translateY(-20px) scale(1.1); }
}
.hero-content { position: relative; z-index: 2; }
.hero-badge {
  display: inline-flex; align-items: center; gap: 8px;
  background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.2);
  backdrop-filter: blur(8px); color: #fff;
  padding: 8px 20px; border-radius: var(--radius-full);
  font-size: .78rem; font-weight: 600; letter-spacing: .08em;
  text-transform: uppercase; margin-bottom: 24px;
}
.hero-badge .badge-dot {
  width: 8px; height: 8px; border-radius: 50%; background: #4ade80; animation: pulse 2s ease infinite;
}
@keyframes pulse {
  0%,100%{ opacity:1; transform:scale(1); }
  50%    { opacity:.5; transform:scale(1.4); }
}
.hero-title { font-size: clamp(2.4rem, 6vw, 4rem); font-weight: 900; color: #fff; line-height: 1.15; margin-bottom: 12px; }
.hero-title .gradient-word {
  background: linear-gradient(135deg, #4ade80, #60a5fa);
  -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
}
.hero-subtitle { font-size: clamp(1.15rem, 2.5vw, 1.6rem); color: rgba(255,255,255,.85); font-weight: 600; margin-bottom: 14px; }
.hero-desc { font-size: 1rem; color: rgba(255,255,255,.65); margin-bottom: 36px; max-width: 500px; line-height: 1.75; }
.hero-cta-group { display: flex; flex-wrap: wrap; gap: 14px; margin-bottom: 48px; }
.btn-hero-primary {
  background: linear-gradient(135deg, var(--primary), #16a34a);
  color: #fff; padding: 14px 32px; border-radius: var(--radius-full);
  font-weight: 700; font-size: .95rem; border: none;
  box-shadow: 0 6px 24px rgba(26,140,78,.4); transition: var(--transition);
  display: inline-flex; align-items: center; gap: 8px;
}
.btn-hero-primary:hover { transform: translateY(-3px); box-shadow: 0 10px 32px rgba(26,140,78,.55); color: #fff; }
.btn-hero-secondary {
  background: rgba(255,255,255,.1); border: 2px solid rgba(255,255,255,.3);
  color: #fff; padding: 14px 32px; border-radius: var(--radius-full);
  font-weight: 700; font-size: .95rem; backdrop-filter: blur(8px);
  transition: var(--transition); display: inline-flex; align-items: center; gap: 8px;
}
.btn-hero-secondary:hover { background: rgba(255,255,255,.2); border-color: rgba(255,255,255,.5); color: #fff; transform: translateY(-3px); }
.hero-info-cards { display: flex; flex-wrap: wrap; gap: 12px; }
.hero-info-card {
  background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.15);
  backdrop-filter: blur(12px); border-radius: var(--radius);
  padding: 14px 20px; display: flex; align-items: center; gap: 12px; transition: var(--transition);
}
.hero-info-card:hover { background: rgba(255,255,255,.14); transform: translateY(-2px); }
.hero-info-card .card-icon {
  width: 40px; height: 40px; border-radius: var(--radius-sm);
  background: linear-gradient(135deg, var(--primary), var(--secondary));
  display: flex; align-items: center; justify-content: center; color: #fff; font-size: 1rem; flex-shrink: 0;
}
.hero-info-card .card-text strong { display: block; color: #fff; font-size: .88rem; font-weight: 700; }
.hero-info-card .card-text span  { color: rgba(255,255,255,.6); font-size: .73rem; }
.hero-visual { position: relative; z-index: 2; }
.hero-visual-card {
  background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.15);
  backdrop-filter: blur(20px); border-radius: var(--radius-xl); padding: 40px; text-align: center;
}
.hero-visual-icon-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; margin-bottom: 28px; }
.hv-icon-item {
  background: rgba(255,255,255,.08); border-radius: var(--radius-md); padding: 20px 10px;
  display: flex; flex-direction: column; align-items: center; gap: 8px; transition: var(--transition);
}
.hv-icon-item:hover { background: rgba(255,255,255,.15); transform: translateY(-4px); }
.hv-icon-item i { font-size: 1.9rem; }
.hv-icon-item span { font-size: .68rem; color: rgba(255,255,255,.7); font-weight: 600; text-align: center; }
.hv-icon-item.green  i { color: #4ade80; }
.hv-icon-item.blue   i { color: #60a5fa; }
.hv-icon-item.orange i { color: #fb923c; }
.hv-icon-item.teal   i { color: #2dd4bf; }
.hv-icon-item.yellow i { color: #facc15; }
.hv-icon-item.pink   i { color: #f472b6; }
.hero-visual-stats { display: flex; justify-content: space-around; border-top: 1px solid rgba(255,255,255,.1); padding-top: 20px; }
.hv-stat strong { display: block; font-size: 1.6rem; font-weight: 900; color: #fff; }
.hv-stat span   { font-size: .72rem; color: rgba(255,255,255,.6); }
.hero-scroll-hint { position: absolute; bottom: 30px; left: 50%; transform: translateX(-50%); text-align: center; z-index: 2; }
.scroll-arrow { animation: scrollBounce 2s ease infinite; }
@keyframes scrollBounce {
  0%,100%{ transform: translateY(0); opacity:1; }
  50%    { transform: translateY(8px); opacity:.5; }
}

/* ── 7. İSTATİSTİK ── */
.stat-card {
  background: var(--white); border-radius: var(--radius-lg); padding: 36px 28px;
  text-align: center; box-shadow: var(--shadow); border: 1px solid var(--gray-200);
  transition: var(--transition); position: relative; overflow: hidden;
}
.stat-card::before {
  content:''; position:absolute; top:0; left:0; right:0; height:4px;
  background: linear-gradient(90deg, var(--primary), var(--secondary));
}
.stat-card:hover { transform: translateY(-8px); box-shadow: var(--shadow-lg); }
.stat-icon {
  width:64px; height:64px; border-radius: var(--radius-md); margin: 0 auto 20px;
  display:flex; align-items:center; justify-content:center; font-size:1.7rem;
}
.stat-icon.green  { background: rgba(26,140,78,.12);  color: var(--primary); }
.stat-icon.blue   { background: rgba(21,101,192,.12); color: var(--secondary); }
.stat-icon.orange { background: rgba(245,124,0,.12);  color: var(--accent); }
.stat-icon.teal   { background: rgba(13,148,136,.12); color: #0d9488; }
.stat-number { font-size: 2.8rem; font-weight: 900; color: var(--dark); line-height:1; margin-bottom:8px; }
.stat-label  { font-size: .9rem; color: var(--gray-500); font-weight: 500; }
.stat-divider { width:40px; height:3px; border-radius:2px; margin:12px auto 0; }
.stat-divider.green  { background: var(--primary); }
.stat-divider.blue   { background: var(--secondary); }
.stat-divider.orange { background: var(--accent); }
.stat-divider.teal   { background: #0d9488; }

/* ── 8. HAKKINDA ── */
.about-feature-card {
  background: var(--gray-50); border: 1px solid var(--gray-200);
  border-radius: var(--radius-md); padding: 24px; transition: var(--transition); height: 100%;
}
.about-feature-card:hover { background: var(--white); box-shadow: var(--shadow-md); transform: translateY(-4px); }
.about-feature-icon {
  width:52px; height:52px; border-radius: var(--radius); margin-bottom:16px;
  display:flex; align-items:center; justify-content:center; font-size:1.3rem;
}
.about-feature-card h5 { font-size:.95rem; font-weight:700; margin-bottom:8px; color: var(--dark); }
.about-feature-card p  { font-size:.85rem; color: var(--gray-500); margin:0; }
.about-img-wrapper { position:relative; }
.about-img-blob {
  position:absolute; width:90%; height:90%; top:5%; left:5%;
  background: linear-gradient(135deg, var(--primary-light), var(--secondary-light));
  border-radius: 60% 40% 55% 45% / 45% 55% 40% 60%;
  animation: blobMove 8s ease-in-out infinite; z-index:0;
}
@keyframes blobMove {
  0%,100%{ border-radius:60% 40% 55% 45% / 45% 55% 40% 60%; }
  50%    { border-radius:40% 60% 45% 55% / 55% 45% 60% 40%; }
}
.about-main-visual {
  position:relative; z-index:1; background: linear-gradient(135deg, var(--primary), var(--secondary));
  border-radius: var(--radius-xl); padding:48px 32px; text-align:center; color:#fff; box-shadow: var(--shadow-lg);
}
.about-visual-icon { font-size:4rem; margin-bottom:20px; }
.about-stats-mini { display:flex; justify-content:space-around; margin-top:24px; padding-top:20px; border-top:1px solid rgba(255,255,255,.2); }
.about-stat-mini strong { display:block; font-size:1.5rem; font-weight:900; }
.about-stat-mini span  { font-size:.72rem; opacity:.75; }

/* ── 9. ETKİNLİK BİLGİLERİ ── */
.event-info-card {
  background: var(--white); border-radius: var(--radius-md); padding: 24px 28px;
  box-shadow: var(--shadow); border-left: 4px solid var(--primary);
  display:flex; align-items:flex-start; gap:16px; transition: var(--transition); height:100%;
}
.event-info-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-md); }
.event-info-icon {
  width:48px; height:48px; flex-shrink:0; border-radius: var(--radius-sm);
  background: linear-gradient(135deg, var(--primary), var(--secondary));
  display:flex; align-items:center; justify-content:center; color:#fff; font-size:1.2rem;
}
.event-info-label { font-size:.72rem; color: var(--gray-500); font-weight:600; text-transform:uppercase; letter-spacing:.06em; margin-bottom:4px; }
.event-info-value { font-size:.97rem; font-weight:700; color: var(--dark); }
.map-container { border-radius: var(--radius-lg); overflow:hidden; box-shadow: var(--shadow-lg); }
.map-container iframe { display:block; width:100%; border:0; }

/* ── 10. ATÖLYELER ── */
.workshop-filter-bar { display:flex; flex-wrap:wrap; gap:8px; justify-content:center; margin-bottom:40px; }
.filter-btn {
  padding:8px 20px; border-radius: var(--radius-full); border:2px solid var(--gray-200);
  background: var(--white); color: var(--gray-500); font-weight:600; font-size:.84rem;
  cursor:pointer; transition: var(--transition);
}
.filter-btn.active, .filter-btn:hover { border-color: var(--primary); background: var(--primary); color:#fff; }
.workshop-card {
  background: var(--white); border-radius: var(--radius-lg); overflow:hidden;
  box-shadow: var(--shadow); border:1px solid var(--gray-200);
  transition: var(--transition); height:100%; display:flex; flex-direction:column;
}
.workshop-card:hover { transform: translateY(-8px); box-shadow: var(--shadow-lg); border-color: var(--primary); }
.workshop-card-header {
  padding: 28px 24px 20px; position:relative;
  background: linear-gradient(135deg, var(--primary-light), var(--secondary-light));
}
.workshop-icon-wrap {
  width:60px; height:60px; border-radius: var(--radius-md);
  display:flex; align-items:center; justify-content:center; font-size:1.6rem; margin-bottom:12px;
}
.workshop-card-header h5 { font-size:.95rem; font-weight:700; color: var(--dark); margin:0; line-height:1.4; }
.age-badge {
  position:absolute; top:16px; right:16px;
  padding:4px 12px; border-radius: var(--radius-full); font-size:.7rem; font-weight:700; border:1px solid;
}
.age-6-8  { background:rgba(245,124,0,.1);  color:#c2410c; border-color:rgba(245,124,0,.3); }
.age-9-11 { background:rgba(21,101,192,.1); color:#1d4ed8; border-color:rgba(21,101,192,.3); }
.age-12-14{ background:rgba(26,140,78,.1);  color:#15803d; border-color:rgba(26,140,78,.3); }
.workshop-card-body { padding:20px 24px 24px; flex:1; }
.workshop-card-body p { font-size:.87rem; color: var(--gray-500); margin:0; line-height:1.65; }
.workshop-tag {
  display:inline-flex; align-items:center; gap:4px; margin-top:14px;
  font-size:.72rem; font-weight:600; color: var(--gray-500);
  background: var(--gray-100); padding:4px 10px; border-radius: var(--radius-full);
}

/* ── 11. PROGRAM ── */
.program-tabs .nav-tabs { border:none; gap:8px; flex-wrap:wrap; justify-content:center; }
.program-tabs .nav-link {
  border:2px solid var(--gray-200) !important; border-radius: var(--radius-full) !important;
  color: var(--gray-500); font-weight:600; padding:10px 28px;
  background: var(--white); transition: var(--transition); font-size:.9rem;
}
.program-tabs .nav-link.active {
  background: linear-gradient(135deg, var(--primary), var(--secondary)) !important;
  border-color: transparent !important; color:#fff !important; box-shadow: var(--shadow-green);
}
.program-tabs .nav-link:hover:not(.active) { border-color: var(--primary) !important; color: var(--primary); }
.program-item-card {
  display: flex; align-items: flex-start; gap: 16px;
  background: var(--white); border: 1px solid var(--gray-200);
  border-radius: var(--radius-md); padding: 18px 20px;
  transition: var(--transition); height: 100%; box-shadow: var(--shadow-sm);
}
.program-item-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-md); border-color: var(--primary); }
.pic-icon-wrap {
  width: 48px; height: 48px; flex-shrink: 0; border-radius: var(--radius-sm);
  display: flex; align-items: center; justify-content: center; font-size: 1.2rem;
}
.pic-detail { flex: 1; min-width: 0; }
.pic-detail h6 { font-size: .92rem; font-weight: 700; color: var(--dark); margin-bottom: 6px; line-height: 1.4; }
.pic-detail p  { font-size: .78rem; color: var(--gray-500); margin: 0; line-height: 1.5; word-break: break-word; }

/* ── 12. ALAN & PROTOKOL ── */
.alan-card {
  background: var(--white); border-radius: var(--radius-lg); overflow: hidden;
  box-shadow: var(--shadow); border: 1px solid var(--gray-200);
  transition: var(--transition); height: 100%;
}
.alan-card:hover { transform: translateY(-6px); box-shadow: var(--shadow-lg); }
.alan-card-header {
  padding: 16px 20px; color: #fff; font-weight: 700; font-size: .9rem;
  display: flex; align-items: center;
}
.alan-list { list-style: none; padding: 16px 20px; margin: 0; }
.alan-list li {
  display: flex; align-items: flex-start; gap: 10px;
  padding: 8px 0; border-bottom: 1px solid var(--gray-100);
  font-size: .85rem; color: var(--gray-700); line-height: 1.4;
}
.alan-list li:last-child { border-bottom: none; }
.alan-list li i { color: var(--primary); font-size: .65rem; margin-top: 4px; flex-shrink: 0; }
.sponsor-strip {
  background: var(--white); border: 1px solid var(--gray-200); border-radius: var(--radius-lg);
  padding: 20px 28px; display: flex; align-items: center; gap: 20px; flex-wrap: wrap; box-shadow: var(--shadow-sm);
}
.sponsor-strip-label { font-weight: 700; font-size: .8rem; color: var(--primary); text-transform: uppercase; letter-spacing: .08em; white-space: nowrap; }
.sponsor-strip-items { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; flex: 1; justify-content: center; }
.sponsor-item { font-weight: 600; font-size: .88rem; color: var(--gray-700); }
.sponsor-divider { color: var(--gray-200); font-size: 1.2rem; }
.davetli-card {
  background: var(--gray-50); border: 1px solid var(--gray-200);
  border-radius: var(--radius-lg); padding: 28px 20px; text-align: center;
  transition: var(--transition); height: 100%;
}
.davetli-card:hover { box-shadow: var(--shadow-md); transform: translateY(-4px); background: var(--white); }
.davetli-icon {
  width: 60px; height: 60px; border-radius: 50%; margin: 0 auto 16px;
  display: flex; align-items: center; justify-content: center; font-size: 1.4rem;
}
.davetli-card h6 { font-size: .9rem; font-weight: 700; color: var(--dark); margin-bottom: 6px; }
.davetli-card span { font-size: .78rem; color: var(--gray-500); line-height: 1.4; display: block; }
.medya-banner {
  background: linear-gradient(135deg, var(--primary-light), var(--secondary-light));
  border: 1px solid rgba(26,140,78,.2); border-radius: var(--radius-lg);
  padding: 28px; display: flex; gap: 20px; align-items: flex-start;
}
.medya-icon {
  width: 52px; height: 52px; border-radius: var(--radius-sm); flex-shrink: 0;
  background: linear-gradient(135deg, var(--primary), var(--secondary));
  display: flex; align-items: center; justify-content: center; color: #fff; font-size: 1.3rem;
}
.medya-text strong { display: block; font-size: .97rem; color: var(--dark); margin-bottom: 8px; }
.medya-text p { font-size: .87rem; color: var(--gray-500); margin: 0; line-height: 1.7; }

/* ── 13. PAYDAŞLAR ── */
.partner-card {
  background: var(--gray-50); border:2px solid var(--gray-200);
  border-radius: var(--radius-lg); padding:32px 20px; text-align:center;
  transition: var(--transition); height:100%;
}
.partner-card:hover { border-color: var(--primary); box-shadow: var(--shadow-md); transform: translateY(-4px); background: var(--white); }
.partner-logo-area {
  width:90px; height:90px; border-radius: var(--radius-md); margin:0 auto 16px;
  display:flex; align-items:center; justify-content:center; color:#fff; font-size:2rem; box-shadow: var(--shadow-green);
}
.partner-card h6 { font-size:.88rem; font-weight:700; color: var(--dark); margin-bottom:4px; }
.partner-card span { font-size:.75rem; color: var(--gray-500); }

/* ── 14. GALERİ ── */
.gallery-swiper { padding-bottom: 48px !important; }
.gallery-slide {
  border-radius: var(--radius-lg); overflow:hidden; position:relative;
  aspect-ratio:4/3; background: linear-gradient(135deg, var(--primary), var(--secondary));
}
.gallery-real { width:100%; height:100%; position:relative; overflow:hidden; border-radius:inherit; }
.gallery-real img { width:100%; height:100%; object-fit:cover; display:block; transition: transform .4s ease; }
.gallery-real:hover img { transform: scale(1.05); }
.gallery-placeholder {
  width:100%; height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; color:#fff;
}
.gallery-placeholder i { font-size:3rem; opacity:.6; }
.gallery-placeholder span { font-size:.85rem; opacity:.7; }
.gallery-overlay {
  position:absolute; inset:0; background: linear-gradient(to top, rgba(0,0,0,.7) 0%, transparent 60%);
  opacity:0; transition: var(--transition); display:flex; align-items:flex-end; padding:20px;
}
.gallery-slide:hover .gallery-overlay { opacity:1; }
.gallery-overlay-text { color:#fff; font-size:.9rem; font-weight:600; }
.swiper-button-next, .swiper-button-prev { color: var(--primary) !important; }
.swiper-pagination-bullet-active { background: var(--primary) !important; }

/* ── 15. NEDEN KATILMALI ── */
.reason-card {
  background: var(--white); border:1px solid var(--gray-200); border-radius: var(--radius-lg);
  padding:36px 28px; text-align:center; box-shadow: var(--shadow); transition: var(--transition);
  position:relative; overflow:hidden; height:100%;
}
.reason-card::after {
  content:''; position:absolute; bottom:0; left:0; right:0; height:4px;
  background: linear-gradient(90deg, var(--primary), var(--secondary));
  transform: scaleX(0); transform-origin:left; transition: var(--transition);
}
.reason-card:hover::after { transform: scaleX(1); }
.reason-card:hover { transform: translateY(-8px); box-shadow: var(--shadow-lg); }
.reason-icon {
  width:72px; height:72px; margin:0 auto 24px; border-radius: var(--radius-md);
  display:flex; align-items:center; justify-content:center; font-size:1.8rem;
}
.reason-card h5 { font-size:1rem; font-weight:700; margin-bottom:12px; color: var(--dark); }
.reason-card p  { font-size:.87rem; color: var(--gray-500); margin:0; line-height:1.65; }

/* ── 16. TESTİMONİALS ── */
#testimonials { background: linear-gradient(135deg, #0a2e18 0%, #0d3b6e 100%); }
.testimonial-card {
  background: rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.15);
  backdrop-filter:blur(12px); border-radius: var(--radius-xl); padding:36px; height:100%;
}
.testimonial-quote { font-size:3rem; color: rgba(255,255,255,.2); line-height:1; margin-bottom:16px; }
.testimonial-text  { font-size:1rem; color: rgba(255,255,255,.85); line-height:1.75; margin-bottom:24px; font-style:italic; }
.testimonial-stars { color:#facc15; margin-bottom:16px; letter-spacing:2px; }
.testimonial-author { display:flex; align-items:center; gap:16px; }
.author-avatar {
  width:48px; height:48px; border-radius:50%; flex-shrink:0;
  background: linear-gradient(135deg, var(--primary), var(--secondary));
  display:flex; align-items:center; justify-content:center; color:#fff; font-weight:700; font-size:1.1rem;
}
.author-info strong { display:block; color:#fff; font-weight:700; font-size:.95rem; }
.author-info span   { color:rgba(255,255,255,.6); font-size:.8rem; }
.testimonial-swiper .swiper-pagination-bullet { background: rgba(255,255,255,.4); }
.testimonial-swiper .swiper-pagination-bullet-active { background:#fff; }

/* ── 17. SSS ── */
.faq-accordion .accordion-item {
  border:1px solid var(--gray-200) !important; border-radius: var(--radius-md) !important;
  margin-bottom:12px; overflow:hidden; box-shadow: var(--shadow-sm);
}
.faq-accordion .accordion-button {
  font-weight:600; font-size:.97rem; color: var(--dark);
  background: var(--white); border-radius: var(--radius-md) !important;
  box-shadow: none !important; padding:18px 24px;
}
.faq-accordion .accordion-button:not(.collapsed) { color: var(--primary); background: var(--primary-light); }
.faq-accordion .accordion-button:not(.collapsed)::after {
  filter: invert(36%) sepia(80%) saturate(500%) hue-rotate(110deg);
}
.faq-accordion .accordion-body { padding:0 24px 20px; color: var(--gray-500); font-size:.9rem; line-height:1.75; }

/* ── 18. NEWSLETTER ── */
#newsletter {
  background: linear-gradient(135deg, var(--primary) 0%, var(--secondary) 100%);
  position:relative; overflow:hidden;
}
#newsletter::before {
  content:''; position:absolute; top:-40%; right:-15%;
  width:500px; height:500px; border-radius:50%; background: rgba(255,255,255,.06); pointer-events:none;
}
.newsletter-form .form-control {
  padding:14px 20px; border-radius: var(--radius-full);
  border:2px solid rgba(255,255,255,.2); background: rgba(255,255,255,.1);
  color:#fff; font-size:.95rem; backdrop-filter:blur(8px);
}
.newsletter-form .form-control::placeholder { color: rgba(255,255,255,.5); }
.newsletter-form .form-control:focus {
  background: rgba(255,255,255,.18); border-color: rgba(255,255,255,.5); box-shadow: none; color:#fff;
}
.btn-newsletter {
  padding:14px 32px; border-radius: var(--radius-full); font-weight:700;
  background:#fff; color: var(--primary); border:none; white-space:nowrap; transition: var(--transition);
}
.btn-newsletter:hover { background: var(--primary-light); transform: translateY(-2px); box-shadow: var(--shadow-md); }
.honeypot { position:absolute; left:-9999px; opacity:0; pointer-events:none; height:0; overflow:hidden; }

/* ── 19. İLETİŞİM ── */
.contact-info-item {
  display:flex; align-items:flex-start; gap:16px;
  padding:20px 0; border-bottom:1px solid var(--gray-200);
}
.contact-info-item:last-child { border-bottom:none; }
.contact-icon {
  width:48px; height:48px; flex-shrink:0; border-radius: var(--radius-sm);
  background: linear-gradient(135deg, var(--primary), var(--secondary));
  display:flex; align-items:center; justify-content:center; color:#fff; font-size:1.1rem;
}
.contact-label { font-size:.74rem; color: var(--gray-500); font-weight:600; text-transform:uppercase; letter-spacing:.06em; margin-bottom:4px; }
.contact-value { font-size:.97rem; font-weight:600; color: var(--dark); }
.contact-social { display:flex; gap:10px; flex-wrap:wrap; }
.contact-social a {
  width:44px; height:44px; border-radius: var(--radius-sm); border:2px solid var(--gray-200);
  display:flex; align-items:center; justify-content:center; color: var(--gray-500);
  transition: var(--transition); font-size:1rem;
}
.contact-social a:hover { background: var(--primary); border-color: var(--primary); color:#fff; transform: translateY(-3px); }

/* ── 20. FOOTER ── */
.site-footer { background: var(--dark); color: rgba(255,255,255,.75); position:relative; }
.footer-wave { color: var(--light); line-height:0; }
.footer-wave svg { display:block; }
.footer-main { padding:64px 0 40px; }
.footer-logo { text-decoration:none; }
.footer-logo-icon {
  width:48px; height:48px; border-radius: var(--radius); flex-shrink:0;
  background: linear-gradient(135deg, var(--primary), var(--secondary));
  display:flex; align-items:center; justify-content:center; color:#fff; font-size:1.2rem;
}
.footer-brand-name { display:block; font-family: var(--font-heading); font-weight:800; font-size:1rem; color:#fff; }
.footer-brand-sub  { display:block; font-size:.7rem; color: rgba(255,255,255,.5); }
.footer-desc { font-size:.87rem; line-height:1.75; color: rgba(255,255,255,.6); }
.footer-social { display:flex; gap:10px; flex-wrap:wrap; }
.social-btn {
  width:40px; height:40px; 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;
  color: rgba(255,255,255,.7); font-size:.95rem; transition: var(--transition);
}
.social-btn:hover { background: var(--primary); border-color: var(--primary); color:#fff; transform: translateY(-3px); }
.footer-heading { font-size:.85rem; font-weight:700; color:#fff; text-transform:uppercase; letter-spacing:.08em; margin-bottom:20px; }
.footer-links li { margin-bottom:10px; }
.footer-links a { color: rgba(255,255,255,.6); font-size:.87rem; display:flex; align-items:center; gap:6px; transition: var(--transition); }
.footer-links a i { font-size:.65rem; }
.footer-links a:hover { color:#fff; padding-left:4px; }
.footer-info-list li { display:flex; align-items:flex-start; gap:10px; margin-bottom:12px; font-size:.85rem; color: rgba(255,255,255,.6); }
.footer-info-list li i { margin-top:3px; color: var(--primary); flex-shrink:0; }
.footer-info-list a { color: rgba(255,255,255,.6); transition: var(--transition); }
.footer-info-list a:hover { color:#fff; }
.footer-tubitak-badge { background: rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.12); border-radius: var(--radius-sm); padding:14px 16px; }
.tubitak-badge-inner { display:flex; align-items:center; gap:12px; }
.tubitak-badge-inner i { font-size:1.4rem; color: var(--accent); }
.tubitak-badge-inner strong { display:block; color:#fff; font-size:.9rem; }
.tubitak-badge-inner span  { display:block; font-size:.72rem; color: rgba(255,255,255,.5); }
.footer-bottom { border-top:1px solid rgba(255,255,255,.08); padding:20px 0; background: rgba(0,0,0,.2); }
.footer-copyright, .footer-note { font-size:.8rem; color: rgba(255,255,255,.45); }

/* ── 21. BAŞA DÖN ── */
.back-to-top {
  position:fixed; bottom:28px; right:28px; z-index:1000;
  width:48px; height:48px; border-radius: var(--radius-sm);
  background: linear-gradient(135deg, var(--primary), var(--secondary));
  color:#fff; display:flex; align-items:center; justify-content:center;
  font-size:1.1rem; box-shadow: var(--shadow-green);
  opacity:0; visibility:hidden; transform: translateY(16px); transition: var(--transition);
}
.back-to-top.visible { opacity:1; visibility:visible; transform: translateY(0); }
.back-to-top:hover { transform: translateY(-4px); color:#fff; box-shadow:0 8px 24px rgba(26,140,78,.5); }

/* ── 22. GENEL BUTONLAR ── */
.btn-primary-custom {
  background: linear-gradient(135deg, var(--primary), var(--primary-dark));
  color:#fff; border:none; padding:12px 28px; border-radius: var(--radius-full);
  font-weight:700; font-size:.9rem; transition: var(--transition);
  display:inline-flex; align-items:center; gap:8px;
}
.btn-primary-custom:hover { transform: translateY(-3px); box-shadow: var(--shadow-green); color:#fff; }

/* ── 23. RESPONSIVE ── */
@media (max-width:1199px){
  .hero-visual-icon-grid { gap: 12px; }
  .hv-icon-item { padding: 14px 8px; }
}
@media (max-width:991px){
  .hero-visual { margin-top: 48px; }
  .about-img-wrapper { margin-top: 40px; }
}
@media (max-width:767px){
  .hero-title     { font-size: 2.1rem; }
  .hero-info-cards{ flex-direction: column; }
  .hero-info-card { width: 100%; }
  .stat-number    { font-size: 2.2rem; }
  .hero-visual-card { padding: 24px; }
  .about-main-visual { padding: 36px 24px; }
  .medya-banner { flex-direction: column; }
}
@media (max-width:575px){
  .hero-cta-group { flex-direction: column; }
  .btn-hero-primary, .btn-hero-secondary { width: 100%; justify-content: center; }
  .hero-visual-icon-grid { grid-template-columns: repeat(2,1fr); }
  .workshop-filter-bar .filter-btn { font-size: .78rem; padding: 7px 14px; }
  .sponsor-strip { flex-direction: column; }
}

/* ── 24. AOS OVERRIDE ── */
[data-aos] { pointer-events: none; }
[data-aos].aos-animate { pointer-events: auto; }

/* ── 25. SCROLLBAR ── */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: var(--gray-100); }
::-webkit-scrollbar-thumb { background: var(--primary); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: var(--primary-dark); }

/* ── 26. UTILITY ── */
@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(20px); }
  to   { opacity: 1; transform: translateY(0); }
}
:focus-visible { outline: 2px solid var(--primary); outline-offset: 3px; }

/* ── 27. SAHNE & ALAN DÜZENİ BOŞLUK DÜZELTMESİ ── */
#alan.section-padding {
  padding-top: 72px;
  padding-bottom: 32px;
}

#alan .row.justify-content-center.mb-5 {
  margin-bottom: 2rem !important;
}

#alan .row.g-4.mb-5 {
  margin-bottom: 0 !important;
}

@media (max-width: 768px) {
  #alan.section-padding {
    padding-top: 56px;
    padding-bottom: 24px;
  }
}
