/* =========================================================
   GENEL
   ========================================================= */
body{
  background: var(--color-bg);
  color: var(--color-text);
  font-family: var(--font-text);
}

h1, h2, h3, h4, h5, h6,
.display-1, .display-2, .display-3, .display-4{
  font-family: var(--font-heading);
  color: var(--color-heading);
}

.object-fit-cover{ object-fit: cover; }

.card-soft{
  border: 0;
  border-radius: var(--radius-card);
  box-shadow: 0 6px 20px rgba(16,24,40,.06);
}

.hero-badges .badge{ font-weight:500; }

/* Owl thumbs aktif görünüm */
#owlThumbs .owl-item .thumb-item{
  opacity:.55;
  transition:opacity .2s ease, transform .2s ease;
  cursor:pointer;
}
#owlThumbs .owl-item.current .thumb-item{
  opacity:1;
  transform: translateY(-1px);
}

/* Sticky aside mobilde normal akış */
@media (max-width: 991.98px){
  aside .position-sticky{
    position: static !important;
    top:auto !important;
  }
}

/* =========================================================
   TOPBAR + NAVBAR
   ========================================================= */
.topbar{
  background: var(--header-bg);
  color: var(--header-text);
  font-size:.92rem;
}
.topbar a{
  color: var(--header-text);
  text-decoration:none;
}

/* Örnek header container (varsa) */
.site-header,
.navbar-main{
  background: var(--header-bg);
  color: var(--header-text);
}

.navbar-brand img{height:30px}
.navbar .nav-link{font-weight:500}
.navbar .dropdown-mega{position:static}

/* Klasik dropdown mega */
.navbar .dropdown-menu.mega{
  width:100%;
  left:0; right:0;
  border:0;
  border-radius:0 0 16px 16px;
  box-shadow:0 20px 30px rgba(0,0,0,.08);
  padding:1.25rem 0;
  margin-top:0;
}
.mega h6{
  font-weight:700;
  font-size:.95rem;
}
.mega a{
  color: var(--color-text);
  text-decoration:none;
  display:block;
  padding:.25rem 0;
}
.mega a:hover{
  color: var(--color-dark);
}

/* Desktop kart tipi mega (dropdown-mega-box) */
@media (min-width: 992px){
  .navbar .dropdown-menu.mega-box{
    width: min(980px, calc(100vw - 2rem));
    border:0;
    border-radius:16px;
    padding:1rem;
    box-shadow:0 20px 36px rgba(0,0,0,.12);
    margin-left:12rem;
    margin-top:.75rem;
  }
}
@media (max-width: 991.98px){
  .navbar .dropdown-menu.mega-box{
    width:100vw;
    left:0; right:0;
    margin:0;
    border-radius:0;
    padding:1rem .75rem;
    box-shadow:none;
    border-top:1px solid var(--color-border-soft);
  }
}

/* =========================================================
   ARAMA BÖLÜMÜ
   ========================================================= */
.search-wrap{
  background:linear-gradient(180deg,var(--color-brand-soft), var(--color-bg) 35%);
  border-bottom:1px solid var(--color-border-soft);
}
.search-card{
  border:0;
  border-radius: var(--radius-card);
  box-shadow:0 8px 24px rgba(15,23,42,.08);
  backdrop-filter: blur(10px);
  position: relative;
  z-index: 800;
}

/* Autocomplete list ortak stil + konumu */
.search-autocomplete-list{
  max-height:260px;
  overflow:auto;
  position:absolute;
  z-index:1300;
}

/* Tab butonları */
.pill-tabs .nav-link{
  border-radius:8px;
  padding:.5rem .9rem;
  color:var(--color-dark);
  font-weight:500;
  background: rgba(255,255,255,0.75);
  backdrop-filter: blur(8px);
}
.pill-tabs .nav-link.active{
  background:#fff;
  color:var(--color-dark);
  box-shadow:0 2px 6px rgba(0,0,0,0.15);
}

/* Hızlı rozetler */
.quick-badges .badge{
  padding:.85rem .95rem;
  border-radius:14px;
  background:#fff;
  color:var(--color-dark);
  box-shadow:0 8px 20px rgba(0,0,0,.06);
}

/* =========================================================
   BUTONLAR
   ========================================================= */
.btn-brand{
  background:var(--color-brand);
  color:#fff;
  border:0;
  font-weight:600;
}
.btn-brand:hover{
  background:var(--color-brand);
  filter:brightness(.9);
  color:#fff;
}

