/* =========================
   VENÜS - PRO THEME
   Champagne Gold + Black
   ========================= */

:root{
  --bg: #fbfbfc;
  --text: #111;
  --muted: rgba(0,0,0,.62);

  /* champagne gold */
  --gold: #d4af37;
  --gold-2: #caa83a;

  --dark: #111;
  --dark-2: #222;
  --card: #fff;

  --radius: 18px;
  --shadow: 0 10px 30px rgba(0,0,0,.08);
}

*{ box-sizing:border-box; }

html, body{
  height:100%;
  width:100%;
  margin:0;
  padding:0;
  font-size:16px; /* ✅ küçük görünme sorununu engeller */
}

body{
  background: var(--bg);
  color: var(--text);
  overflow-x: hidden;
}

/* ✅ Eğer bir yerde zoom/scale eklendiyse ezsin diye */
body, main, .container, .container-fluid{
  zoom: 1;
  transform: none !important;
}

/* Bootstrap container zaten iyi ama biraz daha rahat */
.container{
  max-width: 1180px;
}

/* NAVBAR */
.navbar{
  background:#fff !important;
}
.navbar-brand{
  display:flex;
  align-items:center;
  gap:10px;
  font-weight:800;
  letter-spacing:.2px;
}
.navbar-brand img{
  height:34px;
  width:auto;
  display:block;
}
.nav-link{
  color: rgba(0,0,0,.72) !important;
  font-weight:600;
}
.nav-link:hover{
  color: var(--dark) !important;
}

/* BUTTONS */
.btn-dark{
  background: var(--dark) !important;
  border-color: var(--dark) !important;
}
.btn-outline-dark{
  border-color: rgba(0,0,0,.18) !important;
}
.btn-outline-dark:hover{
  background: var(--dark) !important;
  color:#fff !important;
}
.btn-gold{
  background: var(--gold);
  border: 1px solid var(--gold);
  color:#111;
  font-weight:800;
}
.btn-gold:hover{
  background: var(--gold-2);
  border-color: var(--gold-2);
}

/* CARDS */
.card-soft{
  border:0;
  border-radius: var(--radius);
  background: var(--card);
  box-shadow: var(--shadow);
}

