/* ═══════════════════════════════════════════════════════════════════
   motion.css — GM Homepage v3  (video hero + vertical timeline)
   ═══════════════════════════════════════════════════════════════════ */

/* ── Design tokens ─────────────────────────────────────────────────── */
:root {
  --gm-black:        #000000;
  --gm-black-soft:   #000000;
  --gm-white:        #ffffff;
  --gm-muted:        rgba(255,255,255,.62);
  --gm-faint:        rgba(255,255,255,.10);
  --gm-line:         rgba(255,255,255,.15);
  --gm-line-strong:  rgba(255,255,255,.38);
  --gm-font-serif:   'Cormorant Garamond', Georgia, serif;
  --gm-font-sans:    'Inter', system-ui, sans-serif;
  --gm-font-mono:    'SF Mono','Fira Mono',ui-monospace,monospace;
  --gm-radius:       24px;
  --gm-radius-pill:  9999px;
  --gm-section-py:   clamp(80px,10vw,140px);
  --gm-container:    1200px;
  --gm-px:           clamp(20px,5vw,80px);
  --gm-gap:          clamp(12px,2vw,20px);
}

/* ── Body overrides ─────────────────────────────────────────────────── */
body.home,
body.front-page,
body.gm-frontpage {
  background: var(--gm-black) !important;
  color: var(--gm-white) !important;
  font-family: var(--gm-font-sans) !important;
}

body.home .site, body.front-page .site, body.gm-frontpage .site,
body.home #page, body.front-page #page, body.gm-frontpage #page {
  background: var(--gm-black) !important;
  color: var(--gm-white) !important;
}

/* Header */
body.home .site-header, body.front-page .site-header, body.gm-frontpage .site-header,
body.home #site-header, body.front-page #site-header, body.gm-frontpage #site-header {
  background: rgba(0,0,0,.92) !important;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--gm-line) !important;
  position: sticky; top: 0; z-index: 200;
}
body.home .site-title a, body.front-page .site-title a, body.gm-frontpage .site-title a,
body.home .tagline, body.front-page .tagline, body.gm-frontpage .tagline { color: var(--gm-white) !important; }
body.home .menu-primary-items a, body.front-page .menu-primary-items a,
body.gm-frontpage .menu-primary-items a { color: var(--gm-muted) !important; }
body.home .menu-primary-items a:hover, body.front-page .menu-primary-items a:hover,
body.gm-frontpage .menu-primary-items a:hover { color: var(--gm-white) !important; }
body.home .toggle-navigation, body.front-page .toggle-navigation,
body.gm-frontpage .toggle-navigation { color: var(--gm-white); }

/* Footer */
body.home .site-footer, body.front-page .site-footer, body.gm-frontpage .site-footer,
body.home #site-footer, body.front-page #site-footer, body.gm-frontpage #site-footer {
  background: var(--gm-black) !important;
  border-top: 1px solid var(--gm-line);
  color: var(--gm-muted);
}