/* Kart hover */
.card-hover{
  transition: box-shadow 0.1s ease-in-out;
}
.card-hover:hover{
  box-shadow:0 0.2rem 0.6rem rgba(0,0,0,.1) !important;
}
@media (max-width: 768px){
  .card-hover:hover{
    box-shadow:0 0.1rem 0.3rem rgba(0,0,0,.08) !important;
  }
}

/* =========================================================
   HERO / SLIDER
   ========================================================= */
.hero .swiper{
  border-radius:var(--radius-hero);
  overflow:hidden;
}
.hero .swiper-slide img{
  height:360px;
  object-fit:cover;
}
@media (min-width:1400px){
  .hero .swiper-slide img{height:420px}
}

/* Slayt üzeri karartma */
.hero .slide-overlay{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  color:#fff;
  background:linear-gradient(90deg,rgba(0,0,0,.45),rgba(0,0,0,.08));
}
.hero .slide-overlay .inside{
  padding:1.25rem 1.25rem 1.25rem 1.5rem;
  max-width:520px;
}
.hero .price{
  background:#fff;
  color:var(--color-dark);
  border-radius:10px;
  padding:.4rem .6rem;
  font-weight:700;
  display:inline-block;
}

/* Slider okları */
.hero .swiper-button-prev,
.hero .swiper-button-next{
  width:48px;
  height:48px;
  border-radius:50%;
  background:#fff;
  color:#23344d;
  box-shadow:0 8px 20px rgba(0,0,0,.15);
  top:50%;
  transform:translateY(-50%);
}
.hero .swiper-button-prev:after,
.hero .swiper-button-next:after{
  font-size:18px;
  font-weight:900;
}

/* Mobilde slider görsel yüksekliği */
@media (max-width: 991.98px){
  .swiper-slide img{
   /* height:200px !important; */
    object-fit:cover;
  }
  .swiper-slide .col-12.col-lg-6.d-flex{
    min-height:300px;
  }
}

/* Hero grid hizalama */
.hero .row.align-items-stretch > [class*="col-"].d-flex{
  align-items:stretch;
}

/* =========================================================
   TUR / PROMO KARTLARI (genel)
   ========================================================= */
.promo-card .card{
  border:0;
  border-radius:var(--radius-hero);
  box-shadow:0 10px 22px rgba(13,110,253,.08);
}
.promo-card .card-img-top{
  height:180px;
  object-fit:cover;
}
.tour-card .card-img-top{
  height:180px;
  object-fit:cover;
}
.tour-card .card{
  border:0;
  border-radius:18px;
  box-shadow:0 10px 20px rgba(13,110,253,.06);
}

/* =========================================================
   BREADCRUMB
   ========================================================= */
.breadcrumb-container{
  overflow-x:auto;
  white-space:nowrap;
}
.breadcrumb-container .breadcrumb{
  flex-wrap:nowrap;
  margin-bottom:0;
}
.breadcrumb-container .breadcrumb-item{
  flex-shrink:0;
}
.breadcrumb {
  margin-bottom: 0;
}
.breadcrumb-item + .breadcrumb-item::before {
  content: "\F285"; /* bi-chevron-right */
  font-family: "bootstrap-icons";
  color: var(--color-text-muted);
  font-size: .85rem;
}
.breadcrumb a {
  text-decoration: none !important;
}

/* =========================================================
   MEGA MENÜ (DETACHED, DESKTOP)
   ========================================================= */
#siteHeader{
  position: relative;
}
header, .navbar, .page-wrapper { overflow: visible; }

/* Detached mega container */
.mega-detached{
  position: absolute;
  left: 50%;
  top: var(--mega-top, 62px);
  transform: translateX(-50%);
  width: 100vw;
  max-width: 1320px;
  z-index: 1050;
  pointer-events: none;
}
.mega-detached .mega-panel{
  position: relative;
  background: #fff;
  border:1px solid rgba(14,165,233,.12);
  box-shadow:0 18px 40px rgba(2,132,199,.18);
  opacity:0;
  visibility:hidden;
  transform:translateY(-8px);
  transition:opacity .22s, transform .22s, visibility 0s .22s;
  pointer-events: all;
}
.mega-detached.is-open .mega-panel{
  opacity:1;
  visibility:visible;
  transform:none;
  transition-delay:0s;
}
.mega-detached .mega-panel::before{
  content:"";
  position:absolute;
  left:0; right:0; top:-12px;
  height:12px;
}

