/* =============================================================================
   Bitur Mega Menu Redesign — project-specific styles (bitur-menu-*)
   Preserves existing .toggle / data-click-* behavior; visual layer only.
   ============================================================================= */

:root {
  --bitur-menu-gap: clamp(10px, 1.1vw, 16px);
  --bitur-menu-radius: clamp(16px, 1.5vw, 24px);
  --bitur-menu-pad: clamp(14px, 1.4vw, 22px);
  --bitur-menu-arrow-size: clamp(42px, 2.6vw, 48px);
  --bitur-menu-arrow-icon: clamp(13px, 0.95vw, 15px);
  --bitur-menu-ink: #1a2332;
  --bitur-menu-muted: #5c6570;
  --bitur-menu-accent: #1bb1bc;
  --bitur-menu-accent-deep: #158a92;
  --bitur-menu-vip-a: #158a92;
  --bitur-menu-vip-b: #1bb1bc;
  --bitur-menu-vip-c: #6fd5dc;
  --bitur-menu-gold-a: #c9891f;
  --bitur-menu-gold-b: #f0c56a;
  --bitur-menu-gold-c: #e8a83a;
  --bitur-menu-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --bitur-menu-ease-out: cubic-bezier(0.16, 1, 0.3, 1);
}

/* ----- Panel shell ----- */
.bitur-menu-panel {
  --bitur-menu-gap: clamp(10px, 1.1vw, 16px);
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  grid-template-rows: repeat(6, minmax(0, 1fr));
  gap: var(--bitur-menu-gap);
  width: 100%;
  height: 100%;
  max-height: calc(100dvh - var(--header-height, 80px));
  padding: clamp(20px, 2.4vw, 40px);
  box-sizing: border-box;
  overflow: hidden;
}

/* ----- Cards ----- */
.bitur-menu-card {
  position: relative;
  isolation: isolate;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  overflow: hidden;
  border-radius: var(--bitur-menu-radius);
  padding: var(--bitur-menu-pad);
  text-decoration: none;
  color: #fff;
  opacity: 0;
  transform: translateY(18px) scale(0.985);
  transition:
    opacity 0.65s var(--bitur-menu-ease),
    transform 0.65s var(--bitur-menu-ease),
    box-shadow 0.35s ease;
  outline: none;
}

.bitur-menu-panel.toggle .bitur-menu-card,
.group\/item.toggle .bitur-menu-card {
  opacity: 1;
  transform: translateY(0) scale(1);
}

.bitur-menu-card:nth-child(1) { transition-delay: 0ms; }
.bitur-menu-card:nth-child(2) { transition-delay: 45ms; }
.bitur-menu-card:nth-child(3) { transition-delay: 90ms; }
.bitur-menu-card:nth-child(4) { transition-delay: 135ms; }
.bitur-menu-card:nth-child(5) { transition-delay: 180ms; }
.bitur-menu-card:nth-child(6) { transition-delay: 225ms; }
.bitur-menu-card:nth-child(7) { transition-delay: 270ms; }

.group\/item.toggle .bitur-menu-card:nth-child(1) { transition-delay: 420ms; }
.group\/item.toggle .bitur-menu-card:nth-child(2) { transition-delay: 470ms; }
.group\/item.toggle .bitur-menu-card:nth-child(3) { transition-delay: 520ms; }
.group\/item.toggle .bitur-menu-card:nth-child(4) { transition-delay: 570ms; }
.group\/item.toggle .bitur-menu-card:nth-child(5) { transition-delay: 620ms; }
.group\/item.toggle .bitur-menu-card:nth-child(6) { transition-delay: 670ms; }
.group\/item.toggle .bitur-menu-card:nth-child(7) { transition-delay: 720ms; }

.bitur-menu-card:focus-visible {
  box-shadow: 0 0 0 3px #fff, 0 0 0 6px var(--bitur-menu-accent);
  z-index: 5;
}

.bitur-menu-card-media {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.7s var(--bitur-menu-ease-out);
}

.bitur-menu-card:hover .bitur-menu-card-media,
.bitur-menu-card:focus-visible .bitur-menu-card-media {
  transform: scale(1.04);
}

.bitur-menu-card-shade {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(0deg, rgba(12, 18, 28, 0.72) 0%, rgba(12, 18, 28, 0.18) 42%, rgb(12 18 28 / 0%) 100%);
  transition: opacity 0.35s ease;
}

.bitur-menu-card:hover .bitur-menu-card-shade {
  opacity: 0.92;
}

.bitur-menu-card-body {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
}

.bitur-menu-card-title {
  margin: 0;
  font-size: clamp(1.05rem, 1.25vw, 1.4rem);
  font-weight: 550;
  letter-spacing: 0.01em;
  line-height: 1.25;
  color: #fff;
  text-shadow: 0 1px 8px rgba(0, 0, 0, 0.25);
}

.bitur-menu-card-arrow {
  --bitur-menu-mx: 0px;
  --bitur-menu-my: 0px;
  --bitur-menu-fx: 50%;
  --bitur-menu-fy: 50%;
  position: relative;
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: var(--bitur-menu-arrow-size);
  height: var(--bitur-menu-arrow-size);
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.28);
  background: rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(6px);
  overflow: hidden;
  transform: translate3d(var(--bitur-menu-mx), var(--bitur-menu-my), 0);
  transition: border-color 0.4s var(--bitur-menu-ease);
  will-change: transform;
}

.bitur-menu-card-arrow::before {
  content: "";
  position: absolute;
  z-index: 0;
  left: var(--bitur-menu-fx);
  top: var(--bitur-menu-fy);
  width: 0;
  height: 0;
  border-radius: 50%;
  background: var(--bitur-menu-accent);
  transform: translate(-50%, -50%);
  transition:
    width 0.55s cubic-bezier(0.22, 1, 0.36, 1),
    height 0.55s cubic-bezier(0.22, 1, 0.36, 1);
  pointer-events: none;
}

.bitur-menu-card-arrow svg {
  position: relative;
  z-index: 1;
  width: var(--bitur-menu-arrow-icon);
  height: var(--bitur-menu-arrow-icon);
  stroke: rgba(255, 255, 255, 0.9);
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
  fill: none;
  transition: stroke 0.35s var(--bitur-menu-ease);
}

.bitur-menu-card-arrow.is-bitur-filled,
.bitur-menu-card:focus-visible .bitur-menu-card-arrow {
  border-color: transparent;
}

.bitur-menu-card-arrow.is-bitur-filled::before,
.bitur-menu-card:focus-visible .bitur-menu-card-arrow::before {
  width: 340%;
  height: 340%;
}

.bitur-menu-card-arrow.is-bitur-filled svg,
.bitur-menu-card:focus-visible .bitur-menu-card-arrow svg {
  stroke: #fff;
}