/* Layout reset */
body.home #main, body.front-page #main, body.gm-frontpage #main,
body.home .main, body.front-page .main, body.gm-frontpage .main,
body.home .site-content, body.front-page .site-content, body.gm-frontpage .site-content,
body.home .primary-container, body.front-page .primary-container, body.gm-frontpage .primary-container,
body.home #primary-container, body.front-page #primary-container, body.gm-frontpage #primary-container,
body.home .primary-container > .max-width, body.front-page .primary-container > .max-width,
body.gm-frontpage .primary-container > .max-width {
  width: 100% !important; max-width: 100% !important;
  padding: 0 !important; margin: 0 !important; float: none !important;
}
body.home #loop-container, body.front-page #loop-container, body.gm-frontpage #loop-container { max-width: 100% !important; }
body.home .sidebar-primary, body.front-page .sidebar-primary, body.gm-frontpage .sidebar-primary,
body.home #sidebar-primary, body.front-page #sidebar-primary, body.gm-frontpage #sidebar-primary { display: none !important; }
/* ── Sıfır boşluk: header → hero ─────────────────────────────── */
body.gm-frontpage .site-header,
body.home .site-header,
body.front-page .site-header {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* Primary container ve max-width wrapper padding sıfırla */
body.gm-frontpage #primary-container,
body.home #primary-container,
body.front-page #primary-container,
body.gm-frontpage .primary-container,
body.home .primary-container,
body.front-page .primary-container {
  padding-top: 0 !important;
  margin-top: 0 !important;
}
body.gm-frontpage #primary-container > .max-width,
body.home #primary-container > .max-width,
body.front-page #primary-container > .max-width {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/* .main / #main section padding sıfırla */
body.gm-frontpage #main,
body.home #main,
body.front-page #main,
body.gm-frontpage .main,
body.home .main,
body.front-page .main {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/* .gm-home ve .gm-hero padding sıfırla */
body.gm-frontpage .gm-home,
body.home .gm-home,
body.front-page .gm-home { margin-top: 0 !important; padding-top: 0 !important; }
body.gm-frontpage .gm-hero,
body.home .gm-hero,
body.front-page .gm-hero { margin-top: 0 !important; padding-top: 0 !important; }

/* Admin bar boşluk koru */
body.admin-bar.gm-frontpage .gm-hero { padding-top: 32px !important; }
@media (max-width: 782px) {
  body.admin-bar.gm-frontpage .gm-hero { padding-top: 46px !important; }
}

body.admin-bar .gm-hero { padding-top: 32px; }
@media (max-width: 782px) { body.admin-bar .gm-hero { padding-top: 46px; } }

/* ── Shared ─────────────────────────────────────────────────────────── */
.gm-home { background: var(--gm-black); color: var(--gm-white); }
.gm-home * { box-sizing: border-box; }
.gm-home p { margin: 0; }

.gm-container {
  max-width: var(--gm-container);
  margin-inline: auto;
  padding-inline: var(--gm-px);
}

.gm-eyebrow {
  display: inline-flex; align-items: center; gap: 10px;
  font-family: var(--gm-font-mono);
  font-size: 11px; letter-spacing: .14em; text-transform: uppercase;
  color: var(--gm-muted); margin-bottom: 16px;
}
.gm-eyebrow::before {
  content: ''; display: block; width: 22px; height: 1px;
  background: currentColor; flex-shrink: 0;
}

.gm-section-hd { margin-bottom: clamp(36px,5vw,60px); }
.gm-section-hd h2 {
  font-family: var(--gm-font-serif) !important;
  font-size: clamp(30px,4.5vw,52px) !important; font-weight: 400 !important;
  color: var(--gm-white) !important; line-height: 1.1 !important;
  letter-spacing: -.02em !important; margin: 0 0 14px !important;
}
.gm-section-hd__desc {
  font-family: var(--gm-font-sans); font-size: clamp(17px,1vw,18px);
  line-height: 1.7; color: var(--gm-muted); max-width: 600px; margin: 0;
}
.gm-section-cta { margin-top: 48px; text-align: center; }
.gm-empty { color: var(--gm-muted); font-style: italic; padding: 40px 0; }

@media (prefers-reduced-motion: reduce) {
  .gm-home * { transition-duration: .01ms !important; animation-duration: .01ms !important; }
  .gm-topic-card::after { animation: none !important; }
}

/* ── Buttons ─────────────────────────────────────────────────────────── */
.gm-btn {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: var(--gm-font-sans) !important;
  font-size: 14px !important; font-weight: 500 !important; line-height: 1 !important;
  padding: 13px 26px !important; border-radius: var(--gm-radius-pill) !important;
  border: 1px solid transparent !important; cursor: pointer;
  text-decoration: none !important; white-space: nowrap;
  transition: background .22s ease, border-color .22s ease, color .22s ease, transform .22s ease;
}
.gm-btn--primary { background: var(--gm-white) !important; color: var(--gm-black) !important; border-color: var(--gm-white) !important; }
.gm-btn--primary:hover { background: transparent !important; color: var(--gm-white) !important; }
.gm-btn--ghost { background: transparent !important; color: var(--gm-muted) !important; border-color: var(--gm-line) !important; }
.gm-btn--ghost:hover { border-color: var(--gm-line-strong) !important; color: var(--gm-white) !important; }
.gm-btn--outline { background: transparent !important; color: var(--gm-white) !important; border-color: var(--gm-line) !important; padding: 12px 26px !important; }
.gm-btn--outline:hover { border-color: var(--gm-line-strong) !important; background: var(--gm-faint) !important; }
.gm-btn:focus-visible { outline: 2px solid var(--gm-line-strong); outline-offset: 3px; }

/* ═══════════════════════════════════════════════════════════ HERO ══ */
.gm-hero {
  position: relative; min-height: 100svh;
  display: flex; align-items: center;
  overflow: hidden; background: var(--gm-black);
}

/* ── Background ─ */
.gm-hero__bg { position: absolute; inset: 0; z-index: 0; }

/* Video */
.gm-hero__video {
  position: absolute; inset: 0; width: 100%; height: 100%;
  object-fit: cover; object-position: center;
  opacity: 1; z-index: 1;
  filter: grayscale(1) brightness(.55);
}

/* CSS fallback anim — video yüklenemezse görünür */
@keyframes gm-hero-drift {
  0%   { background-position: 0% 50%; }
  50%  { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}
@keyframes gm-hero-pulse {
  0%, 100% { opacity: .18; transform: scale(1); }
  50%       { opacity: .32; transform: scale(1.08); }
}
.gm-hero__anim {
  position: absolute; inset: 0; z-index: 0;
  background:
    radial-gradient(ellipse 80% 60% at 70% 50%, rgba(255,255,255,.055) 0%, transparent 65%),
    radial-gradient(ellipse 60% 80% at 20% 30%, rgba(255,255,255,.035) 0%, transparent 60%),
    radial-gradient(ellipse 40% 40% at 85% 80%, rgba(255,255,255,.025) 0%, transparent 55%),
    #000;
  background-size: 200% 200%;
  animation: gm-hero-drift 18s ease infinite;
}
.gm-hero__anim::before {
  content: '';
  position: absolute; inset: 0;
  background: repeating-linear-gradient(
    0deg,
    transparent,
    transparent 48px,
    rgba(255,255,255,.018) 48px,
    rgba(255,255,255,.018) 49px
  ),
  repeating-linear-gradient(
    90deg,
    transparent,
    transparent 48px,
    rgba(255,255,255,.018) 48px,
    rgba(255,255,255,.018) 49px
  );
}
.gm-hero__anim::after {
  content: '';
  position: absolute; inset: 0;
  background: radial-gradient(ellipse 50% 70% at 65% 45%, rgba(255,255,255,.04) 0%, transparent 70%);
  animation: gm-hero-pulse 8s ease-in-out infinite;
}

/* Fotoğraflar — sağda, CSS ile zaten görünür (JS bağımsız) */
.gm-hero__photos { position: absolute; inset: 0; z-index: 2; pointer-events: none; }

.gm-hero__photo {
  position: absolute; top: 0; right: 0;
  width: 60%; height: 100%;
  object-fit: cover; object-position: center top;
  opacity: 0;
  -webkit-mask-image: linear-gradient(to right, transparent 0%, rgba(0,0,0,.55) 22%, black 48%);
  mask-image: linear-gradient(to right, transparent 0%, rgba(0,0,0,.55) 22%, black 48%);
}
/* Desktop: foto başlangıçta gizli — video görünür, JS crossfade başlayınca foto açılır */
.gm-hero__photo:first-child { opacity: 0; }

.gm-hero__photo[data-photo-style="light"] { filter: grayscale(1) brightness(.55) contrast(1.1); }
.gm-hero__photo[data-photo-style="dark"]  { filter: grayscale(1) brightness(.75); }

/* Overlay */
.gm-hero__overlay-left {
  position: absolute; top: 0; left: 0; width: 65%; height: 100%; z-index: 3; pointer-events: none;
  background: linear-gradient(to right, rgba(0,0,0,.94) 0%, rgba(0,0,0,.70) 45%, rgba(0,0,0,.15) 75%, transparent 100%);
}
.gm-hero__overlay-bottom {
  position: absolute; bottom: 0; left: 0; right: 0; height: 220px; z-index: 3; pointer-events: none;
  background: linear-gradient(to top, var(--gm-black), transparent);
}

/* ── Content ─ */
.gm-hero__content {
  position: relative; z-index: 10;
  max-width: var(--gm-container); width: 100%; margin: 0 auto;
  padding: clamp(18px,3vw,40px) var(--gm-px) clamp(32px,4vw,56px);
  display: flex; flex-direction: column; align-items: flex-start;
}

.gm-hero__eyebrow {
  display: inline-block; margin-bottom: 22px;
  font-family: var(--gm-font-mono); font-size: 11px;
  font-weight: 500; letter-spacing: .14em; text-transform: uppercase;
  color: var(--gm-muted);
  padding: 6px 14px; border: 1px solid var(--gm-line); border-radius: var(--gm-radius-pill);
  background: rgba(255,255,255,.03);
}
.gm-hero__title {
  font-family: var(--gm-font-serif) !important;
  font-size: clamp(38px,5.5vw,76px) !important; font-weight: 400 !important;
  line-height: 1.08 !important; letter-spacing: -.025em !important;
  color: var(--gm-white) !important; max-width: 620px; margin: 0 0 28px !important;
}
.gm-hero__lead {
  font-family: var(--gm-font-sans) !important;
  font-size: clamp(16px,1.3vw,20px) !important; font-weight: 300 !important;
  line-height: 1.6 !important; color: var(--gm-white) !important;
  max-width: 520px; margin: 0 0 14px !important;
}
.gm-hero__text {
  font-family: var(--gm-font-sans) !important;
  font-size: clamp(17px,1vw,18px) !important; line-height: 1.72 !important;
  color: var(--gm-muted) !important; max-width: 480px; margin: 0 0 36px !important;
}
.gm-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }

/* ════════════════════════════════════════════════════════ BIO ══ */
.gm-bio { padding: var(--gm-section-py) 0; background: var(--gm-black); }

.gm-bio-card {
  max-width: 760px; margin-inline: auto;
  border: 1px solid var(--gm-line); border-radius: var(--gm-radius);
  padding: clamp(28px,4vw,52px); background: rgba(255,255,255,.02);
  position: relative; overflow: hidden; transition: border-color .4s ease;
}
.gm-bio-card:hover { border-color: var(--gm-line-strong); }
.gm-bio-card::before {
  content: ''; position: absolute; left: 0; top: 12%; bottom: 12%;
  width: 2px; background: linear-gradient(to bottom, transparent, var(--gm-line-strong), transparent);
}

.gm-bio__title {
  font-family: var(--gm-font-serif) !important;
  font-size: clamp(24px,3vw,38px) !important; font-weight: 400 !important;
  color: var(--gm-white) !important; line-height: 1.15 !important;
  letter-spacing: -.02em !important; margin: 10px 0 18px !important;
}
.gm-bio__text {
  font-family: var(--gm-font-sans) !important;
  font-size: clamp(17px,1.1vw,18px) !important; line-height: 1.75 !important;
  color: var(--gm-muted) !important; margin: 0 0 16px !important;
}
.gm-bio__focus {
  font-family: var(--gm-font-sans) !important; font-size: 16px !important;
  line-height: 1.65 !important; color: var(--gm-muted) !important; margin: 0 !important;
  padding-top: 16px; border-top: 1px solid var(--gm-line);
}
.gm-bio__focus strong { color: var(--gm-white); font-weight: 500; }

/* ═══════════════════════════════════════════════════ TOPICS ══ */
.gm-topics { padding: var(--gm-section-py) 0; background: var(--gm-black-soft); }

.gm-topic-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: var(--gm-gap);
}

/* ─ Kart shimmer animasyonu ─ */
@keyframes gm-card-shimmer {
  0%   { background-position: -200% center; }
  100% { background-position:  200% center; }
}

.gm-topic-card {
  border: 1px solid var(--gm-line); border-radius: var(--gm-radius);
  background: rgba(255,255,255,.02);
  overflow: hidden; position: relative;
  transition: border-color .25s ease, transform .25s ease;
}

/* Parlayan gradient sweep */
.gm-topic-card::after {
  content: ''; position: absolute; inset: 0;
  pointer-events: none; z-index: 1;
  background: linear-gradient(
    135deg,
    transparent 30%,
    rgba(255,255,255,.07) 50%,
    transparent 70%
  );
  background-size: 200% 200%;
  animation: gm-card-shimmer 3.5s ease infinite;
}
.gm-topic-card:nth-child(2)::after  { animation-delay: .30s; }
.gm-topic-card:nth-child(3)::after  { animation-delay: .60s; }
.gm-topic-card:nth-child(4)::after  { animation-delay: .90s; }
.gm-topic-card:nth-child(5)::after  { animation-delay: 1.20s; }
.gm-topic-card:nth-child(6)::after  { animation-delay: 1.50s; }
.gm-topic-card:nth-child(7)::after  { animation-delay: 1.80s; }
.gm-topic-card:nth-child(8)::after  { animation-delay: 2.10s; }
.gm-topic-card:nth-child(9)::after  { animation-delay: 2.40s; }
.gm-topic-card:nth-child(10)::after { animation-delay: 2.70s; }
.gm-topic-card:nth-child(11)::after { animation-delay: 3.00s; }
.gm-topic-card:nth-child(12)::after { animation-delay: 3.30s; }

.gm-topic-card:hover { border-color: var(--gm-line-strong); background: rgba(255,255,255,.05); transform: translateY(-2px); }

.gm-topic-card__link {
  display: flex; flex-direction: column; height: 100%;
  padding: clamp(18px,2.5vw,28px);
  text-decoration: none !important; color: inherit !important; position: relative;
}
.gm-topic-card__num {
  font-family: var(--gm-font-mono); font-size: 10px; letter-spacing: .1em;
  color: rgba(255,255,255,.25); margin-bottom: 10px;
}
.gm-topic-card__title {
  font-family: var(--gm-font-serif); font-size: 20px;
  font-weight: 400; line-height: 1.2; color: var(--gm-white); margin-bottom: 8px;
}
.gm-topic-card__desc {
  font-family: var(--gm-font-sans); font-size: 15px; line-height: 1.6;
  color: var(--gm-muted); flex: 1; margin-bottom: 12px;
}
.gm-topic-card__footer {
  display: flex; align-items: center; justify-content: space-between;
  padding-top: 12px; border-top: 1px solid var(--gm-line); margin-top: auto;
}
.gm-topic-card__count { font-family: var(--gm-font-mono); font-size: 10px; color: rgba(255,255,255,.28); }
.gm-topic-card__arrow {
  width: 24px; height: 24px; border: 1px solid var(--gm-line); border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-size: 13px; color: var(--gm-muted);
  transition: border-color .2s ease, color .2s ease;
}
.gm-topic-card:hover .gm-topic-card__arrow { border-color: var(--gm-line-strong); color: var(--gm-white); }

/* ═══════════════════════════════════════════════════ POSTS ══ */
.gm-posts { padding: var(--gm-section-py) 0; background: var(--gm-black); }

.gm-post-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: var(--gm-gap); }
@media (max-width: 1024px) { .gm-post-grid { grid-template-columns: repeat(2,1fr); } }
@media (max-width: 600px)  { .gm-post-grid { grid-template-columns: 1fr; } }