/* Sol blok içindeki promo kartlar (ana tur kategorileri) */
.promo-card{
  position:relative;
  border-radius:12px;
  overflow:hidden;
  min-height:120px;
  display:flex;
  align-items:flex-end;
  padding:22px;
  color:#fff;
  box-shadow:0 10px 26px rgba(2,132,199,.08);
  transition:transform .2s, box-shadow .2s;
}
@media(min-width:992px){
  .promo-card{ max-height:280px; }
}
.promo-card:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 42px rgba(2,132,199,.18);
}
.promo-bg{
  position:absolute;
  inset:0;
  background-size:cover;
  background-position:center;
}
.promo-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(80deg,rgba(0,0,0,.0) 30%, rgba(0,0,0,.38) 100%);
}
.promo-body{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  gap:12px;
}
.promo-ico{
  width:40px;
  height:40px;
  border-radius:12px;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.2);
  backdrop-filter:blur(2px);
  color:#fff;
}
.promo-title{
  font-weight:800;
  font-size:1.2rem;
  line-height:1.1;
  margin:0;
  color:#fff;
}
.cat-thumb{
  width:48px;
  height:48px;
  border-radius:8px;
  object-fit:cover;
  border:1px solid #e2e8f0;
  background:#f8fafc;
}
#megaChildrenList a{
  color:#475569;
  text-decoration:none;
  padding:4px 0;
}
#megaChildrenList a:hover{
  color:var(--color-brand);
}
#megaLeft .promo-card.is-active{
  box-shadow: 0 18px 42px rgba(2,132,199,.25);
  transform: translateY(-3px);
}

/* Sağ blok gezi takvimi görünümü için küçük ikon */
.mega-ico{
  width:40px;
  height:40px;
  border-radius:12px;
  display:grid;
  place-items:center;
  background:rgba(37,99,235,.06);
  color:#1d4ed8;
}

/* =========================================================
   MOBİL OFFCANVAS MENÜ
   ========================================================= */
.mega-mobile-offcanvas{
  width:100%;
  max-width:480px;
}
.mega-mobile-offcanvas .offcanvas-body{
  background:#f3f4f6;
}
.mega-mobile-offcanvas .section-label{
  font-size:.95rem;
  font-weight:600;
  color:#4b5563;
}
.mega-mobile-offcanvas .menu-parent{
  position:relative;
  overflow:hidden;
  min-height:86px;
}
.mega-mobile-offcanvas .menu-parent-bg{
  position:absolute;
  inset:0;
  background-size:cover;
  background-position:center;
  transform:scale(1.05);
  transition:transform .3s ease;
}
.mega-mobile-offcanvas .menu-parent-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(0,0,0,.65),rgba(0,0,0,.25));
}
.mega-mobile-offcanvas .menu-parent .card-body{
  position:relative;
  z-index:2;
}
.mega-mobile-offcanvas .menu-parent-ico{
  width:38px;
  height:38px;
  border-radius:12px;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.2);
  color:#fff;
}
.mega-mobile-offcanvas .menu-parent:hover .menu-parent-bg{
  transform:scale(1.09);
}
.mega-mobile-offcanvas .sub-box{
  background:#fff;
  border-radius:0 0 16px 16px;
  border:1px solid #e5e7eb;
  border-top:none;
}
.mega-mobile-offcanvas .sub-box .btn-sub{
  background:#f9fafb;
  border-radius:99px;
  border:none;
  text-align:left;
  padding:.55rem .9rem;
  font-size:.95rem;
}
.mega-mobile-offcanvas .sub-box .btn-sub i{
  font-size:.8rem;
}

/* Diğer menü kutuları */
.mega-mobile-offcanvas .menu-tile{
  background:#fff;
  border-radius:16px;
  padding:1rem 1.1rem;
  display:flex;
  align-items:center;
  gap:.8rem;
  box-shadow:0 8px 18px rgba(15,23,42,.06);
  border:1px solid #e5e7eb;
  text-decoration:none;
  color:#111827;
}
.mega-mobile-offcanvas .menu-tile i{
  font-size:1.4rem;
}
.mega-mobile-offcanvas .menu-tile:hover{
  background:#eff6ff;
}

/* Desktop’ta offcanvas görünmesin – sadece mobil */
@media (min-width: 992px){
  .mega-mobile-offcanvas{
    display:none;
  }
}

/* =========================================================
   HOTEL GALLERY GRID (detay sayfası)
   ========================================================= */