/* ----- Grid placement (original composition) ----- */
.bitur-menu-card--about {
  grid-column: 1 / 7;
  grid-row: 1 / 5;
}

.bitur-menu-card--founder {
  grid-column: 7 / 13;
  grid-row: 1 / 3;
}

.bitur-menu-card--news {
  grid-column: 10 / 13;
  grid-row: 1 / 3;
}

.bitur-menu-card--mgmt {
  grid-column: 7 / 10;
  grid-row: 3 / 5;
}

.bitur-menu-card--quality {
  grid-column: 10 / 13;
  grid-row: 3 / 5;
}

.bitur-menu-card--sustain {
  grid-column: 1 / 4;
  grid-row: 5 / 7;
}

.bitur-menu-card--vip {
  grid-column: 4 / 13;
  grid-row: 5 / 7;
  justify-content: space-between;
  background-image: linear-gradient(135deg, var(--bitur-menu-vip-a) 0%, var(--bitur-menu-vip-b) 48%, var(--bitur-menu-vip-c) 100%);
}

.bitur-menu-card--vip .bitur-menu-card-shade {
  display: none;
}

.bitur-menu-card--vip .bitur-menu-card-body {
  align-items: flex-start;
}

.bitur-menu-card--vip .bitur-menu-card-arrow {
  border-color: rgba(255, 255, 255, 0.45);
  background: rgba(255, 255, 255, 0.14);
}

.bitur-menu-card--vip .bitur-menu-card-arrow::before {
  background: #fff;
}

.bitur-menu-card--vip .bitur-menu-card-arrow.is-bitur-filled,
.bitur-menu-card--vip:focus-visible .bitur-menu-card-arrow {
  border-color: transparent;
}

.bitur-menu-card--vip .bitur-menu-card-arrow.is-bitur-filled svg,
.bitur-menu-card--vip:focus-visible .bitur-menu-card-arrow svg {
  stroke: var(--bitur-menu-vip-a);
}

.bitur-menu-vip-logo {
  position: relative;
  z-index: 2;
  width: clamp(72px, 8vw, 118px);
  height: auto;
  object-fit: contain;
  margin-top: auto;
}

/* ----- VIP decorative line (redesigned path + draw) ----- */
.bitur-menu-vip-line {
  position: absolute;
  z-index: 1;
  top: 10%;
  right: -3%;
  width: 58%;
  height: auto;
  pointer-events: none;
  overflow: visible;
}

.bitur-menu-vip-line path {
  fill: none;
  stroke: rgba(255, 255, 255, 0.92);
  stroke-width: 18;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-dasharray: 920;
  stroke-dashoffset: 920;
  transition: stroke-dashoffset 1.35s var(--bitur-menu-ease-out);
  transition-delay: 0ms;
}

.group\/item.toggle .bitur-menu-card--vip .bitur-menu-vip-line path,
.bitur-menu-panel.toggle .bitur-menu-vip-line path {
  stroke-dashoffset: 0;
  transition-delay: 880ms;
}

.bitur-menu-vip-line-dot {
  fill: #fff;
  opacity: 0;
  transform-origin: center;
  transition:
    opacity 0.4s ease,
    transform 0.5s var(--bitur-menu-ease);
  transition-delay: 0ms;
}

.group\/item.toggle .bitur-menu-card--vip .bitur-menu-vip-line-dot,
.bitur-menu-panel.toggle .bitur-menu-vip-line-dot {
  opacity: 1;
  transition-delay: 2.1s;
}

/* Mobile VIP promo (left column) */
.field-menu .mb-0.mt-auto > a {
  position: relative;
  isolation: isolate;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  border-radius: var(--bitur-menu-radius) !important;
  background-image: linear-gradient(135deg, var(--bitur-menu-vip-a) 0%, var(--bitur-menu-vip-b) 48%, var(--bitur-menu-vip-c) 100%) !important;
  overflow: hidden;
  min-height: 140px;
  padding: 16px !important;
  text-decoration: none;
}

.field-menu .mb-0.mt-auto > a .bitur-menu-vip-line {
  position: absolute;
  top: 40%;
  right: -5%;
  width: 83%;
  height: auto;
  pointer-events: none;
}

@media (min-width: 768px) and (max-width: 1023px) {
  .field-menu .mb-0.mt-auto > a .bitur-menu-vip-line {
    top: 50%;
    right: -4%;
    width: 69%;
  }
}

.field-menu .mb-0.mt-auto > a .bitur-menu-vip-line path {
  fill: none;
  stroke: rgba(255, 255, 255, 0.92);
  stroke-width: 16;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-dasharray: 920;
  stroke-dashoffset: 920;
  transition: stroke-dashoffset 1.2s var(--bitur-menu-ease-out);
}

.group\/menu.toggle .field-menu .mb-0.mt-auto > a .bitur-menu-vip-line path,
.field-menu.group\/menu.toggle .mb-0.mt-auto > a .bitur-menu-vip-line path {
  stroke-dashoffset: 0;
  transition-delay: 700ms;
}

.field-menu .mb-0.mt-auto > a .bitur-menu-vip-line-dot {
  fill: #fff;
  opacity: 0;
  transition: opacity 0.4s ease;
}

.field-menu.group\/menu.toggle .mb-0.mt-auto > a .bitur-menu-vip-line-dot {
  opacity: 1;
  transition-delay: 1.85s;
}

/* Left nav: no overrides — original rounded-full pill styles remain */