.gm-post-card {
  border: 1px solid var(--gm-line); border-radius: var(--gm-radius);
  background: rgba(255,255,255,.015);
  transition: border-color .25s ease, background .25s ease, transform .25s ease;
}
.gm-post-card:hover { border-color: var(--gm-line-strong); background: rgba(255,255,255,.04); transform: translateY(-2px); }

.gm-post-card__link {
  display: flex; flex-direction: column; height: 100%;
  padding: clamp(18px,2.5vw,28px); text-decoration: none !important; color: inherit !important;
}
.gm-post-card__meta { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin-bottom: 14px; }
.gm-post-card__cat {
  font-family: var(--gm-font-mono); font-size: 10px; font-weight: 500;
  text-transform: uppercase; letter-spacing: .08em; color: var(--gm-white);
  background: rgba(255,255,255,.07); padding: 3px 10px;
  border-radius: var(--gm-radius-pill); border: 1px solid var(--gm-line);
}
.gm-post-card__date { font-family: var(--gm-font-mono); font-size: 11px; color: var(--gm-muted); }
.gm-post-card__title {
  font-family: var(--gm-font-serif); font-size: clamp(17px,1.6vw,22px);
  font-weight: 400; line-height: 1.25; letter-spacing: -.015em;
  color: var(--gm-white); margin: 0 0 10px;
}
.gm-post-card__excerpt {
  font-family: var(--gm-font-sans); font-size: 15px; line-height: 1.65;
  color: var(--gm-muted); flex: 1; margin: 0 0 16px;
  display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden;
}
.gm-post-card__cta {
  font-family: var(--gm-font-sans); font-size: 12px; font-weight: 500;
  color: var(--gm-muted); margin-top: auto; padding-top: 14px;
  border-top: 1px solid var(--gm-line); transition: color .2s ease;
}
.gm-post-card:hover .gm-post-card__cta { color: var(--gm-white); }

