/* Özel Aikido CMS – yönetilebilir hero slider / mozaik geçiş */
.oad-dynamic-banner{overflow:hidden;background:#111}
.oad-banner-slide{isolation:isolate;background:#111;position:relative;overflow:hidden}
.oad-banner-slide .container-fluid{position:relative;z-index:5}

/*
 * v4.1: Sword temasının eski 1.3 -> 1 zoom animasyonunu burada kesin olarak kapatıyoruz.
 * İlk frame, mozaik frame ve final frame aynı geometriden çizilir; yükleme sonrası "çat" diye
 * büyüme/küçülme oluşmaz.
 */
.oad-dynamic-banner .oad-banner-full-bg{
  z-index:0;
  background-position:center center!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
  opacity:1;
  transform:none!important;
  -webkit-transform:none!important;
  will-change:auto!important;
  transition:opacity .14s linear!important;
}
.oad-dynamic-banner .swiper-slide-active .oad-banner-full-bg,
.oad-dynamic-banner .swiper-slide-prev .oad-banner-full-bg,
.oad-dynamic-banner .swiper-slide-next .oad-banner-full-bg{
  transform:none!important;
  -webkit-transform:none!important;
}

.oad-slider-shade{position:absolute;inset:0;z-index:3;background:#000;opacity:var(--oad-slider-overlay,.62);pointer-events:none}
.oad-mosaic-grid{position:absolute;inset:0;z-index:2;display:grid;pointer-events:none;overflow:hidden;opacity:0;background:#111}
.oad-mosaic-tile{min-width:0;min-height:0;position:relative;overflow:hidden;opacity:0;transform:scale(.82);filter:saturate(.86);transition-property:opacity,transform,filter;transition-timing-function:cubic-bezier(.22,.72,.19,1)}
.oad-mosaic-tile-bg{position:absolute;display:block;background-repeat:no-repeat;background-position:center center;background-size:cover;transform:none!important}
.oad-mosaic-grid.is-revealing{opacity:1}
.oad-mosaic-grid.is-revealing .oad-mosaic-tile{opacity:1;transform:scale(1);filter:saturate(1)}
.oad-mosaic-slide.is-mosaic-running .oad-banner-full-bg{opacity:0}
.oad-slider-pagination{position:absolute;left:50%;bottom:38px;z-index:10;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;gap:9px;width:auto!important}
.oad-slider-pagination .swiper-pagination-bullet{width:10px;height:10px;margin:0!important;border:1px solid rgba(255,255,255,.9);background:transparent;opacity:1;transition:.25s ease}
.oad-slider-pagination .swiper-pagination-bullet-active{width:28px;border-radius:20px;background:#fff}
@media (max-width:991px){.oad-slider-pagination{bottom:22px}}
@media (prefers-reduced-motion:reduce){.oad-mosaic-grid{display:none!important}.oad-banner-full-bg{opacity:1!important;transform:none!important;transition:none!important}}

/* v1.6 brand palette */
.oad-dynamic-banner .slider-prev:hover,.oad-dynamic-banner .slider-next:hover{background:var(--oad-primary,#f97316);border-color:var(--oad-primary,#f97316);color:#fff}
.oad-slider-pagination .swiper-pagination-bullet-active{background:var(--oad-primary,#f97316)!important}

/* v7.6.3 - Uzun eğitmen/slider başlıkları mobilde taşmasın */
@media(max-width:767px){
  .oad-dynamic-banner .banner-content .title{font-size:clamp(28px,8.6vw,40px)!important;line-height:1.06!important;overflow-wrap:normal;word-break:normal}
  .oad-dynamic-banner .banner-content .inner-title{font-size:18px!important;line-height:1.22!important;max-width:94vw;margin-left:auto;margin-right:auto}
  .oad-dynamic-banner .banner-content .sub-title{font-size:13px!important;line-height:1.3!important}
}


/* v7.6.11 - Her slide için ayrı desktop/mobile görsel */
.oad-dynamic-banner .oad-banner-picture{position:absolute;inset:0;z-index:0;display:block;overflow:hidden}
.oad-dynamic-banner .oad-banner-picture .oad-banner-full-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;display:block}
@media(max-width:767px){
  .oad-dynamic-banner .oad-banner-picture .oad-banner-full-bg{object-position:center center}
}

/* v7.6.12 - Mobil slider sadeleştirme: üst küçük başlık ve alt başlık mobilde gizli */
@media (max-width:767px){
  .oad-dynamic-banner .banner-content .sub-title,
  .oad-dynamic-banner .banner-content .inner-title{
    display:none!important;
  }
}

/* v7.6.13 - Mobil hero: ana başlık kelime kelime alt alta, butonlar dikey */
.oad-dynamic-banner .oad-mobile-stacked-title .oad-title-word{
  display:inline-block;
}

@media (max-width:767px){
  .oad-dynamic-banner .banner-section-two{
    padding-top:170px;
    padding-bottom:150px;
  }

  .oad-dynamic-banner .banner-section-two .banner-content{
    width:100%;
    max-width:92vw;
    margin-left:auto;
    margin-right:auto;
  }

  .oad-dynamic-banner .oad-mobile-stacked-title{
    max-width:100%;
    margin-left:auto;
    margin-right:auto;
  }

  .oad-dynamic-banner .oad-mobile-stacked-title .oad-title-word{
    display:block;
    margin:0;
  }

  .oad-dynamic-banner .banner-section-two .banner-btn{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:12px;
    margin-top:28px;
    margin-left:0;
    margin-right:0;
  }

  .oad-dynamic-banner .banner-section-two .banner-btn a{
    margin:0;
    width:min(320px,84vw);
    display:flex;
    align-items:center;
    justify-content:center;
  }
}

/* v7.6.14 - Mobil hero butonlarını daha minimal yap */
@media (max-width:767px){
  .oad-dynamic-banner .banner-section-two .banner-btn{
    gap:8px;
    margin-top:22px;
  }

  .oad-dynamic-banner .banner-section-two .banner-btn a.btn--base{
    width:auto!important;
    min-width:190px;
    max-width:72vw;
    min-height:40px;
    padding:8px 16px!important;
    border-width:1.5px!important;
    font-size:12px!important;
    line-height:1.2!important;
    border-radius:999px;
  }

  .oad-dynamic-banner .banner-section-two .banner-btn a.btn--base i{
    margin-left:8px!important;
    font-size:11px;
  }
}

/* v7.6.15 - Mobil hero geometri düzeltmesi
 * Header sliderın üstüne binmez. Mobil görsel kendi doğal oranında TAM görünür;
 * alt kısımdaki görsel yazıları / imza kırpılmaz.
 */
@media (max-width:767px){
  /* Mobil header kendi siyah satırında dursun; görselin AI/kanji alanını kapatmasın. */
  body .header-section-two:not(.header-fixed){
    position:relative!important;
    top:auto!important;
    left:auto!important;
    background:#0b0b0b!important;
  }
  body .header-section-two:not(.header-fixed) .header-bottom-area{
    padding-top:12px!important;
    padding-bottom:12px!important;
  }
  body .header-section-two:not(.header-fixed) .site-logo img{
    max-height:78px!important;
    width:auto!important;
  }

  /* Önceki padding tabanlı yüksekliği tamamen iptal et. */
  .oad-dynamic-banner .banner-section-two,
  .oad-dynamic-banner .oad-banner-slide{
    padding:0!important;
    min-height:0!important;
    height:auto!important;
  }

  /* Picture normal akışta yüksekliği belirlesin: object-fit/cover ile artık crop yok. */
  .oad-dynamic-banner .oad-banner-picture{
    position:relative!important;
    inset:auto!important;
    display:block!important;
    width:100%!important;
    height:auto!important;
    overflow:hidden!important;
    z-index:0!important;
    line-height:0!important;
  }
  .oad-dynamic-banner .oad-banner-picture .oad-banner-full-bg{
    position:relative!important;
    inset:auto!important;
    display:block!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    object-fit:contain!important;
    object-position:center top!important;
    background-size:contain!important;
  }

  /* İçerik görselin üstünde ama görsel yüksekliğini değiştirmesin. */
  .oad-dynamic-banner .oad-banner-slide>.container-fluid{
    position:absolute!important;
    inset:0!important;
    z-index:5!important;
    display:flex!important;
    align-items:flex-start!important;
    justify-content:center!important;
    pointer-events:none;
  }
  .oad-dynamic-banner .oad-banner-slide>.container-fluid>.row{
    width:100%!important;
    height:100%!important;
    margin:0!important;
    display:flex!important;
    align-items:flex-start!important;
    justify-content:center!important;
  }
  .oad-dynamic-banner .oad-banner-slide>.container-fluid>.row>[class*="col-"]{
    width:100%!important;
    max-width:100%!important;
    flex:0 0 100%!important;
    margin:0!important;
    padding:0 14px!important;
  }
  .oad-dynamic-banner .banner-content{
    width:100%!important;
    max-width:92vw!important;
    margin:24% auto 0!important;
    pointer-events:auto;
  }

  /* Büyük başlık: kelime kelime alt alta, görselin orta güvenli alanında. */
  .oad-dynamic-banner .banner-content .title{
    font-size:clamp(27px,8vw,36px)!important;
    line-height:.98!important;
    margin:0!important;
    text-shadow:0 2px 12px rgba(0,0,0,.3);
  }
  .oad-dynamic-banner .oad-mobile-stacked-title .oad-title-word{
    display:block!important;
  }

  /* Butonlar minimal ve alt alta; alt imza alanına kadar uzamasın. */
  .oad-dynamic-banner .banner-section-two .banner-btn{
    gap:7px!important;
    margin-top:18px!important;
  }
  .oad-dynamic-banner .banner-section-two .banner-btn a.btn--base{
    min-width:176px!important;
    max-width:66vw!important;
    min-height:36px!important;
    padding:7px 14px!important;
    font-size:11px!important;
  }

  /* Slider navigasyonu, görselin alt imza alanının üstüne oturmasın. */
  .oad-dynamic-banner .oad-slider-pagination{
    bottom:14px!important;
  }
}

/* v7.6.16 - Mobil menü overlay/drawer: sayfayı ve sliderı aşağı itmez */
@media (max-width:1199px){
  .header-section-two .header-bottom-area,
  .header-section-two .header-menu-content,
  .header-section-two .navbar{
    overflow:visible!important;
  }

  .header-section-two .navbar{
    position:relative!important;
  }

  /* Bootstrap collapse açılırken de normal document flow'a girmez. */
  .header-section-two .navbar-collapse,
  .header-section-two .navbar-collapse.collapsing,
  .header-section-two .navbar-collapse.collapse.show{
    position:absolute!important;
    top:calc(100% + 10px)!important;
    right:0!important;
    left:auto!important;
    width:min(360px,calc(100vw - 28px))!important;
    max-height:calc(100vh - 130px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    z-index:99999!important;
    background:rgba(8,8,8,.98)!important;
    border:1px solid rgba(255,255,255,.08)!important;
    border-radius:14px!important;
    box-shadow:0 18px 45px rgba(0,0,0,.38)!important;
    padding:8px 0!important;
  }

  .header-section-two .navbar-collapse.collapsing{
    height:auto!important;
    transition:opacity .18s ease,transform .18s ease!important;
    opacity:0!important;
    transform:translateY(-8px)!important;
  }

  .header-section-two .navbar-collapse.collapse.show{
    opacity:1!important;
    transform:translateY(0)!important;
  }

  .header-section-two .navbar-collapse .main-menu{
    padding:4px 0!important;
    margin:0!important;
    width:100%!important;
  }

  .header-section-two .navbar-collapse .main-menu>li{
    width:100%!important;
    margin:0!important;
    padding:0 10px!important;
  }

  .header-section-two .navbar-collapse .main-menu>li>a{
    display:block!important;
    width:100%!important;
    padding:11px 14px!important;
    border-radius:9px!important;
    font-size:15px!important;
    line-height:1.25!important;
    color:#fff!important;
  }

  .header-section-two .navbar-collapse .main-menu>li>a:hover,
  .header-section-two .navbar-collapse .main-menu>li>a:focus{
    background:rgba(249,115,22,.10)!important;
    color:var(--oad-primary,#f97316)!important;
  }

  .header-section-two .navbar-collapse .main-menu>li+li{
    border-top:1px solid rgba(255,255,255,.055)!important;
  }

  /* Açıkken hamburger X olsun. */
  .header-section-two .navbar-toggler[aria-expanded="true"] .fa-bars:before{
    content:"\f00d"!important;
  }

  .header-section-two .navbar-toggler{
    position:relative!important;
    z-index:100000!important;
  }
}

@media (max-width:575px){
  .header-section-two .navbar-collapse,
  .header-section-two .navbar-collapse.collapsing,
  .header-section-two .navbar-collapse.collapse.show{
    right:0!important;
    width:min(330px,calc(100vw - 24px))!important;
    max-height:calc(100vh - 110px)!important;
  }
}
