/* =============================================
   HONEYMOONERS.IN - Overrides & Fixes
   Applied on top of original style.css
   ============================================= */

/* Fix: original style.css sets overflow:hidden on body which breaks scroll */
body { overflow-x: hidden; overflow-y: auto; }

/* Fix: original has visibility:hidden on .banner-form - JS will show it but ensure it works */
.banner-form { visibility: visible !important; background-color: rgba(0,0,0,0.6) !important; width: 100%; max-width: 420px; }

/* Fix: header-top opacity 0 - JS restores it, but ensure nav links are white */
.navbar-inverse .navbar-nav > li > a { color: #fff !important; font-weight: 600; letter-spacing: 0.04em; }
.navbar-inverse .navbar-nav > li > a:hover,
.navbar-inverse .navbar-nav > li.active > a { color: #ffae00 !important; background: transparent !important; }
.navbar-toggle { border-color: rgba(255,255,255,0.6); margin-top: 16px; }
.navbar-toggle .icon-bar { background: #fff; }
.navbar-brand img { max-height: 80px; width: auto; }

/* Fix: original p has line-height:0.8 — way too tight */
p { line-height: 1.7 !important; margin-bottom: 8px !important; }
h1,h2,h3,h4,h5,h6 { line-height: 1.2; margin-bottom: 10px; }

/* Fix: a,a:hover color is #FF00FF (magenta) in original — override */
a { color: #333; text-decoration: none !important; }
a:hover { color: #ffae00; }

/* Footer link colors */
#copy a, #copy ul li a { color: #ffae00; }

/* Fix: .outer padding too large on mobile */
.outer { padding: 60px 0; }
@media (max-width: 768px) { .outer { padding: 20px 0; } }

/* Booking form inputs */
.banner-form input, .banner-form select, .banner-form textarea {
  width: 100%; padding: 9px 12px; margin-bottom: 8px;
  border: 1px solid #ccc; border-radius: 3px;
  font-size: 14px; font-family: 'Roboto', sans-serif;
  color: #333 !important; background: #fff;
  height: auto !important;
}
.banner-form input:focus, .banner-form select:focus { border-color: #ffae00; outline: none; }
.banner-form h2 { line-height: 1.2 !important; margin-bottom: 10px; font-size: 26px !important; }
.banner-form p { color: #fff !important; font-size: 13px; }

/* j-forms layout */
.j-forms .j-row { display: flex; gap: 8px; }
.j-forms .j-row .span6 { flex: 1; min-width: 0; }
.j-forms .unit { margin-bottom: 8px; }
.j-forms .input { position: relative; }
.j-forms .tooltip { display: none; }
@media (max-width: 600px) { .j-forms .j-row { flex-direction: column; gap: 0; } }

/* Submit button */
.submit-btn { font-size: 18px !important; padding: 12px 20px; width: 100%; cursor: pointer; border-radius: 3px; }

/* Section heading fix */
.section-heading { padding-bottom: 40px; padding-top: 10px; }
.section-heading h2 { font-size: 28px; font-weight: 400; color: #fff; }
.section-heading h2:before, .section-heading h2:after { background-color: rgba(255,255,255,0.3); }

/* Popular packages */
#popular-pakages-section { padding-bottom: 40px; }
.popular-inner { border-radius: 4px; overflow: hidden; box-shadow: 0 2px 10px rgba(0,0,0,0.2); margin-bottom: 20px; }
.popular-inner img { width: 100%; display: block; }
.popular-content { padding: 12px; }
.popular-content p { color: #fff !important; font-weight: 700; font-size: 14px; }

/* Iframe responsive wrapper */
.video-wrap { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; }
.video-wrap iframe { position: absolute; top:0; left:0; width:100%; height:100%; border:0; }

/* What we do */
.what-inner-wrapper { text-align: center; padding: 20px 10px 30px; }
.what-inner-wrapper .what-img-wrapper { width: 150px; height: 150px; margin: 0 auto 16px; border: 5px solid rgba(255,255,255,0.4); }
.what-inner-wrapper h4 { color: #fff; font-size: 15px; font-weight: 700; line-height: 1.3 !important; margin-bottom: 8px; }
.what-inner-wrapper p { color: rgba(255,255,255,0.85) !important; font-size: 13px; }

/* Travel tips */
.travel-inner-wrapper { display: flex; align-items: flex-start; gap: 16px; padding-bottom: 20px; }
.travel-img-wrapper { flex-shrink: 0; width: 70px; height: 70px; }
.travel-img-wrapper img { width: 100%; height: 100%; object-fit: cover; }
.travel-content-wrapper { flex: 1; width: auto !important; padding-top: 8px !important; padding-left: 0 !important; }
.travel-content-wrapper p { color: #fff !important; font-size: 14px; }
@media (max-width: 600px) {
  .travel-inner-wrapper { flex-direction: column; align-items: center; text-align: center; }
}

/* Social icons */
.socail-wrapper { padding-left: 0; text-align: center; }
.socail-img { width: 80px; height: 80px; margin: 0 auto 8px; display: flex; align-items: center; justify-content: center; background: #fff; border-radius: 50%; overflow: hidden; }
.socail-img img { width: 48px; height: 48px; object-fit: contain; }
.socail-img i { font-size: 32px; }
.socail-fa-fb { color: #3b5998; }
.socail-fa-mail { color: #ea4335; }
.socail-fa-phone { color: #25d366; }
.socail-wrapper p { color: #fff !important; font-size: 13px; margin-top: 6px; }

/* Contact info box */
#contact { width: 100% !important; margin-top: 20px !important; border: none; background: rgba(255,255,255,0.95); border-radius: 6px; padding: 20px 24px; box-shadow: 0 4px 20px rgba(0,0,0,0.2); }
#contact h4 { color: #582A72; font-size: 22px; margin-bottom: 12px; }
#contact p { color: #333 !important; font-size: 14px; }
#contact a { color: #582A72; }

/* Contact section height fix */
#contact-section { height: auto !important; padding-bottom: 40px; }

/* About us box */
.aboutus { border-radius: 6px; padding: 24px; }

/* Cruise contact box */
#cruisecontact { width: auto !important; margin: 20px auto; border-radius: 6px; }
#cruisecontact p { color: #fff !important; }

/* Footer */
footer { background: #ffffff; padding: 20px 0 10px; color: #333; }
#copy p { color: #000000 !important; font-size: 12px; }
#copy p a { color: #582A72; }
#copy ul li a { color: #582A72; }
#copy { text-align: center; padding: 10px 0; }
#copy ul { display: flex; flex-wrap: wrap; justify-content: center; gap: 5px 18px; padding: 0; margin-bottom: 8px; }
#copy ul li { display: inline-block; }
#lowerfooter { background: #0d0720; padding: 20px 5%; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; gap: 12px; }
#footerlogo { float: none !important; width: auto !important; }
#footerlogo img { max-width: 200px; display: block; margin: 0 auto; }
#icon { width: auto !important; height: auto !important; margin-left: 0 !important; float: none !important; text-align: center; }
#icon h4 { color: #ffae00; font-size: 14px; line-height: 1.3 !important; margin-bottom: 4px; }
#icon p { color: rgba(255,255,255,0.65) !important; font-size: 13px; }
#icon a { color: rgba(255,255,255,0.65); }
#linelogo img { max-width: 60%; }

/* Scroll to top */
.scrollToTop { top: auto !important; bottom: 24px; right: 24px; z-index: 500; }
.scrollToTop a { display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; background: #ffae00; border-radius: 50%; box-shadow: 0 2px 8px rgba(0,0,0,0.3); font-size: 22px; color: #1a0e2e; }
.scrollToTop a img { width: 24px; height: 24px; }

/* Loader override (uses gif — show spinner fallback) */
.bullet-yellow { background: none !important; }
.loading-yellow { border: 5px solid rgba(255,255,255,0.3); border-top-color: #fff; border-radius: 50%; animation: spin 0.7s linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } }

/* Form message */
.form-msg { padding: 8px 12px; border-radius: 4px; margin-top: 8px; font-size: 13px; display: none; }

/* Banner-bg used in contact page */
.banner-bg { background-color: #582A72; background-size: cover; min-height: 300px; }
header.banner-bg { position: relative; }

/* Responsive */
@media (max-width: 991px) {
  .banner-form { max-width: 100%; }
}
@media (max-width: 767px) {
  #lowerfooter { flex-direction: column; text-align: center; }
  .navbar-brand img { max-height: 55px; }
}

/* Use actual hero banner image */
.topbannner {
  background-image: url(../images/banner-honeymoonners.jpg) !important;
  background-size: cover !important;
  background-position: center top !important;
}

/* Cruise page banner */
.topbannner.cruise-banner {
  background-image: url(../images/cruise-banner.jpg) !important;
}

/* loader.css gif path fix */
.bullet-yellow {
  background-image: url(../images/loader-1.gif) !important;
}

/* OUR HONEYMOONERS – video title text (purple section) */
#popular-pakages-section .popular-content p {
  color: #000000 !important;
}

/* Best Destinations for You (dark red section) – country name white */
section[style*="801F15"] .popular-content p {
  color: #ffffff !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  float: none !important;
  display: block;
  margin-bottom: 6px !important;
  line-height: 1.4 !important;
}

/* City list text white */
section[style*="801F15"] .popular-content {
  color: #ffffff !important;
  font-size: 13px !important;
  line-height: 1.65 !important;
  padding: 12px 14px !important;
  background: rgba(0,0,0,0.5) !important;
}

/* Social icons – image version */
.socail-img img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  border-radius: 50%;
}