/* ═══════════════════════════════════════════════ TIMELINE ══ */
.gm-archive { padding: var(--gm-section-py) 0; background: var(--gm-black-soft); }

.gm-archive__total {
  display: block; font-family: var(--gm-font-mono); font-size: 11px;
  letter-spacing: .08em; color: rgba(255,255,255,.25); margin-top: 8px;
}

/* ── Timeline container ── */
.gm-timeline {
  position: relative;
  padding-left: 52px;
  max-width: 860px;
  margin-top: 8px;
}

/* Dikey track çizgisi */
.gm-timeline__track {
  position: absolute;
  left: 16px; top: 8px; bottom: 0;
  width: 1px;
  background: rgba(255,255,255,.08);
}

/* Scroll ile büyüyen dolgu */
.gm-timeline__fill {
  position: absolute; top: 0; left: 0; width: 100%;
  height: 0%;
  background: linear-gradient(to bottom, rgba(255,255,255,.75), rgba(255,255,255,.12));
}

/* ── Yıl bloğu ── */
.gm-tl-year { position: relative; margin-bottom: 60px; }
.gm-tl-year:last-child { margin-bottom: 0; }

.gm-tl-year__header {
  display: flex; align-items: baseline; gap: 14px;
  margin-bottom: 30px; position: relative;
}