.hotel-gallery-grid{
  display:grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
  grid-template-rows: repeat(2, minmax(0, 1fr));
  gap:.75rem;
}
.hotel-gallery-main{
  grid-row:1 / 3;
  border-radius:1rem;
  overflow:hidden;
}
.hotel-gallery-side{
  border-radius:1rem;
  overflow:hidden;
}
.hotel-gallery-grid img{
  object-fit:cover;
  width:100%;
  height:100%;
  display:block;
}
@media (max-width:991.98px){
  .hotel-gallery-grid{
    display:flex;
    flex-direction:column;
  }
  .hotel-gallery-main,
  .hotel-gallery-side{
    height:auto;
  }
}

/* =========================================================
   SCROLL TOP BAR (detay sayfası)
   ========================================================= */
.scroll-top-bar{
  position: fixed;
  left: 0;
  right: 0;
  top: -100px;
  background: #ffffff;
  border-bottom: 1px solid rgba(15,23,42,.06);
  z-index: 1020;
  opacity: 0;
  transform: translateY(-10px);
  transition: top .3s ease, opacity .3s ease, transform .3s ease;
}
.scroll-top-bar.visible{
  top: 0;
  opacity: 1;
  transform: translateY(0);
}

.scroll-top-bar .scroll-link{
  color:#1d4ed8;
  text-decoration:none;
  padding-bottom:3px;
}
.scroll-top-bar .scroll-link.active{
  border-bottom:2px solid #1d4ed8;
  font-weight:600;
}
.scroll-top-title{
  font-size:.9rem;
  max-width:240px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.page-nav-sticky{
  position:sticky;
  top:72px;
  z-index:15;
}

/* =========================================================
   MİSAFİR COUNTER (GENEL)
   ========================================================= */
.guest-counter{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  background:var(--color-brand-soft);
  padding:12px 16px;
  border-radius:10px;
}
.g-btn{
  width:32px;
  height:32px;
  min-width:32px;
  min-height:32px;
  padding:0;
  border-radius:50%;
  line-height:32px;
  border:1px solid var(--color-brand);
  background:#fff;
  color:var(--color-brand);
  text-align:center;
  font-size:20px;
  font-weight:500;
  transition:background-color .2s,color .2s,border-color .2s;
}
.g-btn:hover{
  background:var(--color-brand);
  color:#fff;
  border-color:var(--color-brand);
}
.g-value{
  min-width:26px;
  text-align:center;
  font-size:20px;
  font-weight:600;
}

/* Misafir dropdown butonu (detay) */
#guestDropdownBtn{
  background-color:#fff !important;
  border-color:#ced4da !important;
  color:var(--color-text) !important;
}
#guestDropdownBtn:hover{
  background-color:#f8f9fa !important;
  border-color:#bfc5ca !important;
  color:var(--color-text) !important;
}
#guestDropdownBtn.show,
#guestDropdownBtn:active,
#guestDropdownBtn:focus{
  background-color:#fff !important;
  border-color:#ced4da !important;
  color:var(--color-text) !important;
  box-shadow:none !important;
}

/* Üst formdaki misafir butonu */
#topGuestDropdownBtn{
  background-color:#fff !important;
  border-color:#ced4da !important;
  color:var(--color-text) !important;
}
#topGuestDropdownBtn:hover{
  background-color:#f8f9fa !important;
  border-color:#bfc5ca !important;
  color:var(--color-text) !important;
}
#topGuestDropdownBtn.show,
#topGuestDropdownBtn:active,
#topGuestDropdownBtn:focus{
  background-color:#fff !important;
  border-color:#ced4da !important;
  color:var(--color-text) !important;
  box-shadow:none !important;
}

/* Misafir dropdown menü z-index */
.guest-dropdown-menu{
  z-index:1055;
}

/* =========================================================
   TARİH KARTLARI (DETAY + ÜST FORM)
   ========================================================= */
.date-card{
  background:#fff;
  border-radius:6px;
  border:1px solid #dde3ec;
  padding:10px 16px;
  cursor:pointer;
  transition:background-color .2s, box-shadow .2s, border-color .2s;
  position:relative;
}
.date-card:hover{
  background:#f8fbff;
  border-color:#bfc9dd;
  box-shadow:0 4px 12px rgba(15,23,42,0.08);
}
.date-icon{
  width:36px;
  height:36px;
  border-radius:999px;
  background:#eef4ff;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#0d6efd;
  flex-shrink:0;
}
.date-main{
  font-size:1rem;
  font-weight:600;
  color:#111827;
  line-height:1.2;
}
.date-sub{
  font-size:.8rem;
  color:#6b7280;
}
.date-card.is-empty .date-main{
  font-weight:500;
  color:#6b7280;
}
.date-card.is-empty .date-sub{
  color:#9ca3af;
}
.date-card input[type="text"]{
  position:absolute;
  inset:0;
  opacity:0;
  pointer-events:none;
  border:0;
  background:transparent;
}

