/* ===============================
   ROUND COMPANY – STYLE.CSS (CLEAN)
   Duplicates Removed + Mobile Fixes
================================== */

/* ====== THEME TOKENS ====== */
:root{
  --rc-dark:#020617;
  --rc-bg:#020617;
  --rc-primary:#2563eb;
  --rc-accent:#22c55e;
  --rc-muted:#94a3b8;
  --rc-text:#e5e7eb;
  --rc-border:rgba(148,163,184,.35);
  --rc-card:#020617;
}

/* ====== BASE / RESET ====== */
*{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{
  font-family:'Inter',system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  background:var(--rc-bg);
  color:var(--rc-text);
  line-height:1.65;
  letter-spacing:.1px;
}
img{ max-width:100%; height:auto; }
a{ color:inherit; }
p{ line-height:1.65; }
.small{ line-height:1.55; }

/* ====== GLOBAL BUTTONS ====== */
.btn-wa{
  background:var(--rc-accent);
  border:1px solid var(--rc-accent);
  color:#fff !important;
  border-radius:999px;
  padding:10px 16px;
  font-weight:600;
  box-shadow:0 14px 30px rgba(34,197,94,.18);
  text-decoration:none;
}
.btn-wa:hover{
  background:#16a34a;
  border-color:#16a34a;
  color:#fff !important;
}
.btn-rc{
  background:transparent;
  border:1px solid rgba(148,163,184,.45);
  color:var(--rc-text) !important;
  border-radius:999px;
  padding:10px 16px;
  font-weight:600;
  text-decoration:none;
}
.btn-rc:hover{
  border-color:rgba(96,165,250,.75);
  color:#fff !important;
}

/* ===== NAVBAR ===== */
.navbar{
  backdrop-filter:blur(16px);
  background:rgba(15,23,42,.96) !important;
  box-shadow:0 10px 30px rgba(15,23,42,.6);
}
.navbar-brand span{
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
  font-size:.8rem;
}
.rc-logo-img{
  height:32px;
  width:32px;
  border-radius:50%;
  margin-right:.5rem;
  object-fit:cover;
}
.nav-link{
  color:var(--rc-text) !important;
  font-size:.9rem;
  white-space:nowrap;
  padding:.7rem .75rem;
}
.nav-link:hover{ color:#fff !important; }

/* ===== HERO – MAKKAH ===== */
.hero-makkah{
  position:relative;
  padding:130px 0 150px;
  color:#fff;
  background-image:
    linear-gradient(120deg,rgba(15,23,42,.55),rgba(15,23,42,.35)),
    url("images/makkah.jpg");
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
}
.hero-inner{ position:relative; z-index:2; }

.hero-badge{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  padding:.35rem .85rem;
  border-radius:999px;
  background:rgba(15,23,42,.72);
  color:#a5f3fc;
  font-size:.75rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.hero-title{
  font-size:clamp(2.4rem,3.4vw + 1rem,3.4rem);
  font-weight:750;
  letter-spacing:-.4px;
  margin:1.1rem 0 .7rem;
}
.hero-subtitle{
  max-width:34rem;
  color:#e5e7eb;
  font-size:1.05rem;
  line-height:1.7;
  opacity:.95;
}

/* ✅ HERO LINKS – FINAL (no duplicates) */
.hero-makkah a{
  color:#93c5fd;            /* soft sky blue */
  font-weight:500;
  text-decoration:none;
  border-bottom:1px dashed rgba(147,197,253,0.45);
}

.hero-makkah a:hover{
  color:#bfdbfe;
  border-bottom-color:#bfdbfe;
}

/* Hero contacts */
.hero-contacts{
  margin-top:1.3rem;
  display:flex;
  flex-direction:column;
  gap:.35rem;
  font-size:.95rem;
}
.hero-contacts i{ width:18px; }
.hero-contacts a{
  color:#e5e7eb;
  text-decoration:none;
}
.hero-contacts a:hover{ text-decoration:underline; }

/* ===== HERO – QUICK SEARCH CARD ===== */
.search-card{
  border-radius:1.6rem;
  padding:26px 26px 22px;
  border:1px solid rgba(148,163,184,.4);
  box-shadow:0 28px 80px rgba(0,0,0,.65);
  background:
    radial-gradient(circle at top left,rgba(37,99,235,.22),transparent 55%),
    radial-gradient(circle at bottom right,rgba(16,185,129,.18),transparent 55%),
    #020617;
}
.search-card h5{ font-weight:650; margin-bottom:.35rem; }
.search-card small{ color:var(--rc-muted); }
.search-card .form-control,
.search-card .form-select{
  background:rgba(15,23,42,.9);
  border-color:rgba(148,163,184,.5);
  color:#e5e7eb;
}
.search-card .form-control:focus,
.search-card .form-select:focus{
  background:rgba(15,23,42,.96);
  border-color:#60a5fa;
  color:#e5e7eb;
  box-shadow:0 0 0 .1rem rgba(59,130,246,.45);
}
/* ✅ Note readability */
.search-card .rc-note{
  color:rgba(226,232,240,.9) !important;
}

/* ===== FEATURED HOTELS ===== */
#hotels{
  scroll-margin-top:80px;
  background:radial-gradient(circle at top,rgba(15,23,42,.9),#020617 55%);
  padding:64px 0 56px;
}
.hotels-heading h5{ color:#f9fafb; }
.hotels-heading p{ color:#9ca3af; }
.hotel-card{
  border-radius:1.1rem;
  overflow:hidden;
  box-shadow:0 16px 40px rgba(15,23,42,.5);
  border:1px solid rgba(15,23,42,.7);
  background:#020617;
  color:#e5e7eb;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.hotel-card:hover{
  transform:translateY(-10px);
  box-shadow:0 26px 70px rgba(15,23,42,.9);
  border-color:rgba(59,130,246,.7);
}
.hotel-img{ height:210px; object-fit:cover; }
.badge-city{
  background:rgba(15,23,42,.9);
  color:#e5e7eb;
  border-radius:999px;
  font-size:.7rem;
  padding:.2rem .7rem;
  text-transform:uppercase;
}
.badge-tag{
  background:rgba(37,99,235,.15);
  color:#bfdbfe;
  border-radius:999px;
  font-size:.7rem;
  padding:.18rem .65rem;
}

/* ===== TRANSPORT ===== */
#transport{
  scroll-margin-top:90px;
  background:
    radial-gradient(circle at top left,rgba(37,99,235,.08),transparent 55%),
    radial-gradient(circle at bottom right,rgba(16,185,129,.08),transparent 55%);
}
.transport-card{
  border-radius:1.2rem;
  border:1px solid rgba(148,163,184,.35);
  background:#fff;
  box-shadow:0 16px 45px rgba(15,23,42,.14);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  position:relative;
  overflow:hidden;
}
.transport-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at top left,rgba(37,99,235,.10),transparent 60%);
  opacity:0;
  transition:opacity .18s ease;
}
.transport-card:hover{
  transform:translateY(-8px);
  box-shadow:0 26px 70px rgba(15,23,42,.22);
  border-color:rgba(37,99,235,.65);
}
.transport-card:hover::before{ opacity:1; }
.transport-card > *{ position:relative; z-index:1; }
.transport-icon{
  width:54px;height:54px;border-radius:999px;
  display:inline-flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,#2563eb,#22c55e);
  color:#fff;font-size:1.4rem;margin-bottom:.9rem;
  box-shadow:0 12px 30px rgba(15,23,42,.35);
}
.transport-price{
  font-size:.9rem;font-weight:650;color:#16a34a;margin-bottom:.9rem;
}
.transport-card .btn-outline-primary{
  font-size:.86rem;border-radius:999px;padding-inline:1.2rem;
  background:#22c55e;border-color:#22c55e;color:#fff;
}
.transport-card .btn-outline-primary:hover{
  background:#16a34a;border-color:#16a34a;color:#fff;
}

/* ===== MADINAH STRIP ===== */
.madinah-strip{
  position:relative;
  padding:40px 0;
  color:#fff;
  background-image:
    linear-gradient(160deg,rgba(15,23,42,.85),rgba(15,23,42,.95)),
    url("images/madinah.jpg");
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
}
.madinah-strip-inner{ position:relative; z-index:2; }

/* ===== REVIEWS ===== */
#reviews{
  scroll-margin-top:90px;
  background:#020617;
  padding:56px 0;
  border-top:1px solid #111827;
  border-bottom:1px solid #111827;
}
.review-card{
  border-radius:1.1rem;
  background:#020617;
  border:1px solid #1f2937;
  padding:18px 18px 16px;
  color:#e5e7eb;
  box-shadow:0 16px 45px rgba(15,23,42,.8);
  height:100%;
}
.review-name{ font-weight:650; }
.review-stars{ color:#facc15;font-size:.8rem; }

/* ===== FAQ ===== */
#faq{
  scroll-margin-top:90px;
  background:#020617;
  padding:56px 0 64px;
}
.faq-title{ color:#f9fafb; }
#faq .faq-intro{ color:#9ca3af; }
#faq .accordion-item{
  background:#020617;
  border:1px solid #1f2937;
  border-radius:.6rem;
  overflow:hidden;
}
#faq .accordion-item + .accordion-item{ margin-top:.55rem; }
#faq .accordion-button{
  background:#111827;
  color:#e5e7eb;
  font-size:.92rem;
}
#faq .accordion-button:not(.collapsed){
  background:#0f172a !important;
  color:#fff !important;
  box-shadow:none !important;
}
#faq .accordion-button:focus{
  box-shadow:0 0 0 .1rem rgba(59,130,246,.6);
}
#faq .accordion-body{
  background:#020617;
  color:#e5e7eb;
  font-size:.9rem;
}