/* Büyük yıl noktası — track üzerinde */
.gm-tl-year__dot {
  position: absolute;
  left: -41px; /* padding(52) - track_left(16) - half_dot(5) = -41 from content */
  top: 14px;
  width: 10px; height: 10px; border-radius: 50%;
  background: var(--gm-white);
  box-shadow: 0 0 0 3px rgba(255,255,255,.08), 0 0 0 7px rgba(255,255,255,.03);
}

.gm-tl-year__num {
  font-family: var(--gm-font-serif);
  font-size: clamp(44px,7vw,84px); font-weight: 400;
  line-height: .9; letter-spacing: -.03em; color: var(--gm-white);
}

.gm-tl-year__count {
  font-family: var(--gm-font-mono); font-size: 11px;
  color: rgba(255,255,255,.22); letter-spacing: .06em;
  padding-bottom: 3px;
}

/* ── Ay bloğu ── */
.gm-tl-month { margin-bottom: 26px; position: relative; }

.gm-tl-month__header {
  display: flex; align-items: center; gap: 10px;
  margin-bottom: 8px; position: relative;
}

/* Küçük ay noktası */
.gm-tl-month__dot {
  position: absolute;
  left: -38px; /* padding(52) - track_left(16) - half_dot(2) = -38 from content */
  top: 50%; transform: translateY(-50%);
  width: 4px; height: 4px; border-radius: 50%;
  background: rgba(255,255,255,.28);
}

