/* ========= Kristalpark Theme ========= */
:root{
  --kp-primary:#0d6efd;
  --kp-accent:#f5b900;
  --kp-dark:#0f172a;
}
body{font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;}
/* Navbar fixed olduğunda içerik kaymasın */
body { padding-top: 70px; }  /* navbar yüksekliğine göre ayarla */
@media (max-width: 991.98px){
  body { padding-top: 56px; } /* mobilde biraz daha düşük */
}

.kp-header .navbar .nav-link{font-weight:600; color:#333;}
.kp-header .navbar .nav-link:hover{color:var(--kp-primary);}

.hero{
  background: radial-gradient(1000px 600px at right -200px top -200px, rgba(13,110,253,.15), transparent), 
              linear-gradient(180deg, #fff, #f9fafb);
}
.hero .badge{background: rgba(13,110,253,.1); color:#0a58ca;}
.hero-img{border-radius: 1.25rem; box-shadow: 0 20px 50px rgba(0,0,0,.12);}

.kp-feature{border-radius:1rem; box-shadow: 0 10px 30px rgba(0,0,0,.08);}
.kp-feature i{font-size: 1.6rem; color:var(--kp-primary);}

.video-card iframe{border-radius: 14px; width:100%; height: 220px;}
.gallery img{width:100%; height:220px; object-fit:cover; border-radius:14px; box-shadow: 0 10px 30px rgba(0,0,0,.08);}

.kp-footer{background: linear-gradient(180deg, #0b132b, #000);}


/* ===== Readability improvements ===== */
html { scroll-behavior: smooth; }
body { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; line-height: 1.7; font-size: 1.05rem; color: #1f2937; }
h1,h2,h3,h4,h5,h6 { letter-spacing: .2px; }
.lead { color:#374151; }

/* ===== Motion (with reduced-motion respect) ===== */
@keyframes fadeUp {
  from { opacity:0; transform: translateY(16px); }
  to   { opacity:1; transform: translateY(0); }
}
@keyframes floatY {
  0% { transform: translateY(0px); }
  50% { transform: translateY(-6px); }
  100% { transform: translateY(0px); }
}
.reveal { opacity:0; transform: translateY(16px); transition: opacity .6s ease, transform .6s ease; }
.reveal.reveal-in { opacity:1; transform: translateY(0); }

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce){
  .reveal, .reveal.reveal-in { transition: none; transform: none; opacity: 1; }
  .hero .hero-img { animation: none !important; }
}

/* ===== Elevation & hover ===== */
.kp-feature { transition: transform .25s ease, box-shadow .25s ease; }
.kp-feature:hover { transform: translateY(-6px); box-shadow: 0 18px 45px rgba(0,0,0,.12); }

.video-card { transition: transform .25s ease, box-shadow .25s ease; }
.video-card:hover { transform: translateY(-4px); box-shadow: 0 16px 40px rgba(0,0,0,.12); }

.navbar { box-shadow: 0 4px 16px rgba(0,0,0,.05); }

/* ===== Hero visuals ===== */
.hero .badge{ font-weight:600; }
.hero .display-5{ line-height:1.15; }
.hero .hero-img{ animation: floatY 8s ease-in-out infinite; }

/* ===== Buttons stronger contrast ===== */
.btn-outline-dark { border-width:2px; }
.btn-outline-dark:hover { background:#111; color:#fff; }

/* ===== Instagram embed container tweak ===== */
.instagram-media { border-radius:14px !important; overflow:hidden; }


/* ===== BIG hero ===== */
.hero-xl{
  background:
    radial-gradient(1200px 800px at right -300px top -300px, rgba(13,110,253,.14), transparent),
    linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
}
.hero-frame{ border-radius: 1.5rem; box-shadow: 0 24px 60px rgba(0,0,0,.18); overflow:hidden; }
.hero-shape{ position:absolute; inset:auto -200px -200px auto; width:420px; height:420px; background: radial-gradient(closest-side, rgba(13,110,253,.12), transparent); filter: blur(6px); }

/* ===== Fact cards ===== */
.fact-card{ background:#fff; border-radius: 1rem; box-shadow: 0 12px 36px rgba(0,0,0,.08); }
.fact-card i{ font-size: 1.8rem; color: var(--kp-primary); }
.fact-card .counter{ font-weight: 800; }

/* ===== Mini cards (packages) ===== */
.bg-gradient{ background: linear-gradient(135deg, rgba(13,110,253,.08), rgba(245,185,0,.08)); }
.mini-card{ background:#fff; border-radius:1rem; box-shadow: 0 12px 36px rgba(0,0,0,.08); }

/* ===== Timeline ===== */
.timeline .step{ background:#fff; border-radius: 1rem; box-shadow: 0 12px 36px rgba(0,0,0,.08); position:relative; }
.timeline .step .step-num{
  width:36px; height:36px; border-radius:50%; background: var(--kp-primary); color:#fff; display:flex; align-items:center; justify-content:center; font-weight:700; margin-bottom:.5rem;
}

/* ===== End CTA ===== */
.bg-gradient.text-center{ background: linear-gradient(180deg, #0b132b, #0a0a0a); color:#fff; }
.bg-gradient.text-center .btn-outline-light{ border-width:2px; }

/* ===== Sticky Mobile Action ===== */
.sticky-actions{ position: fixed; left:0; right:0; bottom:0; display:flex; z-index:1050; }
.sticky-actions a{ flex:1; text-align:center; padding:.8rem; background:#111; color:#fff; text-decoration:none; font-weight:700; }
.sticky-actions a:first-child{ background:#25D366; }
.sticky-actions i{ margin-right:.4rem; }

/* ===== Reveal helper on sections ===== */
section.reveal{ will-change: transform, opacity; }


/* ===== Reviews slider ===== */
.reviews-wrap{ position:relative; }
.reviews-track{ display:flex; gap:16px; overflow-x:auto; scroll-snap-type:x mandatory; padding-bottom:6px; }
.reviews-track::-webkit-scrollbar{ height:8px; }
.reviews-track::-webkit-scrollbar-thumb{ background:rgba(0,0,0,.2); border-radius:999px; }
.review-card{ min-width: 320px; max-width: 360px; scroll-snap-align:start; background:#fff; border-radius:1rem; box-shadow:0 10px 30px rgba(0,0,0,.08); padding:1rem 1.25rem; }
.review-card .author{ font-weight:700; }
.review-card .rating i{ color:#f5b900; }
.reviews-nav{ position:absolute; inset: -20px 0 auto 0; display:flex; justify-content:space-between; pointer-events:none; }
.reviews-nav .btn{ pointer-events:auto; }

/* ===== Amenities grid ===== */
.amenity{ background:#fff; border-radius:1rem; box-shadow:0 10px 30px rgba(0,0,0,.08); padding:1rem; height:100%; display:flex; gap:.75rem; align-items:flex-start; }
.amenity i{ font-size:1.4rem; color:var(--kp-primary); }

/* ===== Rich text readability ===== */
.section-intro{ max-width: 820px; margin:0 auto; color:#374151; }
.section-intro strong{ color:#111827; }

/* Headings spacing */
section h2.h3, section h3.h4, section h3.h5 { letter-spacing:.2px; }
