/* =========================================================
   V Kampüs — mobil düzen (≤ 900 px). Masaüstü tuvali style.css'te.
   ========================================================= */
.burger { display: none; }
.av-i, .stat-g { display: contents; }

/* Hero alt kenarı tam genişlikte tek düz çizgi: Yatırım Modeli panelinin çentik tabanı (880 + 55 px).
   Panelin yüksek kısmı bu çizginin üstüne beyaz sekme olarak biner; yanlarda basamak/kesik oluşmaz. */
@media (min-width: 901px) {
  .bg-hero { clip-path: inset(0 0 calc(100% - 935px) 0); }
  .hero .shade { height: 935px !important; }
}

/* Geniş ekran (>1440): kenarlar fal ile 2560 px'e genişletilmiş gerçek fotoğraf
   (orta 1440 px özgün görselle birebir). 2560 üstünde kalan şerit aynı görselin büyütülmüşü. */
@media (min-width: 1441px) {
  .bg-hero { background: var(--hero-w) center top / 2560px 1031px no-repeat, var(--hero-w) center top / cover no-repeat; }
  .bg-h1 { --hero-w: url(../img/hero-1-w.webp); }
  .bg-h2 { --hero-w: url(../img/hero-2-w.webp); }
  .bg-h3 { --hero-w: url(../img/hero-3-w.webp); }
}