/* =========================================================
   FLATPICKR (MOBİL – DETAY)
   ========================================================= */
#mobileDatePicker .flatpickr-calendar{
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto;
  border-radius: 12px;
  box-shadow: none;
  border: 1px solid #e5e7eb;
}
#mobileDatePicker .flatpickr-innerContainer,
#mobileDatePicker .flatpickr-rContainer,
#mobileDatePicker .flatpickr-days{
  display: block !important;
  width: 100% !important;
}
#mobileDatePicker .dayContainer{
  box-sizing: border-box;
  width: 100% !important;
  max-width: 100% !important;
  display: block !important;
  float: none !important;
  margin: 0 0 2rem !important;
}
#mobileDatePicker .flatpickr-months{
  display: block !important;
  width: 100%;
}
#mobileDatePicker .flatpickr-months .flatpickr-month{
  width: 100% !important;
  justify-content: center;
  margin: 0 !important;
}
#mobileDatePicker .flatpickr-weekdays{
  display: block !important;
  width: 100% !important;
}
#mobileDatePicker .flatpickr-weekdaycontainer{
  display: grid !important;
  grid-template-columns: repeat(7, 1fr);
  width: 100% !important;
}
#mobileDatePicker .flatpickr-weekdaycontainer:nth-child(2){
  display: none !important;
}
#mobileDatePicker .flatpickr-day.selected,
#mobileDatePicker .flatpickr-day.startRange,
#mobileDatePicker .flatpickr-day.endRange{
  background-color:#2563eb !important;
  border-color:#2563eb !important;
  color:#fff !important;
}
#mobileDatePicker .flatpickr-day.inRange{
  background-color:rgba(37,99,235,.08) !important;
}
#mobileDatePicker .flatpickr-day.today{
  border-color: #2563eb !important;
}
#mobileDatePicker .fp-mobile-month-label{
  font-size: 1rem;
}

/* =========================================================
   KATEGORİ HERO + OTEL KARTLARI
   ========================================================= */
.cat-hero {
  border-radius: 1rem;
  background: linear-gradient(135deg, var(--color-brand-soft), #fef9c3);
  padding: 1.75rem 1.5rem;
}
.cat-hero-img {
  border-radius: 1rem;
  object-fit: cover;
  height: 180px;
}
.cat-badge {
  font-size: .8rem;
  border-radius: 999px;
  padding: .15rem .75rem;
  background-color: rgba(15,23,42,.04);
}
.hotel-card {
  border-radius: 1rem;
  overflow: hidden;
  transition: box-shadow .2s ease, transform .2s ease;
}
.hotel-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 35px rgba(15,23,42,.13);
}
.hotel-card-img {
  height: 190px;
  object-fit: cover;
}
.rating-pill {
  display: inline-flex;
  align-items: center;
  gap: .25rem;
  padding: .1rem .55rem;
  border-radius: 999px;
  background: rgba(16,185,129,.08);
  font-size: .8rem;
}
.price-text {
  font-size: 1.05rem;
}
.filters-sticky {
  position: sticky;
  top: 90px;
}
@media (max-width: 991.98px){
  .cat-hero { padding: 1.25rem 1rem; }
  .filters-sticky { position: static; top:auto; }
}

/* =========================================================
   GELİŞMİŞ OTEL KARTI (LISTING)
   ========================================================= */
.hotel-card-advanced{
  border-radius: 1rem;
  overflow: hidden;
  transition: box-shadow .2s ease, transform .2s ease;
  border: 1px solid rgba(15,23,42,.06);
}
.hotel-card-advanced:hover{
  transform: translateY(-2px);
  box-shadow: 0 18px 35px rgba(15,23,42,.13);
}
.hotel-card-img-wrap{
  position: relative;
  height: 190px;
  overflow: hidden;
}
.hotel-card-img-wrap img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .4s ease;
}
.hotel-card-advanced:hover .hotel-card-img-wrap img{
  transform: scale(1.04);
}
.hotel-ribbon{
  position:absolute;
  top:10px;
  left:10px;
  padding: .15rem .55rem;
  border-radius:.75rem;
  font-size:.75rem;
  background:rgba(220,38,38,.9);
  color:#fff;
}
.hotel-ribbon-secondary{
  position:absolute;
  top:10px;
  right:10px;
  padding:.15rem .55rem;
  border-radius:.75rem;
  font-size:.75rem;
  background:rgba(15,23,42,.75);
  color:#fff;
}
.hotel-meta-small{
  font-size:.8rem;
  color:#6b7280;
}
.hotel-chip{
  display:inline-flex;
  align-items:center;
  gap:.25rem;
  padding:.2rem .6rem;
  border-radius:999px;
  border:1px solid rgba(148,163,184,.6);
  background:#f8fafc;
  font-size:.75rem;
  margin-right:.25rem;
  margin-bottom:.25rem;
}
.hotel-price-box{
  text-align:right;
}
.hotel-price-label{
  font-size:.8rem;
  color:#6b7280;
}
.hotel-price-main{
  font-size:1.1rem;
}
.hotel-taglist{
  margin-top:.25rem;
}
@media (max-width: 767.98px){
  .hotel-card-img-wrap{
    height: 170px;
  }
  .hotel-price-box{
    text-align:left;
    margin-top:.5rem;
  }
}

