/* Villa detail pages - final modern system-color layer */
.modern-villa-gallery{
  background:var(--tema-ink,#10223f) !important;
}

.featured-slick,
.featured-slick-slide,
.featured-slick-slide .slick-slide,
.featured-slick-slide .slick-slide img{
  height:clamp(380px,42vw,560px) !important;
}

.featured-slick-slide .slick-slide img{
  object-fit:cover !important;
}

.gallery-counter{
  right:28px !important;
  bottom:24px !important;
  min-height:38px !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  padding:0 14px !important;
  border:1px solid rgba(255,255,255,.18) !important;
  border-radius:999px !important;
  background:rgba(16,34,63,.78) !important;
  color:#fff !important;
  backdrop-filter:blur(8px) !important;
}

.vc-property-head,
.modern-villa-info{
  background:var(--tema-soft,#f5f7fb) !important;
  border-bottom:1px solid var(--tema-border,#dbe4f0) !important;
  padding:30px 0 26px !important;
}

.vc-head-grid,
.villa-info-grid{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 320px !important;
  gap:24px !important;
  align-items:start !important;
}

.vc-breadcrumb,
.villa-breadcrumb{
  margin:0 0 14px !important;
  color:var(--tema-muted,#667085) !important;
  font-size:13px !important;
}

.vc-breadcrumb a,
.villa-breadcrumb a{
  color:var(--ana-renk,#083b83) !important;
  font-weight:650 !important;
  text-decoration:none !important;
}

.vc-title,
.villa-title,
.modern-villa-info h1{
  margin:0 !important;
  color:var(--tema-ink,#10223f) !important;
  font-size:clamp(30px,3vw,44px) !important;
  line-height:1.12 !important;
  font-weight:650 !important;
  letter-spacing:0 !important;
}

.vc-location,
.villa-location{
  margin-top:12px !important;
  color:var(--tema-muted,#667085) !important;
  font-size:15px !important;
}

.vc-specs,
.villa-features-list{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
  margin-top:18px !important;
}

.vc-spec,
.villa-feature-badge,
.modern-villa-info .info-badge{
  min-height:38px !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  padding:0 12px !important;
  border:1px solid var(--tema-border,#dbe4f0) !important;
  border-radius:999px !important;
  background:#fff !important;
  color:var(--tema-ink,#10223f) !important;
  font-size:13px !important;
  font-weight:650 !important;
  box-shadow:none !important;
}

.vc-spec i,
.villa-feature-badge i,
.modern-villa-info .info-badge i{
  color:var(--ana-renk,#083b83) !important;
}

.vc-price-card,
.modern-reservation-box{
  border:1px solid var(--tema-border,#dbe4f0) !important;
  border-radius:10px !important;
  background:#fff !important;
  box-shadow:0 12px 28px rgba(16,34,63,.075) !important;
  overflow:hidden !important;
}

.vc-price-card{
  padding:20px !important;
}

.vc-price-card strong,
.reservation-price-header .price{
  color:#fff !important;
}

.vc-price-card strong{
  color:var(--ana-renk,#083b83) !important;
  font-size:32px !important;
  font-weight:750 !important;
}

.vc-price-card .btn,
.modern-btn-calculate,
.modern-btn-submit,
#tfiyat,
#tgonder{
  min-height:46px !important;
  border:0 !important;
  border-radius:8px !important;
  background:var(--ana-renk,#083b83) !important;
  color:#fff !important;
  font-weight:750 !important;
  box-shadow:none !important;
}

.vc-price-card .btn:hover,
.modern-btn-calculate:hover,
.modern-btn-submit:hover,
#tfiyat:hover,
#tgonder:hover{
  background:var(--ikincil-renk,#24b7ee) !important;
  color:#fff !important;
}

.vc-trust-strip{
  padding:18px 0 !important;
  background:#fff !important;
  border-bottom:1px solid var(--tema-border,#dbe4f0) !important;
}

.vc-trust-grid{
  max-width:1240px !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:14px !important;
}

.vc-trust{
  border:1px solid var(--tema-border,#dbe4f0) !important;
  border-radius:10px !important;
  background:#fff !important;
  padding:16px !important;
  box-shadow:0 8px 22px rgba(16,34,63,.055) !important;
}

.vc-trust i{
  background:color-mix(in srgb,var(--ana-renk,#083b83) 10%,#fff) !important;
  color:var(--ana-renk,#083b83) !important;
}

.gray.pt-0{
  background:var(--tema-soft,#f5f7fb) !important;
  padding-top:28px !important;
}

.vc-section-tabs{
  max-width:1240px !important;
  margin:0 auto 18px !important;
  padding:8px !important;
  border:1px solid var(--tema-border,#dbe4f0) !important;
  border-radius:10px !important;
  background:#fff !important;
  box-shadow:0 10px 24px rgba(16,34,63,.055) !important;
}

.vc-section-tabs a{
  min-height:38px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 14px !important;
  border:0 !important;
  border-radius:8px !important;
  color:var(--tema-muted,#667085) !important;
  font-size:13px !important;
  font-weight:650 !important;
  text-decoration:none !important;
}

.vc-section-tabs a.active,
.vc-section-tabs a:hover{
  background:var(--ana-renk,#083b83) !important;
  color:#fff !important;
}

.villa-detail-flow .modern-price-section,
.villa-detail-flow .block-wrap,
.vc-info-grid,
.villa-tabs-wrapper,
.modern-price-section{
  border:1px solid var(--tema-border,#dbe4f0) !important;
  border-radius:10px !important;
  background:#fff !important;
  box-shadow:0 10px 24px rgba(16,34,63,.06) !important;
  overflow:hidden !important;
}

.villa-detail-flow .modern-price-title,
.villa-detail-flow .block-title,
.modern-price-title,
.modern-section-title,
.contact-box-title{
  margin:0 !important;
  padding:18px 22px 14px !important;
  border-bottom:1px solid var(--tema-border,#dbe4f0) !important;
  color:var(--tema-ink,#10223f) !important;
  font-size:20px !important;
  line-height:1.25 !important;
  font-weight:650 !important;
}

.villa-detail-flow .modern-price-title:before,
.villa-detail-flow .block-title:before{
  display:none !important;
}

.block-body,
.modern-tab-section,
.villa-tabs-content{
  color:#435464 !important;
  font-size:15px !important;
  line-height:1.75 !important;
}

.villa-detail-flow .modern-price-item{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 170px 170px !important;
  min-height:70px !important;
  margin:0 0 12px !important;
  border:1px solid var(--tema-border,#dbe4f0) !important;
  border-radius:10px !important;
  background:var(--tema-soft,#f5f7fb) !important;
  overflow:hidden !important;
}

.villa-detail-flow .price-daily,
.villa-detail-flow .price-weekly{
  background:#fff !important;
  color:var(--tema-ink,#10223f) !important;
  border-left:1px solid var(--tema-border,#dbe4f0) !important;
}

.vc-price-owner-note,
.vc-short-opportunity span{
  color:var(--tema-muted,#667085) !important;
}

.vc-short-opportunity span{
  background:var(--ana-renk,#083b83) !important;
  color:#fff !important;
}

.villa-detail-flow .vc-detail-benefits{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:16px !important;
}

.villa-detail-flow .vc-benefit-card{
  min-height:auto !important;
  padding:22px !important;
  border:1px solid var(--tema-border,#dbe4f0) !important;
  border-radius:10px !important;
  background:#fff !important;
  color:var(--tema-ink,#10223f) !important;
}

.villa-detail-flow .vc-benefit-card:before{
  display:none !important;
}

.villa-detail-flow .vc-benefit-card i{
  position:static !important;
  width:44px !important;
  height:44px !important;
  margin-bottom:14px !important;
  border:0 !important;
  border-radius:50% !important;
  background:var(--ana-renk,#083b83) !important;
  color:#fff !important;
  font-size:20px !important;
}

.villa-detail-flow .vc-benefit-card strong{
  margin:0 0 8px !important;
  color:var(--tema-ink,#10223f) !important;
  font-size:18px !important;
  font-weight:650 !important;
}

.villa-detail-flow .vc-benefit-card span{
  color:var(--tema-muted,#667085) !important;
  font-size:14px !important;
}

.villa-detail-flow .vc-benefit-card a{
  color:var(--ana-renk,#083b83) !important;
}

.reservation-price-header{
  background:var(--ana-renk,#083b83) !important;
  color:#fff !important;
  padding:22px !important;
}

.reservation-form-body{
  padding:20px !important;
}

.modern-form-group label,
.reservation-title h4{
  color:var(--tema-ink,#10223f) !important;
  font-weight:650 !important;
}

.modern-date-input-wrapper,
.modern-form-group input{
  border:1px solid var(--tema-border,#dbe4f0) !important;
  border-radius:8px !important;
  background:var(--tema-soft,#f5f7fb) !important;
}

.reservation-alert{
  border:1px solid color-mix(in srgb,var(--ikincil-renk,#24b7ee) 34%,var(--tema-border,#dbe4f0)) !important;
  border-radius:8px !important;
  background:color-mix(in srgb,var(--ikincil-renk,#24b7ee) 10%,#fff) !important;
  color:var(--tema-ink,#10223f) !important;
}

.villa-tabs-header{
  padding:8px !important;
  border-bottom:1px solid var(--tema-border,#dbe4f0) !important;
  background:#fff !important;
  gap:8px !important;
}

.villa-tab-btn{
  min-height:42px !important;
  border:0 !important;
  border-radius:8px !important;
  color:var(--tema-muted,#667085) !important;
  font-weight:650 !important;
}

.villa-tab-btn:hover,
.villa-tab-btn.villa-tab-active{
  background:var(--ana-renk,#083b83) !important;
  color:#fff !important;
}

.modern-distance-grid,
.features-grid,
.villa-detail-flow .modern-distance-grid{
  gap:12px !important;
}

.modern-distance-item,
.modern-feature-item,
.feature-item,
.distance-item{
  border:1px solid var(--tema-border,#dbe4f0) !important;
  border-radius:8px !important;
  background:#fff !important;
  box-shadow:none !important;
}

.vc-calendar-panel,
#musaitlik{
  border-radius:10px !important;
  background:#fff !important;
}

.vc-calendar-panel .musaitliktakvimi-shared .ui-datepicker-header,
.musaitliktakvimi-shared .ui-datepicker-header{
  background:var(--ana-renk,#083b83) !important;
}

.vc-sidebar-mini{
  border:1px solid var(--tema-border,#dbe4f0) !important;
  border-radius:10px !important;
  background:#fff !important;
  color:var(--tema-muted,#667085) !important;
  box-shadow:0 8px 20px rgba(16,34,63,.055) !important;
}

.vc-mobile-reserve{
  border-top:1px solid var(--tema-border,#dbe4f0) !important;
  background:#fff !important;
}

.vc-mobile-reserve .btn{
  background:var(--ana-renk,#083b83) !important;
  border:0 !important;
  color:#fff !important;
}

@media (max-width:991px){
  .vc-head-grid,
  .villa-info-grid{
    grid-template-columns:1fr !important;
  }
  .vc-trust-grid,
  .villa-detail-flow .vc-detail-benefits{
    grid-template-columns:1fr !important;
  }
  .villa-detail-flow .modern-price-item{
    grid-template-columns:1fr !important;
  }
  .villa-detail-flow .price-amounts{
    grid-template-columns:1fr 1fr !important;
  }
}

@media (max-width:767px){
  .featured-slick,
  .featured-slick-slide,
  .featured-slick-slide .slick-slide,
  .featured-slick-slide .slick-slide img{
    height:320px !important;
  }
  .vc-section-tabs{
    overflow-x:auto !important;
    white-space:nowrap !important;
  }
  .vc-specs,
  .villa-features-list{
    gap:8px !important;
  }
}

/* Detail tab anchor and spacing fix */
.villa-detail-flow #vc-section-tabs,
#vc-section-tabs.vc-section-tabs{
  position:sticky !important;
  top:78px !important;
  z-index:45 !important;
  margin:0 0 22px !important;
  padding:6px !important;
  min-height:46px !important;
  height:auto !important;
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:4px !important;
  overflow:visible !important;
  border:1px solid var(--tema-border,#dbe4f0) !important;
  border-radius:10px !important;
  background:#fff !important;
  box-shadow:0 10px 24px rgba(16,34,63,.06) !important;
}

#vc-section-tabs.vc-section-tabs a{
  height:34px !important;
  min-height:34px !important;
  border:0 !important;
  border-radius:7px !important;
  color:var(--tema-muted,#667085) !important;
  font-size:12px !important;
  font-weight:600 !important;
  line-height:1 !important;
}

#vc-section-tabs.vc-section-tabs a.active,
#vc-section-tabs.vc-section-tabs a:hover{
  background:var(--ana-renk,#083b83) !important;
  color:#fff !important;
  border:0 !important;
}

.villa-detail-flow #fiyatlar,
.villa-detail-flow #musaitlik,
.villa-detail-flow #aciklama,
.villa-detail-flow #mesafeler,
.villa-detail-flow #ozellikler,
.villa-detail-flow #yorumlar,
.villa-detail-flow #onemli-bilgiler{
  scroll-margin-top:132px !important;
  margin-bottom:20px !important;
}

.villa-detail-flow #musaitlik{
  margin-top:0 !important;
}

.villa-detail-flow .tab-content{
  padding-top:0 !important;
}

.villa-detail-flow .tab-pane{
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
}

@media(max-width:991px){
  .villa-detail-flow #vc-section-tabs,
  #vc-section-tabs.vc-section-tabs{
    top:64px !important;
    display:flex !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    white-space:nowrap !important;
    gap:6px !important;
    margin-bottom:16px !important;
  }

  #vc-section-tabs.vc-section-tabs a{
    flex:0 0 auto !important;
    min-width:104px !important;
    padding:0 12px !important;
  }
}

/* Konum ve cevre */
.vc-nearby-section{
  border:1px solid var(--tema-border,#dbe4f0) !important;
  border-radius:12px !important;
  background:#fff !important;
  overflow:hidden !important;
  box-shadow:0 12px 30px rgba(16,34,63,.06) !important;
}

.vc-nearby-head{
  padding:20px 24px 12px !important;
  border-bottom:0 !important;
}

.vc-nearby-head .block-title{
  margin:0 0 6px !important;
  color:var(--ana-renk,#083b83) !important;
  font-size:20px !important;
  font-weight:600 !important;
}

.vc-nearby-head p{
  margin:0 !important;
  color:var(--tema-muted,#667085) !important;
  font-size:14px !important;
}

.vc-nearby-layout{
  display:grid !important;
  grid-template-columns:minmax(250px,290px) minmax(0,1fr) !important;
  gap:24px !important;
  align-items:start !important;
}

.vc-nearby-map-card{
  position:relative !important;
  min-height:470px !important;
  border-radius:18px !important;
  overflow:hidden !important;
  background:#dce8ef !important;
  box-shadow:0 16px 34px rgba(16,34,63,.12) !important;
}

.vc-map-preview{
  position:absolute !important;
  inset:0 !important;
  background:
    linear-gradient(135deg,rgba(255,255,255,.18),rgba(255,255,255,0)),
    repeating-linear-gradient(35deg,transparent 0 42px,rgba(255,255,255,.55) 43px 46px),
    repeating-linear-gradient(125deg,transparent 0 58px,rgba(255,255,255,.5) 59px 62px),
    #b8d3df !important;
}

.vc-map-marker{
  position:absolute !important;
  left:50% !important;
  top:45% !important;
  width:180px !important;
  min-height:138px !important;
  transform:translate(-50%,-50%) !important;
  border-radius:18px !important;
  background:#fff !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:14px !important;
  color:var(--tema-ink,#10223f) !important;
  box-shadow:0 18px 36px rgba(16,34,63,.16) !important;
}

.vc-map-marker i{
  color:var(--ana-renk,#083b83) !important;
  font-size:36px !important;
}

.vc-map-marker strong{
  font-size:17px !important;
  font-weight:700 !important;
}

.vc-map-route{
  position:absolute !important;
  left:24px !important;
  right:24px !important;
  bottom:22px !important;
  height:52px !important;
  border-radius:12px !important;
  background:#fff !important;
  color:var(--tema-ink,#10223f) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:14px !important;
  font-weight:700 !important;
  text-decoration:none !important;
  box-shadow:0 14px 28px rgba(16,34,63,.14) !important;
}

.vc-nearby-content{
  min-width:0 !important;
  display:grid !important;
  grid-template-rows:auto auto !important;
  gap:14px !important;
  align-content:start !important;
}

.vc-nearby-featured{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:16px !important;
  margin-bottom:0 !important;
}

.vc-nearby-photo{
  position:relative !important;
  min-height:190px !important;
  border-radius:18px !important;
  overflow:hidden !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-end !important;
  padding:18px 20px !important;
  background-size:cover !important;
  background-position:center !important;
  color:#fff !important;
  text-decoration:none !important;
  box-shadow:0 14px 28px rgba(16,34,63,.16) !important;
}

.vc-nearby-photo:before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.72)) !important;
}

.vc-nearby-photo span,
.vc-nearby-photo strong,
.vc-nearby-photo small{
  position:relative !important;
  z-index:1 !important;
}

.vc-nearby-photo span{
  align-self:flex-start !important;
  margin-bottom:auto !important;
  padding:5px 11px !important;
  border-radius:999px !important;
  background:var(--ana-renk,#083b83) !important;
  color:#fff !important;
  font-size:11px !important;
  font-weight:700 !important;
  text-transform:uppercase !important;
}

.vc-nearby-photo strong{
  font-size:22px !important;
  line-height:1.1 !important;
  font-weight:700 !important;
  color:#fff !important;
  text-shadow:0 1px 4px rgba(0,0,0,.28) !important;
}

.vc-nearby-photo small{
  margin-top:6px !important;
  color:#fff !important;
  font-size:13px !important;
  font-weight:600 !important;
}

.vc-nearby-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px !important;
  grid-auto-rows:1fr !important;
  align-items:stretch !important;
}

.vc-nearby-item{
  min-height:92px !important;
  display:flex !important;
  align-items:flex-start !important;
  gap:10px !important;
  padding:14px 16px !important;
  border:1px solid var(--tema-border,#dbe4f0) !important;
  border-radius:12px !important;
  background:#fff !important;
  box-shadow:0 8px 18px rgba(16,34,63,.055) !important;
  overflow:hidden !important;
}

.vc-nearby-item > div{
  min-width:0 !important;
  display:flex !important;
  flex-direction:column !important;
}

.vc-nearby-item i{
  width:34px !important;
  height:34px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  color:var(--ana-renk,#083b83) !important;
  font-size:17px !important;
  flex:0 0 auto !important;
}

.vc-nearby-item span{
  display:block !important;
  color:#98a2b3 !important;
  font-size:12px !important;
  line-height:1.2 !important;
  font-weight:700 !important;
  text-transform:none !important;
  letter-spacing:0 !important;
  margin-bottom:7px !important;
  word-break:normal !important;
  overflow-wrap:break-word !important;
  hyphens:none !important;
}

.vc-nearby-item strong{
  display:block !important;
  color:var(--tema-ink,#10223f) !important;
  font-size:14px !important;
  line-height:1.25 !important;
  font-weight:700 !important;
  word-break:normal !important;
  overflow-wrap:break-word !important;
  hyphens:none !important;
}

.vc-nearby-item small{
  display:block !important;
  margin-top:6px !important;
  color:var(--tema-muted,#667085) !important;
  font-size:12px !important;
  line-height:1.35 !important;
  word-break:normal !important;
  overflow-wrap:break-word !important;
  hyphens:none !important;
}

.vc-nearby-empty{
  grid-column:1/-1 !important;
  padding:18px !important;
  border:1px dashed var(--tema-border,#dbe4f0) !important;
  border-radius:12px !important;
  color:var(--tema-muted,#667085) !important;
}

@media(max-width:991px){
  .vc-nearby-layout{
    grid-template-columns:1fr !important;
  }
  .vc-nearby-map-card{
    min-height:320px !important;
  }
  .vc-nearby-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:575px){
  .vc-nearby-featured,
  .vc-nearby-grid{
    grid-template-columns:1fr !important;
  }
  .vc-nearby-head{
    padding:18px 16px 8px !important;
  }
}

/* Nearby section alignment hotfix */
.villa-detail-flow .vc-nearby-section > .block-body{
  padding:18px 20px 22px !important;
}

.villa-detail-flow .vc-nearby-layout{
  grid-template-columns:minmax(250px,290px) minmax(0,1fr) !important;
  gap:18px !important;
  align-items:start !important;
}

.villa-detail-flow .vc-nearby-map-card{
  min-height:430px !important;
}

.villa-detail-flow .vc-nearby-content{
  display:grid !important;
  grid-template-rows:auto auto !important;
  gap:14px !important;
  align-content:start !important;
}

.villa-detail-flow .vc-nearby-featured{
  margin-bottom:0 !important;
}

.villa-detail-flow .vc-nearby-grid{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  grid-auto-rows:1fr !important;
  align-items:stretch !important;
}

.villa-detail-flow .vc-nearby-item{
  height:100% !important;
  align-items:flex-start !important;
  gap:10px !important;
  padding:14px !important;
}

.villa-detail-flow .vc-nearby-item > div{
  min-width:0 !important;
  display:flex !important;
  flex-direction:column !important;
}

.villa-detail-flow .vc-nearby-item span,
.villa-detail-flow .vc-nearby-item strong,
.villa-detail-flow .vc-nearby-item small{
  word-break:normal !important;
  overflow-wrap:normal !important;
  hyphens:none !important;
}

.villa-detail-flow .vc-nearby-item span{
  text-transform:none !important;
  letter-spacing:0 !important;
  line-height:1.2 !important;
}

.villa-detail-flow .vc-nearby-item strong{
  line-height:1.25 !important;
}

.villa-detail-flow .vc-nearby-item small{
  line-height:1.35 !important;
}

.villa-detail-flow .vc-nearby-photo strong{
  display:-webkit-box !important;
  -webkit-box-orient:vertical !important;
  -webkit-line-clamp:2 !important;
  overflow:hidden !important;
}

@media(max-width:1199px){
  .villa-detail-flow .vc-nearby-layout{
    grid-template-columns:1fr !important;
  }
  .villa-detail-flow .vc-nearby-map-card{
    min-height:330px !important;
  }
  .villa-detail-flow .vc-nearby-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:680px){
  .villa-detail-flow .vc-nearby-grid{
    grid-template-columns:1fr !important;
  }
}