/* ===== BOOKING ===== */
#booking{ scroll-margin-top:90px; }
.booking-section{
  background:#020617;
  border-top:1px solid #111827;
  border-bottom:1px solid #111827;
  padding:60px 0;
}
.booking-card{
  border-radius:1.4rem;
  box-shadow:0 24px 70px rgba(15,23,42,.9);
  border:1px solid rgba(15,23,42,.8);
}

/* ===== SUCCESS MODAL ===== */
#bookingSuccessModal .modal-content{
  border-radius:1rem;
  border:1px solid #16a34a;
  box-shadow:0 24px 60px rgba(22,163,74,.45);
}
#bookingSuccessModal .modal-header{
  background:linear-gradient(135deg,#16a34a,#22c55e);
  color:#ecfdf5;
  border-bottom:none;
}
#bookingSuccessModal .modal-title{ font-weight:650; }
#bookingSuccessModal .modal-body{ color:#0f172a; }
#bookingSuccessModal .modal-body p{ color:#111827; }
#bookingSuccessModal .modal-footer{ border-top:1px solid #e5e7eb; }

/* ===== VISA ===== */
#visa{
  scroll-margin-top:90px;
  background:
    radial-gradient(circle at top right,rgba(37,99,235,.10),transparent 55%),
    radial-gradient(circle at bottom left,rgba(22,163,74,.08),transparent 55%);
  padding:56px 0;
  border-top:1px solid #111827;
  border-bottom:1px solid #111827;
}
.visa-heading h4{ color:#f9fafb; }
.visa-heading p{ color:#9ca3af; }
.visa-card{
  border-radius:1.2rem;
  border:1px solid rgba(148,163,184,.5);
  background:#020617;
  color:#e5e7eb;
  box-shadow:0 18px 55px rgba(15,23,42,.85);
  padding:18px 18px 16px;
  position:relative;
  overflow:hidden;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.visa-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at top left,rgba(250,204,21,.12),transparent 60%);
  opacity:0;
  transition:opacity .2s ease;
}
.visa-card:hover{
  transform:translateY(-10px);
  border-color:#facc15;
  box-shadow:0 26px 70px rgba(15,23,42,.95);
}
.visa-card:hover::before{ opacity:1; }
.visa-chip{
  display:inline-flex;align-items:center;gap:.45rem;
  font-size:.78rem;text-transform:uppercase;letter-spacing:.14em;
  padding:.18rem .7rem;border-radius:999px;
  background:rgba(15,23,42,.85);color:#e5e7eb;
}
.visa-icon{
  width:46px;height:46px;border-radius:999px;
  display:inline-flex;align-items:center;justify-content:center;
  background:radial-gradient(circle,#facc15,#eab308);
  color:#1f2937;margin-bottom:.75rem;
  box-shadow:0 16px 40px rgba(234,179,8,.55);
}
.visa-meta{ font-size:.8rem;color:#9ca3af;margin-bottom:.5rem; }
.visa-list{ padding-left:1.1rem;margin-bottom:.8rem;font-size:.85rem;color:#e5e7eb; }
.visa-list li + li{ margin-top:.15rem; }
.visa-note{ font-size:.78rem;color:#9ca3af; }
.visa-cta{ font-size:.86rem;border-radius:999px; }

/* ===== WHATSAPP FLOAT + GROUP FLOAT (FINAL) ===== */
#whatsappFloat{
  position:fixed;
  right:16px;
  bottom:16px;
  z-index:40;
  cursor:grab;
}
#whatsappFloat:active{ cursor:grabbing; }

/* Group button (desktop only) */
.wa-group-float{
  position:fixed;
  right:16px;
  bottom:92px;
  background:#25D366;
  color:#fff;
  padding:12px 18px;
  border-radius:50px;
  font-weight:650;
  text-decoration:none;
  z-index:39;
  box-shadow:0 10px 30px rgba(0,0,0,.35);
}

/* Mobile sticky bar */
.mobile-contact-bar{ display:none; }
@media (max-width: 767.98px){
  .mobile-contact-bar{
    display:flex;
    position:fixed;
    left:0; right:0; bottom:0;
    z-index:41;
    background:#020617;
    border-top:1px solid #111827;
  }
  .mobile-contact-bar a{
    flex:1 1 0;
    text-align:center;
    padding:10px 0;
    font-size:.85rem;
    text-decoration:none;
    color:#e5e7eb;
  }
  .mobile-contact-bar a + a{ border-left:1px solid #111827; }

  /* ✅ Mobile: hide group button + lift WhatsApp float above bar */
  .wa-group-float{ display:none !important; }
  #whatsappFloat{ bottom:70px; }
}

/* Footer */
footer{
  font-size:.85rem;
  color:#9ca3af;
  background:#020617;
  border-top:1px solid #111827;
  padding-bottom:56px; /* mobile bar space */
}

/* Responsive hero spacing */
@media (max-width: 991.98px){
  .hero-makkah{ padding:90px 0 110px; }
  .search-card{ margin-top:2rem; }
}

/* Touch feedback */
.hotel-card:active,
.transport-card:active,
.visa-card:active,
.review-card:active{
  transform:translateY(-2px);
}
@media (max-width: 767px){
  .whatsapp-float{
    display:none !important;
  }
}
/* WhatsApp Group floating button */
.wa-group-float{
  position: fixed;
  right: 16px;
  bottom: 92px; /* default: above WhatsApp float */
  z-index: 41;
}
.wa-group-float a{
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  padding: 10px 14px;
  border-radius: 999px;
  background: rgba(2,6,23,0.92);
  border: 1px solid rgba(148,163,184,0.35);
  color: #e5e7eb;
  text-decoration: none;
  font-weight: 600;
  font-size: .92rem;
  box-shadow: 0 16px 45px rgba(0,0,0,0.45);
}
.wa-group-float a:hover{
  border-color: rgba(34,197,94,0.8);
}

/* Mobile: keep group button ABOVE the mobile contact bar */
@media (max-width: 767.98px){
  .wa-group-float{
    bottom: 70px;  /* mobile contact bar height */
    right: 14px;
  }
  .wa-group-float a{
    font-size: .88rem;
    padding: 9px 12px;
  }
}
/* ===== WhatsApp Group Float (ALWAYS VISIBLE) ===== */
.wa-group-float{
  position: fixed;
  right: 16px;
  bottom: 160px;     /* mobile bar + whatsapp float se upar */
  z-index: 99999;
  display: block;
}

.wa-group-float a{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  border-radius: 999px;
  background: rgba(2,6,23,0.92);
  border: 1px solid rgba(148,163,184,0.45);
  color: #ffffff !important;
  text-decoration: none;
  font-weight: 700;
  box-shadow: 0 18px 60px rgba(0,0,0,0.55);
}

.wa-group-float a:hover{
  filter: brightness(1.08);
}

/* Desktop pe thora neechay rakh do */
@media (min-width: 992px){
  .wa-group-float{ bottom: 96px; }
}
    /* ===== WhatsApp Group Float (Desktop + Mobile FIX) ===== */
.wa-group-float{
  position: fixed;
  z-index: 99999;
  display: block;
}

/* Desktop: bottom-right */
@media (min-width: 992px){
  .wa-group-float{
    right: 16px;
    bottom: 96px;
  }
}

/* Mobile: top-right (navbar ke neeche) */
@media (max-width: 991.98px){
  .wa-group-float{
    right: 12px;
    top: 78px; /* fixed navbar ke neeche */
  }
  .wa-group-float a{
    padding: 9px 12px;
    font-size: 0.85rem;
  }
}

.wa-group-float a{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  border-radius: 999px;
  background: rgba(2,6,23,0.92);
  border: 1px solid rgba(148,163,184,0.45);
  color: #ffffff !important;
  text-decoration: none;
  font-weight: 700;
  box-shadow: 0 18px 60px rgba(0,0,0,0.55);
  white-space: nowrap;
}
.wa-group-float a:hover{
  filter: brightness(1.08);
}
/* ===============================
   UX POLISH PACK (Round Company)
   =============================== */

/* Better typography / readability */
body { line-height: 1.55; }
.hero-title { letter-spacing: -0.5px; }
.hero-subtitle { line-height: 1.7; opacity: 0.92; }

/* Soft link color in hero (remove irritating blue) */
.hero-makkah a {
  color: #9ad1ff;
  text-decoration: underline;
  text-decoration-color: rgba(154,209,255,0.45);
  text-underline-offset: 3px;
}
.hero-makkah a:hover {
  color: #cfe9ff;
  text-decoration-color: rgba(207,233,255,0.75);
}

/* Make the note under Quick Search readable (your "light note" issue) */
.search-card .rc-note,
.search-card p.small.rc-note {
  color: rgba(229,231,235,0.82) !important;
  font-size: 0.86rem;
  line-height: 1.45;
}

/* Trust bullets style in hero */
.hero-trust {
  margin-top: 0.75rem;
  display: grid;
  gap: 0.35rem;
  color: rgba(229,231,235,0.92);
  font-size: 0.95rem;
}
.hero-trust i { width: 18px; opacity: 0.95; }

/* --- CTA conflict fix --- */
/* Mobile: keep only bottom bar (Call/WhatsApp). Hide big WhatsApp floating button */
@media (max-width: 767.98px) {
  #whatsappFloat { display: none !important; }
}

/* WhatsApp group button (simple + consistent) */
.wa-group-float {
  position: fixed;
  right: 16px;
  bottom: 90px;           /* bottom bar se upar */
  z-index: 38;
  background: rgba(15,23,42,0.95);
  border: 1px solid rgba(148,163,184,0.35);
  color: #e5e7eb;
  padding: 10px 14px;
  border-radius: 999px;
  text-decoration: none;
  font-size: 0.85rem;
  box-shadow: 0 10px 30px rgba(0,0,0,0.35);
}
.wa-group-float:hover { color: #ffffff; border-color: rgba(154,209,255,0.55); }

/* Desktop: show group float. Mobile: hide group float (bottom bar already there) */
@media (max-width: 767.98px) {
  .wa-group-float { display: none !important; }
}

/* Booking form helper text clarity */
.booking-section .text-muted {
  color: rgba(229,231,235,0.78) !important;
}