.gm-tl-month__name {
  font-family: var(--gm-font-mono); font-size: 11px;
  letter-spacing: .12em; text-transform: uppercase;
  color: rgba(255,255,255,.40);
}

.gm-tl-month__cnt {
  font-family: var(--gm-font-mono); font-size: 10px;
  color: rgba(255,255,255,.18);
}

/* ── Yazı listesi ── */
.gm-tl-posts { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 2px; }

.gm-tl-post a {
  display: inline-flex; align-items: flex-start; gap: 10px;
  font-family: var(--gm-font-sans);
  font-size: clamp(15px,.95vw,17px); line-height: 1.5;
  color: rgba(255,255,255,.48); text-decoration: none;
  padding: 3px 0;
  transition: color .2s ease;
}
.gm-tl-post a::before {
  content: ''; width: 14px; height: 1px;
  background: rgba(255,255,255,.15); margin-top: 9px; flex-shrink: 0;
  transition: width .22s ease, background .22s ease;
}
.gm-tl-post a:hover { color: var(--gm-white); }
.gm-tl-post a:hover::before { width: 22px; background: rgba(255,255,255,.52); }

/* ── Responsive ── */
@media (max-width: 768px) {
  .gm-timeline { padding-left: 36px; }
  .gm-timeline__track { left: 10px; }
  .gm-tl-year__dot { left: -28px; }
  .gm-tl-month__dot { left: -24px; }
  .gm-tl-year__num { font-size: clamp(34px,8vw,56px); }

  /* Mobilde video gizle */
  .gm-hero__video { display: none !important; }

  /* Mobilde boşluğu kaldır: içerik üstten başlasın */
  .gm-hero { align-items: flex-start !important; }
  .gm-hero__content { padding-top: max(56px, 11vw) !important; }

  /* Mobilde fotoğraf tam ekran */
  .gm-hero__photos { display: block !important; }
  .gm-hero__photo {
    width: 100% !important; height: 100% !important;
    top: 0 !important; left: 0 !important; right: 0 !important; bottom: 0 !important;
    transform: none !important;
    object-fit: cover !important; object-position: center center !important;
    -webkit-mask-image: none !important; mask-image: none !important;
  }
  /* JS yokken ilk foto görünsün; !important YOK → JS inline style override eder */
  .gm-hero__photo:first-child { opacity: .65; }
  body.gm-js-ready .gm-hero__photo:first-child { opacity: 0; }

  .gm-hero__overlay-left {
    width: 100% !important;
    background: linear-gradient(to bottom, rgba(0,0,0,.90) 0%, rgba(0,0,0,.70) 55%, rgba(0,0,0,.46) 100%) !important;
  }
}

/* ═══════════════════════════════════════ THOUGHT FRAMEWORK ══ */
.gm-framework { padding: var(--gm-section-py) 0; background: var(--gm-black); }

.gm-framework__card {
  border: 1px solid var(--gm-line); border-radius: var(--gm-radius);
  padding: clamp(36px,5vw,68px); background: rgba(255,255,255,.02); max-width: 860px;
}
.gm-framework__title {
  font-family: var(--gm-font-serif) !important;
  font-size: clamp(24px,3.2vw,42px) !important; font-weight: 400 !important;
  color: var(--gm-white) !important; line-height: 1.15 !important;
  letter-spacing: -.02em !important; margin: 10px 0 26px !important; max-width: 660px;
}
.gm-framework__body p {
  font-family: var(--gm-font-sans) !important;
  font-size: clamp(17px,1.1vw,18px) !important; line-height: 1.78 !important;
  color: var(--gm-muted) !important; margin: 0 0 18px !important; max-width: 660px;
}
.gm-framework__body p:last-child { margin-bottom: 0 !important; }