/* HERO */
.hero{
  background:
    radial-gradient(700px 260px at 12% 18%, rgba(212,175,55,.16), transparent 60%),
    radial-gradient(900px 360px at 90% 85%, rgba(255,255,255,.10), transparent 55%),
    linear-gradient(120deg, #0f0f10, #2a2a2d);
  color:#fff;
  border-radius: var(--radius);
  box-shadow: 0 18px 50px rgba(0,0,0,.15);
}
.hero h1{
  font-weight:900;
  letter-spacing:.3px;
}
.hero p{
  color: rgba(255,255,255,.76);
}

/* NY Banner + chips */
.ny-banner{
  border-radius: var(--radius);
  position:relative;
  overflow:hidden;
}
.ny-banner:before{
  content:"";
  position:absolute; inset:-2px;
  background:
    radial-gradient(600px 200px at 10% 20%, rgba(212,175,55,.14), transparent 60%),
    radial-gradient(700px 250px at 90% 80%, rgba(0,0,0,.06), transparent 60%);
  pointer-events:none;
}
.ny-badge{
  display:inline-flex; align-items:center; gap:6px;
  padding:6px 10px; border-radius:999px;
  background:#111; color:#fff;
  font-size:.85rem; font-weight:800;
}
.ny-chip{
  display:inline-flex; align-items:center; gap:6px;
  padding:6px 10px; border-radius:999px;
  background: rgba(212,175,55,.12);
  border: 1px solid rgba(212,175,55,.28);
  color:#111; font-size:.85rem; font-weight:800;
}
.ny-perks{
  display:flex; gap:14px; flex-wrap:wrap;
  font-size:.9rem;
  color: rgba(0,0,0,.65);
}
.ny-feature{
  border-radius: var(--radius);
}
.ny-ico{
  width:44px;height:44px;border-radius:14px;
  display:flex;align-items:center;justify-content:center;
  background: rgba(212,175,55,.14);
  border: 1px solid rgba(212,175,55,.22);
  font-size:20px;margin-bottom:10px;
}

/* SERVICES cards bigger + nicer */
.service-card img{
  width:100%;
  height:210px;
  object-fit:cover;
  display:block;
}
.service-card .title{
  font-weight:900;
  font-size:1.05rem;
}
.service-card .meta{
  color: var(--muted);
  font-size:.9rem;
}
.badge.vip{
  background: rgba(212,175,55,.16) !important;
  color:#111 !important;
  border: 1px solid rgba(212,175,55,.35);
  font-weight:900;
}

/* GALLERY */
.gal-wrap{ overflow:hidden; border-radius: var(--radius); }
.gal-track{
  display:flex;
  gap:14px;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  padding:6px 2px 14px;
  -webkit-overflow-scrolling: touch;
  scrollbar-width:none;
}
.gal-track::-webkit-scrollbar{ display:none; }

.gal-card{
  flex:0 0 auto;
  width:85%;
  scroll-snap-align:start;
  border:0; padding:0; background:transparent;
  text-align:left;
}
@media(min-width:576px){ .gal-card{ width:48% } }
@media(min-width:992px){ .gal-card{ width:24% } }

.gal-card-inner{
  height:240px;
  border-radius: var(--radius);
  overflow:hidden;
  background:#111;
  position:relative;
  box-shadow: 0 12px 28px rgba(0,0,0,.12);
}
.gal-img{
  width:100%;
  height:100%;
  object-fit:cover;
  transform:scale(1);
  transition: transform .28s ease;
  display:block;
}
.gal-card-inner:hover .gal-img{ transform:scale(1.05); }
.gal-cap{
  position:absolute;
  left:10px; right:10px; bottom:10px;
  padding:8px 10px;
  border-radius:14px;
  background:rgba(0,0,0,.55);
  color:#fff;
  font-size:.85rem;
  backdrop-filter: blur(6px);
}

/* LIGHTBOX */
.lb{
  position:fixed; inset:0;
  background:rgba(0,0,0,.82);
  display:none;
  z-index:9999;
}
.lb.show{ display:block; }
.lb-inner{
  position:absolute; inset:0;
  display:flex; align-items:center; justify-content:center;
  padding:22px;
  z-index:1;
  pointer-events:none;
}
.lb-inner img{
  max-width:min(980px, 92vw);
  max-height:78vh;
  border-radius:16px;
  box-shadow:0 18px 60px rgba(0,0,0,.45);
  background:#111;
  pointer-events:auto;
}
.lb-title{
  position:absolute;
  bottom:18px; left:50%;
  transform:translateX(-50%);
  color:#fff;
  font-size:.95rem;
  background:rgba(0,0,0,.45);
  padding:8px 12px;
  border-radius:999px;
  max-width:92vw;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  z-index:3;
  pointer-events:auto;
}
.lb-close, .lb-nav{
  position:absolute;
  border:0;
  background:rgba(255,255,255,.12);
  color:#fff;
  border-radius:999px;
  z-index:4;
  cursor:pointer;
  pointer-events:auto;
}
.lb-close{
  top:14px; right:14px;
  width:42px; height:42px;
  font-size:18px;
}
.lb-nav{
  top:50%;
  transform:translateY(-50%);
  width:44px; height:44px;
  font-size:22px;
}
.lb-prev{ left:14px; }
.lb-next{ right:14px; }

/* POPUP */
.ny-modal{
  position:fixed; inset:0;
  display:none;
  background:rgba(0,0,0,.55);
  z-index:99999;
  padding:18px;
}
.ny-modal.show{ display:flex; align-items:center; justify-content:center; }
.ny-modal-box{
  position:relative;
  width:min(560px, 96vw);
  background:#fff;
  border-radius:22px;
  padding:26px 22px 20px;
  box-shadow:0 20px 70px rgba(0,0,0,.35);
  overflow:hidden;
}
.ny-modal-box:before{
  content:"";
  position:absolute;
  inset:-2px;
  background:
    radial-gradient(600px 220px at 15% 10%, rgba(212,175,55,.18), transparent 60%),
    radial-gradient(650px 250px at 90% 85%, rgba(0,0,0,.08), transparent 55%);
  pointer-events:none;
}
.ny-modal-close{
  position:absolute; top:12px; right:12px;
  width:42px; height:42px;
  border:0; border-radius:999px;
  background:rgba(0,0,0,.06);
  font-size:18px; cursor:pointer;
  z-index:2;
}
.ny-modal-badge{
  display:inline-flex; align-items:center; gap:6px;
  padding:6px 12px; border-radius:999px;
  background:#111; color:#fff;
  font-size:.85rem; font-weight:900;
  position:relative; z-index:1;
}
.ny-modal-title{
  margin:12px 0 8px;
  font-size:1.45rem;
  font-weight:950;
  position:relative; z-index:1;
}
.ny-modal-text{
  color:rgba(0,0,0,.72);
  line-height:1.5;
  position:relative; z-index:1;
}
.ny-modal-actions{
  display:flex; gap:10px; flex-wrap:wrap;
  margin-top:16px;
  position:relative; z-index:1;
}
.ny-modal-actions .btn{ flex:1 1 auto; }
.ny-modal-foot{
  margin-top:12px;
  color:rgba(0,0,0,.45);
  font-size:.85rem;
  position:relative; z-index:1;
}

/* Footer spacing */
main{ min-height: 60vh; }