@media (max-width: 900px) {
  .wrap { zoom: 1; width: auto; height: auto; padding: 56px 20px; display: flex; flex-direction: column; gap: 16px; }
  .a, .t { position: relative; left: auto !important; right: auto !important; top: auto !important; width: auto; }
  .t, .t.p { white-space: normal; width: auto; font-size: 16px; line-height: 1.7; text-align: start; }
  br.d, span.d { display: none; }
  .c.t { line-height: 1.15; }
  h2.t.c { font-size: 34px; }
  .bleed { position: absolute !important; inset: 0 !important; height: auto !important; }

  /* header + hero: logo/menü görselin üstünde, slaytlar üst üste (grid), form altta */
  .hero .wrap { padding-top: 0; padding-bottom: 32px; gap: 14px; }
  .slides { position: relative; display: grid; margin: 0 -20px; }
  .slide { position: relative; inset: auto; grid-area: 1 / 1; display: flex; flex-direction: column; gap: 14px; padding: 104px 20px 26px; }
  .slide .t { transform: none; }
  .shade { display: none; }
  .bg-hero { background-position: 30% center; }
  .bg-hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(255,255,255,.55) 0%, rgba(255,255,255,.9) 30%, rgba(255,255,255,.88) 78%, rgba(255,255,255,.55) 100%); }
  .hero .logo { position: absolute !important; top: 18px !important; width: 140px; z-index: 3; }
  [dir=rtl] .hero .logo { right: 20px !important; }
  [dir=ltr] .hero .logo { left: 20px !important; }
  .logo img { width: 100%; height: auto; }
  .burger {
    display: flex; flex-direction: column; justify-content: center; gap: 5px;
    position: absolute; inset-inline-end: 20px; top: 24px; width: 40px; height: 36px; padding: 0 10px;
    border: 0; border-radius: 18px; background: #f8f8f4; cursor: pointer; z-index: 3;
  }
  .hero .hdr { display: contents; }
  .hero .tools { position: absolute !important; top: 22px !important; z-index: 3; gap: 8px; }
  [dir=rtl] .hero .tools { left: 70px !important; }
  [dir=ltr] .hero .tools { right: 70px !important; }
  .tel { width: 40px; height: 40px; padding: 0; justify-content: center; }
  .tel span { display: none; }
  .lang { padding: 3px; }
  .lang a { min-width: 34px; height: 30px; padding: 0 8px; font-size: 13px; }
  .dots { justify-content: center; margin-top: -2px; }
  .burger span { height: 2px; background: var(--navy-2); border-radius: 1px; transition: transform .25s, opacity .25s; }
  .nav-open .burger span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
  .nav-open .burger span:nth-child(2) { opacity: 0; }
  .nav-open .burger span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
  .hero .menu {
    position: absolute !important; top: 72px !important; left: 12px !important; right: 12px !important; z-index: 5;
    display: none; flex-direction: column; padding: 8px 0; border-radius: 14px; background: #fff; box-shadow: 0 12px 30px rgba(0, 41, 70, .18);
  }
  .nav-open .hero .menu { display: flex; }
  .menu a { position: static; padding: 12px 22px; font-size: 15px; }
  .menu a + a::before { display: none; }
  .hero .t { text-align: start; z-index: 1; }
  .hero p.t.c { font-size: 22px; margin-top: 28px; }
  .hero-title { font-size: 44px; line-height: 1.02; }
  .hero-title em { font-size: 50px; line-height: 1.05; }
  .aplus { display: none; }
  .hero-title .sr { position: static; width: auto; height: auto; clip: auto; }
  .hero-title span[aria-hidden] { display: none; }
  .btn-gold { width: 100%; max-width: 394px; height: 52px; align-self: flex-start; background-size: 100% 100%; font-size: 17px; }
  .btn-gold span { left: 64px; top: 17px; }

  .lead-modal { width: calc(100% - 24px); max-width: 440px; max-height: calc(100dvh - 24px); overflow: auto; border-radius: 14px; }
  .lead { width: 100%; height: auto; margin: 0; padding: 22px 20px 20px; zoom: 1; }
  .lead h2 { font-size: 19px; line-height: 1.3; }
  .lead-sub { font-size: 13px; line-height: 1.4; }
  .lead-row { gap: 10px; }
  .lead-row input, .lead > input, .lead-tel { width: 100%; }
  .lead input:not([type=checkbox]), .lead select, .lead-tel { height: 44px; border-radius: 22px; font-size: 15px; }
  .lead-row input { min-width: 0; flex: 1; }
  .lead-tel select { width: 58px; font-size: 13px; padding-left: 14px; background-position: 42px 20px; }
  .lead-tel input { font-size: 15px !important; min-width: 0; }
  .lead-note, .chk { font-size: 12.5px; line-height: 1.45; }
  .chk { white-space: normal; }
  .lead > .chk:first-of-type span { max-width: none; }
  .chk input { width: 16px; height: 16px; }
  .chk input:checked { background-size: 13px; }
  .lead-ch { flex-wrap: wrap; row-gap: 8px; margin: 12px 0 14px; }
  .lead-send { position: relative; left: auto; top: auto; width: 100%; height: 50px; margin-top: 16px; font-size: 19px; line-height: 50px; }
  .lead-send::before { top: 18px; }

  /* yatırım modeli */
  .model .wrap { padding-top: 40px; }
  .panel { display: none; }
  .model .t, .neden .t, .konum .t, .pazar h2.t, .pazar .wrap > p.t, .akis h2.t, .sss h2.t { text-align: start; }
  .model p.t, .pazar .wrap > p.t { margin-top: -6px; }
  .cards { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 10px; }
  .cards li { position: static; width: auto; height: auto; padding: 18px 8px 16px; display: flex; flex-direction: column; align-items: center; }
  .cards img, .cards span, .cards b { position: static; }
  .cards img { margin-bottom: 10px; height: 52px; width: auto; }
  .cards span, .cards .tall span { font-size: 15px; line-height: 1.35; white-space: normal; }
  .cards b { font-size: 21px; line-height: 1.3; white-space: normal; }
  .notice { width: auto; height: auto; padding: 14px 16px; display: flex; flex-direction: row-reverse; align-items: center; gap: 12px; }
  .notice p, .notice img { position: static; }
  .notice p { white-space: normal; font-size: 14.5px; line-height: 1.5; text-align: start; }
  .notice img { flex: none; width: 44px; height: auto; }
  .model .legal { text-align: center; font-size: 14.5px; line-height: 1.5; }

  /* partner */
  .band { display: none; }
  .partner { background: #fff; box-shadow: 0 -10px 24px -20px rgba(0,0,0,.5), 0 10px 24px -20px rgba(0,0,0,.5); margin: 8px 0; }
  .partner .wrap { align-items: center; text-align: center; padding: 40px 20px; }
  .partner .wrap > img:nth-of-type(2) { display: none; }
  .partner .wrap > img:nth-of-type(3) { width: 130px; height: auto; }
  .partner-logo { order: -1; width: 190px; height: auto; }
  .partner-txt { text-align: center !important; font-size: 16px; }
  .partner-txt strong { display: block; margin-bottom: 4px; -webkit-text-stroke: 0; letter-spacing: .015em; }
  .partner .vline { width: 60px; height: 2px; }

  /* neden */
  .neden .wrap { padding-top: 0; }
  .lobby { order: 9; width: calc(100% + 40px); max-width: none; height: auto; margin: 10px -20px -56px; }
  .neden-title { font-size: 40px !important; order: -1; margin-top: 48px; }
  .checks { width: auto; order: 1; font-size: 17px; line-height: 1.5; }
  .checks li { white-space: normal; padding-block: 6px; padding-inline: 40px 0; }
  .checks li::after { right: auto; inset-inline-start: 0; top: 5px; }
  .neden .wrap > p.t { order: 2; }
  .btn-line { order: 3; align-self: flex-start; width: 256px; height: 46px; }

  /* konsept */
  .konsept .wrap { gap: 18px; }
  .kcard { width: auto; height: auto; padding: 26px 22px 24px 60px; background: #fff; clip-path: polygon(72px 0, 100% 0, 100% 100%, 0 100%, 0 60px); }
  .kcard .t { text-align: start; }
  .kcard h3.t { font-size: 18px; margin-bottom: 6px; }
  .kcard p.t { font-size: 15px; }
  .konsept .wrap > h2 { order: -2; font-size: 28px !important; text-align: start; }
  .konsept .wrap > p.white { order: -1; text-align: start; font-size: 17px; }

  /* konum */
  .hline { width: 100%; order: 1; }
  .konum h2 { order: -1; }
  .konum .wrap > p.t { order: 0; margin-top: -10px; }
  .gallery { order: 3; display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
  .gallery img { position: static; width: 100%; height: auto; aspect-ratio: 254 / 141; object-fit: cover; }
  .building { order: 2; width: 100%; height: auto; }

  /* pazar */
  .pazar .wrap { padding-top: 24px; }
  .stat-g { display: block; border: 1px solid #a67947; padding: 18px 12px; }
  .stat { display: none; }
  .stat-g .t { text-align: center; width: auto !important; }
  .num { font-size: 36px; }
  .stat-g p.t.m { font-size: 15.5px; }

  /* avantajlar */
  .avantaj .wrap { padding-top: 48px; padding-bottom: 48px; gap: 18px; }
  .avantaj h2 { order: -2; text-align: start; }
  .avantaj .vline { order: -1; width: 64px !important; height: 3px !important; align-self: flex-start; }
  .av-i { display: flex; align-items: center; justify-content: flex-start; gap: 16px; }
  .av-i img { order: -1; flex: none; width: 52px; height: auto; }
  .av-i p.t { text-align: start; }

  /* değer */
  .bg-deger { background-position: 75% center; }
  .bg-deger::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,41,70,.92), rgba(0,41,70,.72)); }
  .deger h2.t { font-size: 36px; z-index: 1; }
  .steps { display: flex; flex-direction: column; gap: 22px; z-index: 1; position: relative; }
  .steps li { display: flex; align-items: flex-start; gap: 14px; }
  .steps li p.t { flex: 1; font-size: 16px; text-align: start; }
  .steps li b.t, .steps li img.a { order: -1; }
  .steps li b.t { font-size: 38px; line-height: 1; flex: none; width: 48px; }
  .steps li img.a { width: 44px; height: auto; flex: none; }

  /* akış */
  .akis .wrap { padding-top: 48px; }
  .akis h2 { z-index: 1; }
  .flow { display: flex; flex-direction: column; gap: 26px; z-index: 1; }
  .flow li { position: relative; left: auto; width: auto; height: auto; padding: 18px 16px; background: var(--cream); display: flex; flex-direction: column; align-items: center; }
  .flow li + li::before { content: ""; position: absolute; top: -21px; left: 50%; width: 23px; height: 14px; margin-left: -11px; background: url(../img/ic-arrow-sm.png) no-repeat; transform: rotate(90deg); }
  .flow img, .flow b, .flow span { position: static; }
  .flow img { margin-bottom: 10px; }
  .flow b, .flow span { white-space: normal; }
  .flow b { font-size: 17.5px; line-height: 1.3; }
  .flow span { font-size: 15px; line-height: 1.45; }
  .arr { display: none; }
  .chain { width: auto; height: auto; display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 6px; padding: 14px; z-index: 1; }
  .chain span, .chain i { position: static; }
  .chain i { display: block; }
  .chain span { font-size: 15px; line-height: 1.4; }

  /* türkiye */
  .bg-turkiye { background-position: 70% center; }
  .bg-turkiye::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,41,70,.94) 0%, rgba(0,41,70,.78) 60%, rgba(0,41,70,.5) 100%); }
  .turkiye .t { z-index: 1; text-align: start; }
  .turkiye p.t.ce { font-size: 24px; line-height: 1.25; }
  .turkiye h2.t { font-size: 38px; margin-top: -8px; }
  .tr-txt { font-size: 15.5px; }
  .btn-out { z-index: 1; align-self: flex-start; width: 229px; height: 45px; }

  /* sss */
  .sss h2.t { font-size: 30px !important; }
  .sss-all { order: 3; display: flex; align-items: center; justify-content: flex-start; gap: 10px; }
  .sss-all .t { font-size: 18px; text-align: start; }
  .sss-all img { width: 80px; height: auto; }
  .sss-all .t.L { font-size: 46px; line-height: 1; }
  .wrap-sss { padding: 56px 20px; min-height: 0; }
  .faq { margin: 0; width: auto; display: flex; flex-direction: column; align-items: stretch; gap: 8px; }
  .faq-col { gap: 8px; }
  .faq li { position: static; }
  .faq button, .faq .w2 button { height: auto; min-height: 46px; padding: 10px 44px 10px 12px; white-space: normal; font-size: 15.5px; line-height: 1.35; }
  .faq button::after, .faq .w2 button::after { top: 50%; margin-top: -13.5px; }
  .faq-a p { padding: 12px 44px 14px 12px; font-size: 15px; }

  /* footer */
  .foot .wrap { align-items: center; text-align: center; padding: 40px 20px 32px; gap: 22px; }
  .foot .wrap > a img { width: 190px; height: auto; }
  .menu-foot { display: flex; flex-wrap: wrap; justify-content: center; gap: 4px 0; }
  .menu-foot a { padding: 6px 12px; font-size: 13.5px; }
  .foot .a-f { font-size: 13px; text-align: center; }
  .social { width: 140px; }
  .foot-contact { flex-wrap: wrap; justify-content: center; }
  .foot-rule { width: 100%; }
  .foot .foot-legal { font-size: 14px; line-height: 1.5; text-align: center; }
  .wa-float { width: 52px; height: 52px; bottom: 16px; inset-inline-end: 16px; }
}

@media (max-width: 900px) {
  [dir=ltr] .hero-title { font-size: 40px; line-height: 1.08; }
  .checks { text-align: start; }
  [dir=ltr] .faq button { text-align: left; }
  [dir=ltr] .hero-title em { font-size: 46px; line-height: 1.1; }
  [dir=ltr] .btn-gold span { left: 58px; right: 8px; font-size: 15px; letter-spacing: .02em; }
  [dir=rtl] .lead-tel select { padding: 0 12px 0 0; background-position: 8px 20px; }
  [dir=ltr] .lead-tel select { padding: 0 0 0 14px; background-position: 42px 20px; }
  .lead-send { margin-top: 16px; }
  .hero-title .ap { padding-right: 21px; }
  .hero-title .ap img { width: 20px; height: 20px; top: 5px; }
}

@media (max-width: 420px) {
  .hero-title { font-size: 38px; }
  .hero-title em { font-size: 44px; }
  .cards span, .cards .tall span { font-size: 14px; }
  .cards b { font-size: 19px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition: none !important; }
}