/* ═══════════════════════════════════════════════ FINAL CTA ══ */
.gm-final-cta { padding: var(--gm-section-py) 0; background: var(--gm-black-soft); text-align: center; }
.gm-final-cta__title {
  font-family: var(--gm-font-serif) !important;
  font-size: clamp(28px,4.5vw,56px) !important; font-weight: 400 !important;
  color: var(--gm-white) !important; line-height: 1.1 !important;
  letter-spacing: -.025em !important; margin: 10px auto 18px !important; max-width: 680px;
}
.gm-final-cta__text {
  font-family: var(--gm-font-sans) !important;
  font-size: clamp(17px,1.1vw,18px) !important; line-height: 1.72 !important;
  color: var(--gm-muted) !important; max-width: 560px; margin: 0 auto 38px !important;
}
.gm-final-cta__actions { display: flex; justify-content: center; flex-wrap: wrap; gap: 12px; }

/* ═══════════════════════════════════════════ Touch / hover ══ */
@media (hover: none) {
  .gm-topic-card:hover, .gm-post-card:hover, .gm-btn:hover, .gm-bio-card:hover { transform: none; }
}

/* ═══════════════════════════════════ MOBİL MENÜ DRAWER ══ */
@media (max-width: 768px) {
  body.gm-frontpage .menu-primary-container,
  body.gm-frontpage #menu-primary-container,
  body.home .menu-primary-container,
  body.home #menu-primary-container {
    position: fixed !important;
    top: 0 !important; left: 0 !important;
    width: min(300px, 86vw) !important;
    height: 100dvh !important; max-height: 100vh !important;
    background: var(--gm-black) !important;
    border-right: 1px solid var(--gm-line) !important;
    z-index: 9998 !important;
    transform: translateX(-110%) !important;
    transition: transform .32s cubic-bezier(.4,0,.2,1) !important;
    overflow-y: auto !important; overflow-x: hidden !important;
    padding: 80px 24px 48px 24px !important;
    display: block !important; visibility: visible !important;
    opacity: 1 !important;
  }
  body.gm-frontpage.gm-menu-open .menu-primary-container,
  body.gm-frontpage.gm-menu-open #menu-primary-container,
  body.home.gm-menu-open .menu-primary-container,
  body.home.gm-menu-open #menu-primary-container,
  body.gm-frontpage.navigation-active .menu-primary-container,
  body.gm-frontpage.navigation-active #menu-primary-container,
  body.home.navigation-active .menu-primary-container,
  body.home.navigation-active #menu-primary-container,
  body.gm-frontpage .max-width > #toggle-navigation[aria-expanded="true"] ~ .menu-primary-container,
  body.home .max-width > #toggle-navigation[aria-expanded="true"] ~ .menu-primary-container {
    transform: translateX(0) !important;
    box-shadow: 6px 0 40px rgba(0,0,0,.75) !important;
  }
  /* Backdrop */
  body.gm-frontpage.gm-menu-open::before,
  body.home.gm-menu-open::before,
  body.gm-frontpage.navigation-active::before,
  body.home.navigation-active::before {
    content: '' !important;
    position: fixed !important; inset: 0 !important;
    background: rgba(0,0,0,.60) !important;
    z-index: 9997 !important;
  }
  /* Menü içi linkler */
  body.gm-frontpage .menu-primary-items,
  body.home .menu-primary-items { padding: 0 !important; }
  body.gm-frontpage .menu-primary-items li,
  body.home .menu-primary-items li { display: block !important; border-bottom: 1px solid var(--gm-line) !important; }
  body.gm-frontpage .menu-primary-items a,
  body.home .menu-primary-items a {
    display: block !important; padding: 14px 0 !important;
    color: var(--gm-white) !important; font-size: 15px !important;
    font-family: var(--gm-font-sans) !important; font-weight: 400 !important;
  }
  /* Toggle butonu z-index */
  #toggle-navigation { position: relative !important; z-index: 9999 !important; }
}


/* ════════════════════════════════════════════════════════════════
   GLASSMORPHISM — Ana sayfa kartları  Harvey.ai tarzı: sert, keskin
   Köşe yok, güçlü gölge, otoriter cam dokusu
   ════════════════════════════════════════════════════════════════ */