/* =========================================================
   ÜST ARAMA FORMU (OTEL ARA)
   ========================================================= */
#topSearchForm{
  align-items:stretch !important;
}
#topSearchForm > [class*="col-"]{
  display:flex;
  flex-direction:column;
}
#topSearchForm .form-label{
  margin-bottom:.35rem;
}
#topSearchForm > [class*="col-"] > .position-relative,
#topSearchForm > [class*="col-"] > .date-card,
#topSearchForm > [class*="col-"] > .dropdown,
#topSearchForm > [class*="col-"] > .d-grid{
  flex:1;
  display:flex;
  align-items:stretch;
}
#topSearchForm .date-card,
#topSearchForm #topGuestDropdownBtn,
#topSearchForm .btn-lg{
  justify-content:flex-start;
}
#topSearchForm .date-card > .d-flex{
  width:100%;
}
#topSearchForm .d-grid{
  align-items:stretch;
}
#topSearchForm .d-grid > .btn{
  flex:1;
  display:flex;
  align-items:center;
  justify-content:center;
}
#topSearchForm .kat-input-wrap{
  background:#fff;
  border-radius:6px;
  border:1px solid #dde3ec;
  padding:10px 16px;
  min-height:56px;
  display:flex;
  align-items:center;
}
#topSearchForm .kat-input-wrap .form-control{
  border:0;
  box-shadow:none;
  padding:0;
  height:auto;
}
#topSearchForm .kat-input-wrap .form-control:focus{
  outline:0;
  box-shadow:none;
}
#katAutocompleteList{
  top:100%;
  left:0;
  right:0;
  margin-top:4px;
}
#topSearchForm .btn-submit-wrap{
  min-height:56px;
  display:flex;
  align-items:center;
}
#topSearchForm .btn-submit-wrap .btn-lg{
  flex:1;
  display:flex;
  align-items:center;
  justify-content:center;
  height:100%;
  border-radius:6px;
}

/* =========================================================
   DİĞER
   ========================================================= */
.overlay-more {
  position: relative;
  overflow: hidden;
}
.overlay-more:after {
  content:'';
  position:absolute;
  inset:0;
  background-color:rgba(0,0,0,0.5);
  border-radius:8px;
  transition:background-color .3s ease;
  z-index:1;
}
.overlay-more:hover:after {
  background-color:rgba(0,0,0,0.7);
}
.overlay-text {
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  color:#fff;
  font-size:1.2rem;
  font-weight:bold;
  text-align:center;
  z-index:10;
  transition:opacity .3s ease;
}
.overlay-more img {
  transition:transform .3s ease;
}
.overlay-more:hover img {
  transform:scale(1.05);
}
.sticky-top { top: 86px; }
.hide{display:none!important;}