/* Mobile left nav — footer-style stars + dividers */
@media (max-width: 1023px) {
  .field-menu [data-menu-trigger] {
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
  }

  .field-menu [data-menu-trigger] > a {
    min-height: 3.25rem;
    padding-top: 0.7rem;
    padding-bottom: 0.7rem;
  }

  .field-menu [data-menu-trigger] > a > svg {
    opacity: 1 !important;
    transform: none !important;
    fill: var(--bitur-menu-accent, #1bb1bc);
    flex-shrink: 0;
  }

  .field-menu [data-menu-trigger].toggle > a > svg {
    transform: rotate(90deg) !important;
  }

  .field-menu [data-menu-trigger] > a > .range-fs {
    transform: none !important;
  }

  .field-menu [data-menu-trigger] > .grid > .overflow-hidden > .py-4 {
    padding: 0.15rem 0.5rem 0.95rem 2.15rem;
  }

  .field-menu [data-menu-trigger] > .grid a.group\/link {
    display: block;
    padding: 0.35rem 0;
    opacity: 0.92;
  }

  .field-menu [data-menu-trigger] > .grid a.group\/link span {
    font-size: clamp(13px, 3.6vw, 15px);
    font-weight: 500;
    line-height: 1.45;
    color: #8b9097;
  }
}

/* ----- Reduced motion ----- */
@media (prefers-reduced-motion: reduce) {
  .bitur-menu-card,
  .bitur-menu-card-media,
  .bitur-menu-card-arrow,
  .bitur-menu-card-arrow::before,
  .bitur-menu-vip-line path,
  .bitur-menu-vip-line-dot {
    transition: none !important;
    animation: none !important;
  }

  .bitur-menu-card {
    opacity: 1;
    transform: none;
  }

  .bitur-menu-card-arrow {
    --bitur-menu-mx: 0px !important;
    --bitur-menu-my: 0px !important;
  }

  .bitur-menu-card-arrow.is-bitur-filled::before,
  .bitur-menu-card:focus-visible .bitur-menu-card-arrow::before {
    width: 340%;
    height: 340%;
    transition: none !important;
  }

  .bitur-menu-vip-line path,
  .field-menu.group\/menu.toggle .mb-0.mt-auto > a .bitur-menu-vip-line path {
    stroke-dashoffset: 0;
  }

  .bitur-menu-vip-line-dot {
    opacity: 1;
  }
}

/* ----- Tablet / laptop ----- */
@media (max-width: 1280px) and (min-width: 1024px) {
  .bitur-menu-panel {
    padding: 18px 20px;
    gap: 12px;
  }

  .bitur-menu-card-title {
    font-size: clamp(1rem, 1.15vw, 1.25rem);
  }
}

/* Desktop panels are hidden below lg; keep rules for completeness if reused */
@media (max-width: 1023px) {
  .bitur-menu-panel {
    position: relative;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: none;
    grid-auto-rows: minmax(140px, auto);
    max-height: none;
    height: auto;
    overflow: visible;
    padding: 12px 0 24px;
    gap: 12px;
  }

  .bitur-menu-card--about,
  .bitur-menu-card--founder,
  .bitur-menu-card--news,
  .bitur-menu-card--mgmt,
  .bitur-menu-card--quality,
  .bitur-menu-card--sustain,
  .bitur-menu-card--vip {
    grid-column: auto;
    grid-row: auto;
  }

  .bitur-menu-card--about {
    grid-column: 1 / -1;
    min-height: 200px;
  }

  .bitur-menu-card--vip {
    grid-column: 1 / -1;
    min-height: 160px;
  }

  .bitur-menu-card {
    min-height: 140px;
    opacity: 1;
    transform: none;
    border-radius: var(--bitur-menu-radius);
  }

  .bitur-menu-vip-line {
    width: 48%;
  }
}

@media (max-width: 640px) {
  .bitur-menu-panel {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .bitur-menu-card--about,
  .bitur-menu-card--vip,
  .bitur-menu-card--founder,
  .bitur-menu-card--news,
  .bitur-menu-card--mgmt,
  .bitur-menu-card--quality,
  .bitur-menu-card--sustain {
    grid-column: 1 / -1;
  }

  .bitur-menu-card {
    min-height: 128px;
  }

  .bitur-menu-card--about {
    min-height: 180px;
  }
}

/* =============================================================================
   Menu trigger — Gunerler-style MENÜ + 9-dot → 3-bar animation
   ============================================================================= */

/* Swap header sides: social left, menu right (logo stays center) */
.field-header > .container > .wrapper-side:first-child {
  order: 3;
  justify-content: flex-end;
  align-items: center;
  gap: clamp(16px, 2vw, 28px);
}

.field-header > .container > a {
  order: 2;
}

.field-header > .container > .wrapper-side:last-child {
  order: 1;
  justify-content: flex-start;
}

.bitur-member-login {
  display: inline-flex;
  align-items: center;
  height: var(--header-height, 80px);
  padding: 0;
  border: 0;
  background: transparent;
  font-size: 1.0625rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 2.8px;
  white-space: nowrap;
  text-decoration: none;
  color: #4a4a4a;
  text-transform: none;
  user-select: none;
}

.group\/header:not(.toggle):not(.scrolling) .bitur-member-login {
  color: var(--visible-menu-color, #fff);
}

@media (max-width: 1023px) {
  .bitur-member-login {
    display: none;
  }
}

.bitur-mobile-member-login {
  margin-top: 8px;
  margin-bottom: 12px;
}

.bitur-mobile-member-login__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 48px;
  padding: 12px 20px;
  border-radius: 12px;
  background: #1bb1bc;
  color: #fff;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.02em;
  text-decoration: none;
  text-align: center;
}

.bitur-mobile-member-login__btn:active {
  background: #179aa3;
}

.bitur-menu-trigger {
  --bitur-menu-trigger-dot: 3px;
  --bitur-menu-trigger-gap: 12px;
  --bitur-menu-trigger-size: 33px;
  --bitur-menu-trigger-ink: #4a4a4a;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: clamp(10px, 1.2vw, 18px);
  height: var(--header-height, 80px);
  width: auto;
  min-width: var(--bitur-menu-trigger-size);
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
  overflow: hidden;
  color: var(--bitur-menu-trigger-ink);
}

/* Hero / transparent header: match visible menu color */
.group\/header:not(.toggle):not(.scrolling) .bitur-menu-trigger {
  --bitur-menu-trigger-ink: var(--visible-menu-color, #fff);
}

.bitur-menu-trigger-label {
  font-size: 1.0625rem;
  font-weight: 700;
  letter-spacing: 2.8px;
  line-height: 1;
  text-transform: uppercase;
  color: currentColor;
  user-select: none;
}

.bitur-menu-trigger-grid {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, var(--bitur-menu-trigger-dot));
  gap: var(--bitur-menu-trigger-gap);
  width: var(--bitur-menu-trigger-size);
  height: var(--bitur-menu-trigger-size);
  flex-shrink: 0;
  transition: transform 0.3s ease;
}

.bitur-menu-trigger-dot {
  position: relative;
  width: var(--bitur-menu-trigger-dot);
  height: var(--bitur-menu-trigger-dot);
  border-radius: 9999px;
  background-color: currentColor;
  transform-origin: center;
  transition:
    width 0.3s ease,
    transform 0.3s ease,
    opacity 0.15s ease;
  transition-delay: 0ms;
}

/* Open state: 9 dots → 3 right-aligned bars (same color as MENÜ label) */
.bitur-menu-trigger.toggle .bitur-menu-trigger-grid {
  transform: translateY(5px);
}

.bitur-menu-trigger.toggle .bitur-menu-trigger-dot--a,
.bitur-menu-trigger.toggle .bitur-menu-trigger-dot--b,
.bitur-menu-trigger.toggle .bitur-menu-trigger-dot--c {
  transition-delay: 500ms;
}

.bitur-menu-trigger.toggle .bitur-menu-trigger-dot--a {
  width: 33px;
  transform: translateY(0);
}

.bitur-menu-trigger.toggle .bitur-menu-trigger-dot--b {
  width: 20px;
  transform: translateY(10px);
}

.bitur-menu-trigger.toggle .bitur-menu-trigger-dot--c {
  width: 5px;
  transform: translateY(20px);
}

.bitur-menu-trigger.toggle .bitur-menu-trigger-dot--fade {
  transform: scale(0);
  transition-duration: 150ms;
}

.bitur-menu-trigger.toggle .bitur-menu-trigger-dot--fade:nth-child(4) { transition-delay: 50ms; }
.bitur-menu-trigger.toggle .bitur-menu-trigger-dot--fade:nth-child(5) { transition-delay: 100ms; }
.bitur-menu-trigger.toggle .bitur-menu-trigger-dot--fade:nth-child(6) { transition-delay: 150ms; }
.bitur-menu-trigger.toggle .bitur-menu-trigger-dot--fade:nth-child(7) { transition-delay: 200ms; }
.bitur-menu-trigger.toggle .bitur-menu-trigger-dot--fade:nth-child(8) { transition-delay: 250ms; }
.bitur-menu-trigger.toggle .bitur-menu-trigger-dot--fade:nth-child(9) { transition-delay: 300ms; }

@media (max-width: 1279px) {
  .bitur-menu-trigger-label {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .bitur-menu-trigger-grid,
  .bitur-menu-trigger-dot {
    transition: none !important;
  }
}

/* =============================================================================
   Desktop panels — fit the real viewport (not a hardcoded 1200px cap).
   Inactive siblings stay fully hidden so MICE/Medya strokes and the
   Hizmetlerimiz circle cannot paint over Kurumsal (1920×1200 / DPI scale).
   ============================================================================= */

@media (min-width: 1024px) {
  /* No clipping here — the Hizmetlerimiz circle has to reach the viewport
     edge. Bleed is already contained by .field-menu's own overflow-clip. */
  .field-menu [data-desktop-menu-items] {
    overflow: visible;
    isolation: isolate;
  }

  .field-menu [data-desktop-menu-items] > [data-click-target] {
    max-height: none;
    height: auto;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin-top: 0;
    margin-bottom: 0;
    overflow: hidden;
  }

  /* Hizmetlerimiz circle + Referanslar fan-out paint outside their cell */
  .field-menu [data-desktop-menu-items] > [data-click-target="menu-item-1"],
  .field-menu [data-desktop-menu-items] > [data-click-target="menu-item-3"] {
    overflow: visible;
  }

  .field-menu [data-desktop-menu-items] > [data-click-target]:not(.toggle) {
    opacity: 0;
    pointer-events: none;
    z-index: 0;
    /* Instant hide so panels don't overlap — do not use visibility:hidden
       (it skips child transitions and blocks lazy image decode). */
    transition-property: opacity;
    transition-duration: 0s;
  }

  .field-menu [data-desktop-menu-items] > [data-click-target].toggle {
    opacity: 1;
    z-index: 1;
    transition-property: opacity;
    transition-duration: 0s;
  }

  .bitur-menu-panel {
    max-height: none;
    height: 100%;
    overflow: hidden;
  }

}

/* =============================================================================
   Hizmetlerimiz — circular overflowing preview (Gunerler-inspired)
   Keeps data-hover-triggers / data-hover-targets image swap intact.
   ============================================================================= */

@media (min-width: 1024px) {
  .field-menu [data-click-target="menu-item-1"] {
    display: block;
    grid-template-columns: none;
    overflow: visible;
  }

  .field-menu [data-click-target="menu-item-1"] > [data-hover-triggers="menu-list-1"] {
    position: relative;
    z-index: 3;
    isolation: isolate;
    max-width: min(460px, 42%);
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-right: 1.5rem;
    box-sizing: border-box;
    background: linear-gradient(
      90deg,
      rgb(245 245 245 / 96%) 0%,
      rgb(245 245 245 / 88%) 62%,
      rgb(245 245 245 / 0%) 100%
    );
  }

  .field-menu [data-click-target="menu-item-1"] > [data-hover-targets="menu-list-1"] {
    position: absolute;
    top: 0;
    /* Push past the container gutter (and any leftover beside the 1920px
       container) so the circle always bleeds off the right edge. */
    right: calc(
      -1 * max(120px, var(--gap) + max(0px, (100vw - 1920px) / 2))
    );
    bottom: auto;
    left: auto;
    width: min(110vh, 1280px);
    height: min(110vh, 1280px);
    max-width: none;
    margin: 0;
    padding: 0;
    border-radius: 50%;
    overflow: hidden;
    box-shadow: none;
    z-index: 1;
    pointer-events: none;
    --range-1: 0px;
    transform-origin: center;
  }

  .field-menu [data-click-target="menu-item-1"] > [data-hover-targets="menu-list-1"] > img {
    border-radius: 0;
  }
}

@media (min-width: 1024px) and (max-width: 1400px) {
  .field-menu [data-click-target="menu-item-1"] > [data-hover-targets="menu-list-1"] {
    top: 4%;
    right: -360px;
    width: min(100vh, 1080px);
    height: min(100vh, 1080px);
  }

  .field-menu [data-click-target="menu-item-1"] > [data-hover-triggers="menu-list-1"] {
    max-width: min(400px, 48%);
  }
}

@media (min-width: 1024px) and (max-height: 900px) {
  .bitur-menu-panel {
    padding: 16px 18px;
    gap: 10px;
  }
}

/* =============================================================================
   MICE stage redesign — bitur-menu-mice-*
   Preserves data-hover-triggers / data-hover-targets + .toggle pair switching
   ============================================================================= */

.bitur-menu-mice-panel {
  --bitur-menu-mice-accent: var(--bitur-menu-accent, #1bb1bc);
  --bitur-menu-mice-ink: #2a313c;
  --bitur-menu-mice-muted: #9aa3ad;
  --bitur-menu-mice-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --bitur-menu-mice-radius: 18px;
  overflow: hidden;
}

.bitur-menu-mice-stage {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 1.35fr);
  align-items: center;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
}

.bitur-menu-mice-line {
  --bitur-menu-mice-line-len: 1080;
  position: absolute;
  left: 12%;
  right: -3%;
  bottom: -6%;
  top: 12%;
  width: auto;
  height: auto;
  z-index: 0;
  pointer-events: none;
  overflow: visible;
  color: var(--bitur-menu-mice-accent, #1bb1bc);
  /* Same end-fade language as Medya line (transparent → solid → transparent) */
  -webkit-mask-image: linear-gradient(
    90deg,
    transparent 5%,
    #000 12%,
    #000 88%,
    transparent 95%
  );
  mask-image: linear-gradient(
    90deg,
    transparent 5%,
    #000 12%,
    #000 88%,
    transparent 95%
  );
  -webkit-mask-mode: alpha;
  mask-mode: alpha;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

.bitur-menu-mice-line path {
  fill: none;
  stroke: url(#bitur-menu-mice-line-fade);
  stroke-width: 28;
  stroke-linecap: round;
  stroke-linejoin: round;
  /* Length is measured in JS; fallback keeps start→end draw intact */
  stroke-dasharray: var(--bitur-menu-mice-line-len);
  stroke-dashoffset: var(--bitur-menu-mice-line-len);
  transition: stroke-dashoffset 1.35s var(--bitur-menu-ease-out);
  transition-delay: 0ms;
}

/* Open: draw from path start after a short delay (same model as VIP line) */
.bitur-menu-mice-panel.toggle .bitur-menu-mice-line path,
.group\/item.toggle.bitur-menu-mice-panel .bitur-menu-mice-line path {
  stroke-dashoffset: 0;
  transition-delay: 480ms;
}

.bitur-menu-mice-copy {
  position: relative;
  z-index: 3;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: clamp(10px, 1.2vw, 18px);
  max-width: 420px;
  padding-left: clamp(12px, 1.5vw, 22px);
  opacity: 0;
  transform: translateX(-18px);
  transition:
    opacity 0.65s var(--bitur-menu-mice-ease),
    transform 0.65s var(--bitur-menu-mice-ease);
}

.bitur-menu-mice-panel.toggle .bitur-menu-mice-copy,
.group\/item.toggle.bitur-menu-mice-panel .bitur-menu-mice-copy {
  opacity: 1;
  transform: translateX(0);
  transition-delay: 320ms;
}

.bitur-menu-mice-item {
  position: relative;
  display: block;
  padding: 0.35em 0;
  text-decoration: none;
  outline: none;
  color: var(--bitur-menu-mice-muted);
  transition:
    color 0.3s ease,
    filter 0.3s ease;
}

.bitur-menu-mice-item-label {
  display: block;
  font-size: clamp(1.35rem, 2.4vw, 2.35rem);
  font-weight: 500;
  letter-spacing: -0.02em;
  line-height: 1.15;
  color: inherit;
  transition: color 0.3s ease, filter 0.3s ease;
}

/* Sibling fade on hover/focus — same language as Hizmetlerimiz list */
.bitur-menu-mice-copy:hover .bitur-menu-mice-item:not(:hover):not(:focus-visible),
.bitur-menu-mice-copy:focus-within .bitur-menu-mice-item:not(:hover):not(:focus-visible) {
  color: #d0d0d0;
  filter: blur(1px);
}

/* Active / hovered title — only on hover or focus, never a default selected item */
.bitur-menu-mice-item:hover,
.bitur-menu-mice-item:focus-visible {
  color: var(--bitur-menu-mice-accent);
  filter: none;
}

/* Per-pair composition variants — intentional, not mirrored clones */
.bitur-menu-mice-pair:nth-child(2).toggle .bitur-menu-mice-card--a {
  transform: translate3d(-10px, 12px, 0) rotate(-2deg) scale(1.02);
}

.bitur-menu-mice-pair:nth-child(2).toggle .bitur-menu-mice-card--b {
  transform: translate3d(14px, -8px, 0) rotate(3deg) scale(0.98);
}

.bitur-menu-mice-pair:nth-child(3).toggle .bitur-menu-mice-card--a {
  transform: translate3d(8px, 18px, 0) rotate(-6deg) scale(0.98);
}

.bitur-menu-mice-pair:nth-child(3).toggle .bitur-menu-mice-card--b {
  transform: translate3d(-6px, -14px, 0) rotate(8deg) scale(1.03);
}

.bitur-menu-mice-item:focus-visible {
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--bitur-menu-mice-accent) 35%, transparent);
  border-radius: 8px;
}

.bitur-menu-mice-frames {
  position: relative;
  z-index: 2;
  width: 100%;
  height: min(100%, 640px);
  min-height: 420px;
  overflow: visible;
  opacity: 0;
  transform: scale(0.97);
  transition:
    opacity 0.7s var(--bitur-menu-mice-ease),
    transform 0.7s var(--bitur-menu-mice-ease);
  pointer-events: none;
}

.bitur-menu-mice-panel.toggle .bitur-menu-mice-frames,
.group\/item.toggle.bitur-menu-mice-panel .bitur-menu-mice-frames {
  opacity: 1;
  transform: scale(1);
  transition-delay: 380ms;
}

.bitur-menu-mice-pair {
  position: absolute;
  inset: 0;
}

.bitur-menu-mice-card {
  position: absolute;
  display: block;
  object-fit: cover;
  border-radius: var(--bitur-menu-mice-radius);
  box-shadow:
    0 18px 40px rgba(26, 35, 50, 0.14),
    0 2px 8px rgba(26, 35, 50, 0.06);
  opacity: 0;
  will-change: transform, opacity;
  transition:
    opacity 0.55s var(--bitur-menu-mice-ease),
    transform 0.7s var(--bitur-menu-mice-ease);
}

/* Hold the fade until the bitmap is decoded — otherwise the swap is a hard pop */
.bitur-menu-mice-card:not(.is-bitur-decoded) {
  opacity: 0 !important;
}

.bitur-menu-mice-card--a {
  top: 6%;
  right: 6%;
  width: clamp(168px, 20vw, 248px);
  aspect-ratio: 3 / 4;
  height: auto;
  transform: translate3d(36px, -28px, 0) rotate(-8deg) scale(0.92);
}

.bitur-menu-mice-card--b {
  left: 4%;
  bottom: 8%;
  width: clamp(150px, 17vw, 210px);
  aspect-ratio: 4 / 5;
  height: auto;
  transform: translate3d(-28px, 40px, 0) rotate(7deg) scale(0.9);
}

.bitur-menu-mice-pair.toggle .bitur-menu-mice-card--a {
  opacity: 1;
  transform: translate3d(0, 0, 0) rotate(-4deg) scale(1);
  transition-delay: 40ms;
}

.bitur-menu-mice-pair.toggle .bitur-menu-mice-card--b {
  opacity: 1;
  transform: translate3d(0, 0, 0) rotate(5deg) scale(1);
  transition-delay: 120ms;
}

@media (max-width: 1280px) and (min-width: 1024px) {
  .bitur-menu-mice-stage {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
  }

  .bitur-menu-mice-card--a {
    width: clamp(150px, 18vw, 210px);
  }

  .bitur-menu-mice-card--b {
    width: clamp(132px, 15vw, 180px);
  }
}

@media (max-width: 1023px) {
  .bitur-menu-mice-panel {
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }

  .bitur-menu-mice-stage {
    display: flex;
    flex-direction: column;
    gap: 18px;
    height: auto;
    min-height: 0;
    padding: 4px 0 28px;
  }

  .bitur-menu-mice-line {
    display: none;
  }

  .bitur-menu-mice-copy,
  .bitur-menu-mice-frames {
    opacity: 1;
    transform: none;
    max-width: none;
    padding-left: 4px;
  }

  .bitur-menu-mice-item-label {
    font-size: clamp(1.2rem, 5.2vw, 1.65rem);
  }

  .bitur-menu-mice-frames {
    position: relative;
    order: -1;
    min-height: 200px;
    height: min(42vw, 220px);
  }

  .bitur-menu-mice-card--a {
    top: 4%;
    right: 10%;
    width: min(46%, 156px);
    transform: translate3d(16px, -10px, 0) rotate(-5deg) scale(0.94);
  }

  .bitur-menu-mice-card--b {
    left: 8%;
    bottom: 4%;
    width: min(40%, 136px);
    transform: translate3d(-12px, 16px, 0) rotate(4deg) scale(0.92);
  }

  .bitur-menu-mice-pair.toggle .bitur-menu-mice-card--a {
    transform: translate3d(0, 0, 0) rotate(-3deg) scale(1);
  }

  .bitur-menu-mice-pair.toggle .bitur-menu-mice-card--b {
    transform: translate3d(0, 0, 0) rotate(4deg) scale(1);
  }

  .bitur-menu-mice-pair:nth-child(2).toggle .bitur-menu-mice-card--a,
  .bitur-menu-mice-pair:nth-child(2).toggle .bitur-menu-mice-card--b,
  .bitur-menu-mice-pair:nth-child(3).toggle .bitur-menu-mice-card--a,
  .bitur-menu-mice-pair:nth-child(3).toggle .bitur-menu-mice-card--b {
    /* Keep mobile composition compact; skip desktop offsets */
    transform: translate3d(0, 0, 0) rotate(-3deg) scale(1);
  }

  .bitur-menu-mice-pair:nth-child(2).toggle .bitur-menu-mice-card--b,
  .bitur-menu-mice-pair:nth-child(3).toggle .bitur-menu-mice-card--b {
    transform: translate3d(0, 0, 0) rotate(4deg) scale(1);
  }
}

@media (prefers-reduced-motion: reduce) {
  .bitur-menu-mice-line,
  .bitur-menu-mice-line path,
  .bitur-menu-mice-copy,
  .bitur-menu-mice-frames,
  .bitur-menu-mice-item {
    transition: none !important;
  }

  .bitur-menu-mice-line path {
    stroke-dashoffset: 0;
  }
}

/* =============================================================================
   Referanslar gallery redesign — bitur-menu-ref-*
   Full-bleed 4-col gallery; neat deck stack with controlled horizontal expand
   ============================================================================= */

.bitur-menu-ref-panel {
  --bitur-menu-ref-accent: var(--bitur-menu-accent, #1bb1bc);
  --bitur-menu-ref-ink: #2a313c;
  --bitur-menu-ref-muted: #5c6570;
  --bitur-menu-ref-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --bitur-menu-ref-radius: 18px;
  --bitur-menu-ref-gap-y: clamp(32px, 3vw, 48px);
  --bitur-menu-ref-gap-x: clamp(40px, 4.2vw, 72px);
}

.bitur-menu-ref-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--bitur-menu-ref-gap-y) var(--bitur-menu-ref-gap-x);
  align-content: center;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: clamp(12px, 1.5vw, 28px) clamp(8px, 1.2vw, 20px) clamp(24px, 2.5vw, 40px);
  box-sizing: border-box;
}

.bitur-menu-ref-item {
  --bitur-menu-ref-i: 0;
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  width: 100%;
  text-decoration: none;
  color: inherit;
  outline: none;
  opacity: 0;
  transform: translateY(16px);
  transition:
    opacity 0.65s var(--bitur-menu-ref-ease),
    transform 0.65s var(--bitur-menu-ref-ease);
  transition-delay: calc(420ms + var(--bitur-menu-ref-i) * 45ms);
}

.bitur-menu-ref-panel.toggle .bitur-menu-ref-item,
.group\/item.toggle.bitur-menu-ref-panel .bitur-menu-ref-item {
  opacity: 1;
  transform: translateY(0);
}

.bitur-menu-ref-item:focus-visible {
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--bitur-menu-ref-accent) 35%, transparent);
  border-radius: 14px;
}

/* Leave side room inside each cell so expanded layers don't hit neighbors */
.bitur-menu-ref-stack {
  position: relative;
  width: 78%;
  max-width: 240px;
  margin: 0 auto;
  aspect-ratio: 4 / 5;
  isolation: isolate;
  overflow: visible;
}

.bitur-menu-ref-card-main,
.bitur-menu-ref-card-layer {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: var(--bitur-menu-ref-radius);
  display: block;
  will-change: transform, opacity;
  transition:
    transform 0.5s var(--bitur-menu-ref-ease),
    opacity 0.4s ease,
    box-shadow 0.4s ease;
}

/* Neat deck at rest — slight vertical offset, almost aligned */
.bitur-menu-ref-card-layer--a {
  z-index: 1;
  opacity: 0.88;
  transform: translate3d(0, 0, 0) rotate(-1.5deg) scale(0.97);
  box-shadow: 0 6px 16px rgba(26, 35, 50, 0.1);
}

.bitur-menu-ref-card-layer--b {
  z-index: 2;
  opacity: 0.94;
  transform: translate3d(0, 0, 0) rotate(1.5deg) scale(0.985);
  box-shadow: 0 8px 18px rgba(26, 35, 50, 0.12);
}

.bitur-menu-ref-card-main {
  z-index: 3;
  box-shadow:
    0 12px 28px rgba(26, 35, 50, 0.14),
    0 2px 6px rgba(26, 35, 50, 0.05);
  transform: translate3d(0, 0, 0) scale(1);
}

/* Controlled expand — kept within the cell breathing room */
.bitur-menu-ref-item:hover .bitur-menu-ref-card-layer--a,
.bitur-menu-ref-item:focus-visible .bitur-menu-ref-card-layer--a,
.bitur-menu-ref-item.is-bitur-ref-active .bitur-menu-ref-card-layer--a {
  opacity: 1;
  transform: translate3d(-11%, -2%, 0) rotate(-5deg) scale(0.96);
}

.bitur-menu-ref-item:hover .bitur-menu-ref-card-layer--b,
.bitur-menu-ref-item:focus-visible .bitur-menu-ref-card-layer--b,
.bitur-menu-ref-item.is-bitur-ref-active .bitur-menu-ref-card-layer--b {
  opacity: 1;
  transform: translate3d(11%, 2%, 0) rotate(5deg) scale(0.96);
}

.bitur-menu-ref-item:hover .bitur-menu-ref-card-main,
.bitur-menu-ref-item:focus-visible .bitur-menu-ref-card-main,
.bitur-menu-ref-item.is-bitur-ref-active .bitur-menu-ref-card-main {
  transform: translate3d(0, -4px, 0) scale(1.02);
  box-shadow:
    0 18px 36px rgba(26, 35, 50, 0.18),
    0 3px 8px rgba(26, 35, 50, 0.07);
}

.bitur-menu-ref-title {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
  text-align: center;
  font-size: clamp(1.2rem, 1.55vw, 1.55rem);
  font-weight: 500;
  letter-spacing: -0.02em;
  line-height: 1.2;
  color: var(--bitur-menu-ref-ink);
  transition: color 0.3s ease;
}

.bitur-menu-ref-item:hover .bitur-menu-ref-title,
.bitur-menu-ref-item:focus-visible .bitur-menu-ref-title,
.bitur-menu-ref-item.is-bitur-ref-active .bitur-menu-ref-title {
  color: var(--bitur-menu-ref-accent);
}

@media (max-width: 1280px) and (min-width: 1024px) {
  .bitur-menu-ref-grid {
    gap: 28px 36px;
  }

  .bitur-menu-ref-stack {
    width: 82%;
    max-width: 200px;
  }

  .bitur-menu-ref-title {
    font-size: clamp(1.1rem, 1.4vw, 1.35rem);
  }
}

@media (max-width: 1023px) {
  .bitur-menu-ref-panel {
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }

  .bitur-menu-ref-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px 28px;
    max-width: none;
    padding: 8px 8px 28px;
  }

  .bitur-menu-ref-item {
    opacity: 1;
    transform: none;
    transition-delay: 0ms;
  }

  .bitur-menu-ref-stack {
    width: 72%;
    max-width: 180px;
  }

  .bitur-menu-ref-title {
    font-size: clamp(1.15rem, 3.8vw, 1.4rem);
  }

  .bitur-menu-ref-item:hover .bitur-menu-ref-card-layer--a,
  .bitur-menu-ref-item:focus-visible .bitur-menu-ref-card-layer--a,
  .bitur-menu-ref-item.is-bitur-ref-active .bitur-menu-ref-card-layer--a {
    transform: translate3d(-9%, -1%, 0) rotate(-4deg) scale(0.97);
  }

  .bitur-menu-ref-item:hover .bitur-menu-ref-card-layer--b,
  .bitur-menu-ref-item:focus-visible .bitur-menu-ref-card-layer--b,
  .bitur-menu-ref-item.is-bitur-ref-active .bitur-menu-ref-card-layer--b {
    transform: translate3d(9%, 1%, 0) rotate(4deg) scale(0.97);
  }
}