:root {
  --gm-glass-bg:         rgba(245,245,240,.030);
  --gm-glass-bg-lift:    rgba(245,245,240,.060);
  --gm-glass-bg-deep:    rgba(245,245,240,.012);
  --gm-glass-border:     rgba(245,245,240,.07);
  --gm-glass-border-hi:  rgba(245,245,240,.16);
  --gm-glass-border-top: rgba(245,245,240,.14);
  --gm-glass-blur:       blur(24px) saturate(1.15);
  --gm-glass-blur-sm:    blur(14px) saturate(1.08);
  --gm-glass-shadow:     0 1px 0 rgba(245,245,240,.06) inset,
                         0 18px 52px rgba(0,0,0,.75),
                         0 4px 14px rgba(0,0,0,.52);
  --gm-glass-shadow-sm:  0 1px 0 rgba(245,245,240,.05) inset,
                         0 8px 30px rgba(0,0,0,.65),
                         0 2px 7px rgba(0,0,0,.46);
  --gm-glass-shadow-hv:  0 1px 0 rgba(245,245,240,.10) inset,
                         0 28px 72px rgba(0,0,0,.82),
                         0 8px 22px rgba(0,0,0,.58);
}

/* ── Konu kartları — sharp glass panel ───────────────────────── */
.gm-topic-card {
  background:              var(--gm-glass-bg) !important;
  backdrop-filter:         var(--gm-glass-blur);
  -webkit-backdrop-filter: var(--gm-glass-blur);
  border:                  1px solid var(--gm-glass-border) !important;
  border-top:              1px solid var(--gm-glass-border-top) !important;
  border-radius:           0 !important;
  box-shadow:              var(--gm-glass-shadow-sm) !important;
  transition:              background .28s ease,
                           border-color .28s ease,
                           box-shadow .28s ease,
                           transform .28s ease !important;
}
.gm-topic-card:hover {
  background:              var(--gm-glass-bg-lift) !important;
  border-color:            var(--gm-glass-border-hi) !important;
  box-shadow:              var(--gm-glass-shadow-hv) !important;
  transform:               translateY(-3px) !important;
}

/* ── Blog yazı kartları ───────────────────────────────────────── */
.gm-post-card {
  background:              var(--gm-glass-bg) !important;
  backdrop-filter:         var(--gm-glass-blur);
  -webkit-backdrop-filter: var(--gm-glass-blur);
  border:                  1px solid var(--gm-glass-border) !important;
  border-top:              1px solid var(--gm-glass-border-top) !important;
  border-radius:           0 !important;
  box-shadow:              var(--gm-glass-shadow-sm) !important;
  transition:              background .28s ease,
                           border-color .28s ease,
                           box-shadow .28s ease,
                           transform .28s ease !important;
}
.gm-post-card:hover {
  background:              var(--gm-glass-bg-lift) !important;
  border-color:            var(--gm-glass-border-hi) !important;
  box-shadow:              var(--gm-glass-shadow-hv) !important;
  transform:               translateY(-3px) !important;
}

/* ── Bio kartı ────────────────────────────────────────────────── */
.gm-bio-card {
  background:              var(--gm-glass-bg) !important;
  backdrop-filter:         var(--gm-glass-blur);
  -webkit-backdrop-filter: var(--gm-glass-blur);
  border:                  1px solid var(--gm-glass-border) !important;
  border-top:              1px solid var(--gm-glass-border-top) !important;
  border-radius:           0 !important;
  box-shadow:              var(--gm-glass-shadow) !important;
}

/* Framework kartı da sharp glass olsun */
.gm-framework__card {
  background:              var(--gm-glass-bg) !important;
  backdrop-filter:         var(--gm-glass-blur);
  -webkit-backdrop-filter: var(--gm-glass-blur);
  border:                  1px solid var(--gm-glass-border) !important;
  border-top:              1px solid var(--gm-glass-border-top) !important;
  border-radius:           0 !important;
  box-shadow:              var(--gm-glass-shadow) !important;
}

/* ── Final CTA şeridi ─────────────────────────────────────────── */
.gm-final-cta {
  background:              rgba(245,245,240,.018) !important;
  backdrop-filter:         blur(28px) saturate(1.1);
  -webkit-backdrop-filter: blur(28px) saturate(1.1);
  border-top:              1px solid var(--gm-glass-border-top) !important;
  border-bottom:           1px solid var(--gm-glass-border) !important;
  border-radius:           0 !important;
  box-shadow:              0 -4px 28px rgba(0,0,0,.45), 0 4px 28px rgba(0,0,0,.45);
}

/* Hero eyebrow pill de sharp olsun */
.gm-hero__eyebrow {
  border-radius:           0 !important;
  backdrop-filter:         blur(12px);
  -webkit-backdrop-filter: blur(12px);
  box-shadow:              0 1px 0 rgba(255,255,255,.06) inset,
                           0 4px 16px rgba(0,0,0,.50);
}

/* ── @supports guard ─────────────────────────────────────────── */
@supports not (backdrop-filter: blur(1px)) {
  .gm-topic-card,
  .gm-post-card,
  .gm-bio-card,
  .gm-framework__card,
  .gm-final-cta {
    background: rgba(245,245,240,.06) !important;
  }
}