/* FOOTER (klasik) */
.footer{
  background:#fff;
  border-top:1px solid var(--color-border-soft);
}
.footer .title{font-weight:700}
.footer a{
  text-decoration:none;
  color:#283a52;
}
.footer .subtle{color:#6b7b92}
.footer-brandbar{background:#f1f3f7}
.copyright{
  color:#6b7b92;
  font-size:.92rem;
}

/* =======================  FOOTER STYLE BLOĞU ======================= */
.footer-style {
  background: var(--footer-bg);
  color: var(--footer-text);
  font-size: .95rem;
}
.footer-style a {
  color: var(--footer-text);
  text-decoration: none;
}
.footer-style a:hover {
  color: #ffffff;
}
.footer-style .footer-top {
  padding-bottom: 2rem;
  margin-bottom: 2rem;
}
.footer-style .footer-brand-title {
  font-size: 1.1rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: #ffffff;
}
.footer-style .footer-phone {
  font-weight: 600;
  color: #ffffff;
}
.footer-style .footer-phone i {
  font-size: 1.2rem;
}
.footer-style .footer-title {
  font-weight: 600;
  font-size: .95rem;
  letter-spacing: .08em;
  text-transform: uppercase;
  margin-bottom: 1rem;
  color: #ffffff;
}
.footer-style .footer-list {
  list-style: none;
  padding: 0;
  margin: 0;
}
.footer-style .footer-list li + li {
  margin-top: .35rem;
}
.footer-style .footer-list a {
  font-size: .92rem;
  opacity: .9;
}
.footer-style .footer-list a:hover {
  opacity: 1;
}
.footer-style .footer-social {
  display: flex;
  gap: .5rem;
}
.footer-style .footer-social a {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,.2);
  display: grid;
  place-items: center;
  font-size: 1.1rem;
  transition: background-color .2s, border-color .2s, color .2s;
}
.footer-style .footer-social a:hover {
  background-color: #ffffff;
  color: #31353d !important;
  border-color: #ffffff;
}
.footer-style .footer-badges {
  border-top: 1px solid rgba(255,255,255,.08);
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}
.footer-style .footer-badges img {
  height: 56px;
  object-fit: contain;
}
@media (max-width: 576px) {
  .footer-style .footer-badges img {
    height: 40px;
  }
}
.footer-style .footer-bottom {
  border-top: 1px solid rgba(255,255,255,.08);
  padding-top: 1rem;
  padding-bottom: 1.5rem;
  font-size: .84rem;
  color: #c3c7cf;
}
.footer-style .footer-bottom-links a + a {
  margin-left: 1rem;
}
.footer-style small {
  font-size: .82rem;
}

/* ======================= KATEGORİ KART ÖZEL CSS ======================= */
.category-card {
  position: relative;
  border-radius: .75rem;
  overflow: hidden;
  background-size: cover;
  background-position: center;
  min-height: 220px;
}
.category-card-lg {
  min-height: 320px;
}
.category-card-top {
  min-height: 220px;
}
.category-card-bottom {
  min-height: 180px;
}
.category-card .card-img-overlay {
  transition: background-color .2s ease;
}
.category-card:hover .card-img-overlay.hover-bg-light {
  background-color: rgba(0,0,0,.25) !important;
}

.d-flex { 
  display: flex !important; 
}
.w-100 { 
  width: 100% !important; 
}

/* --- HOVER EFEKTLERİ --- */
.hover-bg-light, 
.card-content-group,
.reveal-content,
.sub-links a {
  transition: all 0.4s ease-out; 
}
.hover-bg-light {
  background-color: rgba(0, 0, 0, 0.1) !important;
}
.hover-bg-light:hover {
  background-color: rgba(0, 0, 0, 0.5) !important;
}
.card-content-group {
  position: relative;
  transform: translateY(0); 
}
.reveal-content {
  opacity: 0; 
  transform: translateY(15px); 
}
.hover-slide:hover .card-content-group {
  transform: translateY(-50px);
}
.hover-slide:hover .reveal-content {
  opacity: 1;
  transform: translateY(0);
}
.sub-links a {
  opacity: 0.9; 
}
.sub-links a:hover {
  opacity: 1; 
}

#yorumlar .card { 
  border:1px solid rgba(14,165,233,.12); 
  border-radius:16px; 
}
#yorumlar .bi-star-fill, 
#yorumlar .bi-star { 
  font-size: .95rem; 
}

/* =========================================================
   GLOBAL TARİH CANVAS (globalDateModal)
   ========================================================= */