@media (max-width: 479px) {
  .bitur-menu-ref-grid {
    gap: 20px 12px;
    padding: 4px 4px 24px;
  }

  .bitur-menu-ref-title {
    font-size: 1.1rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  /* Keep hover fan-out; only skip the panel-open stagger */
  .bitur-menu-ref-item {
    opacity: 1;
    transform: none;
    transition-delay: 0ms;
  }

  .bitur-menu-ref-title {
    transition: color 0.2s ease;
  }
}

/* Otel Bölgeleri panel — same gallery, 9 items fit in two rows */
.bitur-menu-region-panel {
  --bitur-menu-ref-gap-y: clamp(24px, 2.4vw, 40px);
  --bitur-menu-ref-gap-x: clamp(24px, 2.8vw, 48px);
}

.bitur-menu-region-panel .bitur-menu-ref-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.bitur-menu-region-panel .bitur-menu-ref-stack {
  width: 82%;
  max-width: 190px;
}

.bitur-menu-region-panel .bitur-menu-ref-title {
  font-size: clamp(1rem, 1.15vw, 1.25rem);
}

@media (max-width: 1280px) and (min-width: 1024px) {
  .bitur-menu-region-panel .bitur-menu-ref-stack {
    max-width: 150px;
  }

  .bitur-menu-region-panel .bitur-menu-ref-title {
    font-size: clamp(0.95rem, 1.1vw, 1.1rem);
  }
}

@media (max-width: 1023px) {
  .bitur-menu-region-panel .bitur-menu-ref-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .bitur-menu-region-panel .bitur-menu-ref-stack {
    width: 72%;
    max-width: 180px;
  }

  .bitur-menu-region-panel .bitur-menu-ref-title {
    font-size: clamp(1.05rem, 3.4vw, 1.3rem);
  }
}

/* =============================================================================
   Medya stage redesign — bitur-menu-media-*
   Preserves data-hover-triggers/targets + .toggle card switching
   Differentiated: copy left / visual right, new sweep line, ghost layer
   ============================================================================= */

.bitur-menu-media-panel {
  --bitur-menu-media-accent: var(--bitur-menu-accent, #1bb1bc);
  --bitur-menu-media-ink: #2a313c;
  --bitur-menu-media-muted: #8a93a0;
  --bitur-menu-media-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --bitur-menu-media-radius: 22px;
  --bitur-menu-media-line-len: 1680;
  overflow: hidden;
}

.bitur-menu-media-stage {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: clamp(32px, 3.5vw, 56px);
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  padding: clamp(8px, 1vw, 20px) clamp(8px, 1.5vw, 28px);
}

/* Sweep line — redesigned path (not the old vertical loop), end fades like Medya */
.bitur-menu-media-line {
  position: absolute;
  left: 8%;
  top: 2%;
  bottom: 2%;
  width: min(42%, 380px);
  height: auto;
  z-index: 0;
  pointer-events: none;
  overflow: visible;
  color: var(--bitur-menu-media-accent);
  -webkit-mask-image: linear-gradient(0deg, transparent 4%, #000 11%, #000 89%, transparent 96%);
  mask-image: linear-gradient(0deg, transparent 4%, #000 11%, #000 89%, transparent 96%);
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

.bitur-menu-media-line path {
  fill: none;
  stroke: url(#bitur-menu-media-line-fade);
  stroke-width: 34;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-dasharray: var(--bitur-menu-media-line-len);
  stroke-dashoffset: var(--bitur-menu-media-line-len);
  transition: stroke-dashoffset 1.4s var(--bitur-menu-ease-out);
  transition-delay: 0ms;
}

.bitur-menu-media-panel.toggle .bitur-menu-media-line path,
.group\/item.toggle.bitur-menu-media-panel .bitur-menu-media-line path {
  stroke-dashoffset: 0;
  transition-delay: 420ms;
}

.bitur-menu-media-copy {
  position: relative;
  z-index: 3;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: clamp(4px, 0.6vw, 10px);
  max-width: 420px;
  flex: 0 1 auto;
  opacity: 0;
  transform: translateY(12px);
  transition:
    opacity 0.65s var(--bitur-menu-media-ease),
    transform 0.65s var(--bitur-menu-media-ease);
}

.bitur-menu-media-panel.toggle .bitur-menu-media-copy,
.group\/item.toggle.bitur-menu-media-panel .bitur-menu-media-copy {
  opacity: 1;
  transform: translateY(0);
  transition-delay: 320ms;
}

/* Title hover — same language as original Medya / Hizmetlerimiz */
.bitur-menu-media-item {
  position: relative;
  display: block;
  padding: 0.35em 0;
  text-decoration: none;
  outline: none;
  color: #707070;
  transition: color 0.3s ease, filter 0.3s ease;
}

.bitur-menu-media-item-label {
  display: block;
  font-size: clamp(1.35rem, 2.2vw, 2rem);
  font-weight: 500;
  letter-spacing: -0.02em;
  line-height: 1.2;
  color: inherit;
  transition: color 0.3s ease, filter 0.3s ease;
}

.bitur-menu-media-copy:hover .bitur-menu-media-item:not(:hover):not(:focus-visible),
.bitur-menu-media-copy:focus-within .bitur-menu-media-item:not(:hover):not(:focus-visible) {
  color: #d0d0d0;
  filter: blur(1px);
}

.bitur-menu-media-item:hover,
.bitur-menu-media-item:focus-visible {
  color: var(--bitur-menu-media-accent);
  filter: none;
}

.bitur-menu-media-item:focus-visible {
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--bitur-menu-media-accent) 35%, transparent);
  border-radius: 8px;
}

.bitur-menu-media-frames {
  position: relative;
  z-index: 2;
  order: -1;
  flex: 0 0 auto;
  width: min(34vw, 340px);
  max-width: 340px;
  aspect-ratio: 1 / 1;
  margin: 0;
  opacity: 0;
  transform: translateY(16px) scale(0.96);
  transition:
    opacity 0.7s var(--bitur-menu-media-ease),
    transform 0.7s var(--bitur-menu-media-ease);
  pointer-events: none;
}

.bitur-menu-media-panel.toggle .bitur-menu-media-frames,
.group\/item.toggle.bitur-menu-media-panel .bitur-menu-media-frames {
  opacity: 1;
  transform: translateY(0) scale(1);
  transition-delay: 380ms;
}

.bitur-menu-media-card-set {
  position: absolute;
  inset: 8% 6% 8% 10%;
}

.bitur-menu-media-card-ghost {
  position: absolute;
  inset: 0;
  border-radius: var(--bitur-menu-media-radius);
  background: color-mix(in srgb, var(--bitur-menu-media-accent) 22%, #e8eef0);
  opacity: 0;
  transform: translate3d(10%, 8%, 0) rotate(8deg) scale(0.94);
  transition:
    opacity 0.5s var(--bitur-menu-media-ease),
    transform 0.65s var(--bitur-menu-media-ease);
  z-index: 0;
}

.bitur-menu-media-card {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: var(--bitur-menu-media-radius);
  display: block;
  z-index: 1;
  opacity: 0;
  box-shadow:
    0 18px 40px rgba(26, 35, 50, 0.14),
    0 2px 8px rgba(26, 35, 50, 0.05);
  transform: translate3d(0, 28px, 0) rotate(4deg) scale(0.92);
  transition:
    opacity 0.5s var(--bitur-menu-media-ease),
    transform 0.65s var(--bitur-menu-media-ease),
    box-shadow 0.45s ease;
}

.bitur-menu-media-card-set.toggle .bitur-menu-media-card-ghost {
  opacity: 1;
  transform: translate3d(12%, 10%, 0) rotate(9deg) scale(0.96);
}

.bitur-menu-media-card-set.toggle .bitur-menu-media-card {
  opacity: 1;
  transform: translate3d(0, 0, 0) rotate(5deg) scale(1);
  box-shadow:
    0 24px 48px rgba(26, 35, 50, 0.18),
    0 4px 12px rgba(26, 35, 50, 0.06);
}

/* Per-item composition — intentional, not identical */
.bitur-menu-media-card-set:nth-child(2).toggle .bitur-menu-media-card {
  transform: translate3d(-6px, -8px, 0) rotate(-3deg) scale(1.02);
}

.bitur-menu-media-card-set:nth-child(2).toggle .bitur-menu-media-card-ghost {
  transform: translate3d(-14%, 8%, 0) rotate(-7deg) scale(0.95);
  background: color-mix(in srgb, var(--bitur-menu-media-accent) 12%, #eef1f4);
}

.bitur-menu-media-card-set:nth-child(3).toggle .bitur-menu-media-card {
  transform: translate3d(8px, 4px, 0) rotate(7deg) scale(1.015);
}

.bitur-menu-media-card-set:nth-child(3).toggle .bitur-menu-media-card-ghost {
  transform: translate3d(10%, -8%, 0) rotate(4deg) scale(0.94);
  background: #e8eaed;
}

@media (max-width: 1280px) and (min-width: 1024px) {
  .bitur-menu-media-stage {
    gap: 28px;
  }

  .bitur-menu-media-frames {
    width: min(32vw, 300px);
    max-width: 300px;
  }

  .bitur-menu-media-item-label {
    font-size: clamp(1.25rem, 2vw, 1.75rem);
  }
}

@media (max-width: 1023px) {
  .bitur-menu-media-panel {
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }

  .bitur-menu-media-stage {
    flex-direction: column;
    gap: 20px;
    height: auto;
    padding: 8px 4px 28px;
  }

  .bitur-menu-media-line {
    display: none;
  }

  .bitur-menu-media-copy,
  .bitur-menu-media-frames {
    opacity: 1;
    transform: none;
    max-width: none;
    order: 0;
  }

  .bitur-menu-media-frames {
    order: -1;
    width: min(72%, 260px);
    margin: 0 auto;
    aspect-ratio: 1 / 1;
  }

  .bitur-menu-media-copy {
    align-items: stretch;
    width: 100%;
  }

  .bitur-menu-media-item-label {
    font-size: clamp(1.25rem, 5vw, 1.7rem);
  }

  .bitur-menu-media-card-set.toggle .bitur-menu-media-card {
    transform: translate3d(0, 0, 0) rotate(3deg) scale(1);
  }

  .bitur-menu-media-card-set:nth-child(2).toggle .bitur-menu-media-card,
  .bitur-menu-media-card-set:nth-child(3).toggle .bitur-menu-media-card {
    transform: translate3d(0, 0, 0) rotate(-2deg) scale(1);
  }
}

@media (prefers-reduced-motion: reduce) {
  .bitur-menu-media-line path,
  .bitur-menu-media-copy,
  .bitur-menu-media-frames,
  .bitur-menu-media-item {
    transition: none !important;
  }

  .bitur-menu-media-line path {
    stroke-dashoffset: 0;
  }
}
