:root{
  --primary:#0b7285;      /* teal - seyahat teması */
  --primary-dark:#095c6b;
  --accent:#f59f00;       /* amber vurgusu */
  --dark:#1b2b34;
  --light:#f5f8fa;
}
*{scroll-behavior:smooth}
body{font-family:'Segoe UI',system-ui,-apple-system,Roboto,Arial,sans-serif;color:var(--dark);background:#fff}
a{text-decoration:none}

/* Renk yardımcıları */
.text-primary{color:var(--primary)!important}
.btn-primary{background:var(--primary);border-color:var(--primary)}
.btn-primary:hover{background:var(--primary-dark);border-color:var(--primary-dark)}
.btn-accent{background:var(--accent);border-color:var(--accent);color:#fff}
.btn-accent:hover{filter:brightness(.95);color:#fff}
.bg-primary-soft{background:var(--light)}

/* Header */
.topbar{background:var(--dark);color:#cfe3e8;padding:.4rem 0;font-size:.85rem}
.topbar .lang-link{color:#cfe3e8;font-weight:600}
.topbar .lang-link.active{color:#fff;text-decoration:underline}
.navbar-brand{font-size:1.35rem;color:var(--primary)!important}
.navbar .nav-link{font-weight:500}
.navbar .nav-link:hover{color:var(--primary)}

/* Hero */
.hero{
  position:relative;min-height:480px;display:flex;align-items:center;color:#fff;
  background:linear-gradient(rgba(11,58,72,.55),rgba(11,58,72,.65)),
             url('https://images.unsplash.com/photo-1476514525535-07fb3b4ae5f1?w=1600&q=80') center/cover;
}
.hero h1{font-size:2.8rem;font-weight:800;text-shadow:0 2px 12px rgba(0,0,0,.3)}
.hero .search-box{background:rgba(255,255,255,.95);border-radius:14px;padding:1.25rem}
@media(max-width:768px){.hero h1{font-size:1.9rem}.hero{min-height:380px}}

/* Kartlar */
.tour-card,.blog-card{
  border:none;border-radius:14px;overflow:hidden;background:#fff;
  box-shadow:0 4px 18px rgba(0,0,0,.07);transition:transform .25s,box-shadow .25s;height:100%
}
.tour-card:hover,.blog-card:hover{transform:translateY(-6px);box-shadow:0 12px 30px rgba(0,0,0,.13)}
.tour-card .card-img,.blog-card .card-img{height:210px;object-fit:cover;width:100%}
.tour-card .price-badge{
  position:absolute;top:12px;right:12px;background:var(--accent);color:#fff;
  padding:.35rem .7rem;border-radius:30px;font-weight:700;font-size:.9rem
}
.tour-card .cat-badge{
  position:absolute;top:12px;left:12px;background:rgba(11,114,133,.9);color:#fff;
  padding:.25rem .6rem;border-radius:30px;font-size:.75rem
}
.tour-meta{font-size:.85rem;color:#6c757d}
.tour-meta i{color:var(--primary)}

/* Bölüm başlıkları */
.section-title{position:relative;font-weight:800;margin-bottom:.25rem}
.section-title:after{content:"";display:block;width:60px;height:4px;background:var(--accent);border-radius:4px;margin-top:.6rem}
.section-sub{color:#6c757d}

/* Kategori pill */
.cat-pill{
  display:inline-block;padding:.5rem 1.1rem;border:1px solid #dee2e6;border-radius:30px;
  margin:.25rem;color:var(--dark);font-weight:500;transition:.2s
}
.cat-pill:hover,.cat-pill.active{background:var(--primary);color:#fff;border-color:var(--primary)}

/* Detay */
.tour-hero{height:420px;object-fit:cover;width:100%;border-radius:16px}
.detail-box{background:var(--light);border-radius:14px;padding:1.5rem;position:sticky;top:20px}

/* Footer */
.site-footer{background:var(--dark);color:#c8d6db}
.site-footer h5,.site-footer h6{color:#fff}
.footer-links a,.footer-links li{color:#c8d6db;font-size:.92rem;line-height:2}
.footer-links a:hover{color:var(--accent)}
.social a{color:#fff;font-size:1.3rem;margin-right:.8rem}
.social a:hover{color:var(--accent)}
.footer-bottom{background:#12212a;color:#8aa0a8}

/* Formlar */
.auth-card{max-width:460px;margin:3rem auto;border-radius:16px;box-shadow:0 8px 30px rgba(0,0,0,.1)}
.form-control:focus,.form-select:focus{border-color:var(--primary);box-shadow:0 0 0 .2rem rgba(11,114,133,.15)}

/* Yardımcılar */
.divider{height:1px;background:#e9ecef;margin:1rem 0}
.badge-soft{background:rgba(11,114,133,.1);color:var(--primary)}

/* ================= Galeri & Lightbox ================= */
.gallery-wrap{margin-bottom:1.5rem}
.gal-main{cursor:zoom-in;width:100%}
.gal-thumbs{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.6rem}
.gal-thumb{width:92px;height:64px;object-fit:cover;border-radius:8px;cursor:pointer;
  border:3px solid transparent;transition:.15s;opacity:.72}
.gal-thumb:hover{opacity:1}
.gal-thumb.active{border-color:var(--primary);opacity:1}

.lb{position:fixed;inset:0;z-index:2000;background:rgba(10,14,17,.94);
  display:none;align-items:center;justify-content:center;padding:2.5rem 1rem}
.lb.open{display:flex}
.lb-img{max-width:94vw;max-height:84vh;border-radius:10px;box-shadow:0 20px 60px rgba(0,0,0,.6);
  user-select:none;-webkit-user-drag:none}
.lb-btn{position:absolute;background:rgba(255,255,255,.12);color:#fff;border:0;border-radius:50%;
  width:48px;height:48px;font-size:1.7rem;line-height:1;cursor:pointer;display:flex;
  align-items:center;justify-content:center;transition:.15s}
.lb-btn:hover{background:rgba(255,255,255,.28)}
.lb-prev{left:1.2rem;top:50%;transform:translateY(-50%)}
.lb-next{right:1.2rem;top:50%;transform:translateY(-50%)}
.lb-close{top:1.1rem;right:1.2rem;width:42px;height:42px;font-size:1.4rem}
.lb-counter{position:absolute;bottom:1.2rem;left:50%;transform:translateX(-50%);
  color:#fff;background:rgba(0,0,0,.45);padding:.3rem .9rem;border-radius:20px;font-size:.85rem}
@media(max-width:576px){
  .lb-btn{width:40px;height:40px;font-size:1.4rem}
  .lb-prev{left:.4rem}.lb-next{right:.4rem}
  .gal-thumb{width:72px;height:52px}
}

/* ---- Ana sayfa kategori kartlari (gorsel + uzerinde ad) ---- */
.cat-card{position:relative;display:block;border-radius:14px;overflow:hidden;height:190px;
  text-decoration:none;box-shadow:0 4px 16px rgba(0,0,0,.10)}
.cat-card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s ease}
.cat-card:hover img{transform:scale(1.07)}
.cat-card-overlay{position:absolute;inset:0;display:flex;flex-direction:column;
  align-items:center;justify-content:center;text-align:center;padding:.75rem;
  background:linear-gradient(to top,rgba(9,32,40,.78) 0%,rgba(9,32,40,.30) 55%,rgba(9,32,40,.12) 100%);
  transition:background .3s}
.cat-card:hover .cat-card-overlay{background:linear-gradient(to top,rgba(9,32,40,.86) 0%,rgba(9,32,40,.45) 60%,rgba(9,32,40,.25) 100%)}
.cat-card-name{color:#fff;font-weight:700;font-size:1.08rem;line-height:1.25;
  text-shadow:0 2px 10px rgba(0,0,0,.45)}
.cat-card-count{color:rgba(255,255,255,.85);font-size:.8rem;margin-top:.25rem}
@media(max-width:576px){.cat-card{height:140px}.cat-card-name{font-size:.95rem}}