#globalDateModal .modal-dialog {
  max-width: 520px;
  margin: 0 auto;
}
#globalDatePicker {
  padding: 0 !important;
  width: 100%;
  box-sizing: border-box;
}
#globalDatePicker .flatpickr-calendar.inline {
  width: 100% !important;
  max-width: 100% !important;
  border: 0;
  box-shadow: none;
  background: transparent;
}
#globalDatePicker .flatpickr-innerContainer {
  display: block !important;
  width: 100% !important;
  overflow: visible !important;
  padding: 0 !important;
  margin: 0 !important;
}
#globalDatePicker .flatpickr-rContainer {
  width: 100% !important;
  display: block !important;
  padding: 0 !important;
  margin: 0 !important;
}
#globalDatePicker .flatpickr-months {
  display: flex !important;
  justify-content: center !important;
  padding: 8px 16px 12px !important;
  margin: 0 !important;
  border-bottom: 1px solid #e5e7eb !important;
}
#globalDatePicker .flatpickr-months .flatpickr-month:nth-of-type(2) {
  display: none !important;
}
#globalDatePicker .flatpickr-weekdays {
  display: block !important;
  width: 100% !important;
  padding: 0 16px 8px !important;
  margin: 20px 0px !important;
  box-sizing: border-box !important;
}
#globalDatePicker .flatpickr-weekdaycontainer {
  display: grid !important;
  grid-template-columns: repeat(7, 1fr) !important;
  grid-gap: 0 !important;
  gap: 0 !important;
  width: 100% !important;
  text-align: center !important;
  margin: 0 !important;
  padding: 0 !important;
}
#globalDatePicker .flatpickr-weekdaycontainer:nth-child(n+2) {
  display: none !important;
}
#globalDatePicker .flatpickr-days {
  display: block !important;
  width: 100% !important;
  padding: 16px !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}
#globalDatePicker .flatpickr-days .dayContainer {
  display: grid !important;
  grid-template-columns: repeat(7, 1fr) !important;
  grid-gap: 0 !important;
  gap: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 100% !important;
  margin: 0 0 16px 0 !important;
  padding: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
}
#globalDatePicker .flatpickr-day {
  width: 100% !important;
  max-width: none !important;
  height: 40px !important;
  line-height: 40px !important;
  margin: 0 !important;
  border-radius: 0 !important;
  border: 1px solid transparent !important;
  position: relative !important;
  aspect-ratio: 1 !important;
}
#globalDatePicker .flatpickr-days .dayContainer:first-child {
  margin-top: 0 !important;
}
#globalDatePicker .flatpickr-days .dayContainer:last-child {
  margin-bottom: 8px !important;
}
#globalDatePicker .flatpickr-day:hover,
#globalDatePicker .flatpickr-day:focus {
  background: #3b82f6 !important;
  color: white !important;
  border-color: #3b82f6 !important;
}
#globalDatePicker .flatpickr-day.selected {
  background: #2563eb !important;
  color: white !important;
  border-color: #2563eb !important;
  border-radius: 30px;
}
#globalDatePicker .flatpickr-day.inRange {
  background: rgba(37, 99, 235, 0.1) !important;
  border-color: rgba(37, 99, 235, 0.2) !important;
}
#globalDatePicker .fp-mobile-month-label {
  padding: 8px 16px 4px !important;
  margin: 0 !important;
  font-weight: 600;
  font-size: 1.1rem;
  color: #111827;
  text-align: center;
  background: #f8fafc;
  border-radius: 0;
}
#globalDateModal .modal-body {
  padding: 0 !important;
}
#globalDateHidden {
  display: none !important;
}
@media (max-width: 480px) {
  #globalDateModal .modal-dialog {
    margin: 0;
    max-width: none;
  }
  #globalDatePicker .flatpickr-day {
    height: 38px !important;
    line-height: 38px !important;
    font-size: 0.85rem;
  }
  #globalDatePicker .flatpickr-weekdays,
  #globalDatePicker .flatpickr-days {
    padding: 0 12px !important;
  }
  #globalDatePicker .fp-mobile-month-label {
    padding: 6px 12px 2px !important;
    font-size: 1rem;
  }
}

.nav.nav-tabs {
  border-bottom: none !important;
  gap: .35rem;
  padding-bottom: .35rem;
}

/* TAB butonu */
.nav.nav-tabs .nav-link {
  border: none !important;
  background: var(--color-bg-soft);
  color: var(--color-text-muted);
  font-weight: 500;
  border-radius: .65rem;
  padding: .55rem 1.1rem;
  transition: all .25s ease;
}

/* Hover efekti */
.nav.nav-tabs .nav-link:hover {
  background: var(--color-brand-soft);
  color: var(--color-brand);
}

/* Aktif tab */
.nav.nav-tabs .nav-link.active {
  background: var(--color-brand);
  color: #fff;
  font-weight: 600;
  box-shadow: 0 3px 8px rgba(0,0,0,.15);
}

/* Kaydırma çubuğu gizle */
.nav.nav-tabs::-webkit-scrollbar {
  display: none;
}


/* Chrome, Safari ve Opera için */
.d-flex.overflow-auto::-webkit-scrollbar {
  display: none;
}

/* IE, Edge ve Firefox için */
.d-flex.overflow-auto {
  -ms-overflow-style: none;  /* IE ve Edge */
  scrollbar-width: none;  /* Firefox */
}
