/* =====================================================
   BRAND VARIABLES
===================================================== */
:root{
  --brand-navy:#003358;
  --brand-gold:#D4AF37;
  --brand-gold-dark:#c6a430;
  --brand-bronze:#B78471;
  --white:#ffffff;
}

/* =====================================================
   NAVBAR BASE (STICKY – SAFE)
===================================================== */
.site-header{
  position: sticky;   /* ✅ KEY FIX */
  top: 0;
  z-index: 999;
}

.site-header .navbar{
  background-color: var(--brand-navy);
}

/* Logo */
.site-header .navbar-brand{
  background: var(--white);
  border-radius: 6px;
}

/* Nav links */
.site-header .nav-link{
  color: var(--white) !important;
  font-weight: 500;
}

.site-header .nav-link:hover,
.site-header .nav-link.active{
  color: var(--brand-gold) !important;
}

/* =====================================================
   DROPDOWN
===================================================== */
.site-header .dropdown-menu{
  border-radius: 10px;
  border: none;
  box-shadow: 0 10px 30px rgba(0,0,0,.18);
}

.site-header .dropdown-item:hover{
  background-color: var(--brand-gold);
  color: var(--brand-navy);
}

/* =====================================================
   BUTTONS
===================================================== */
.btn{
  padding:14px 28px;
  font-weight:600;
}

.btn-warning{
  background:var(--brand-gold);
  border-color:var(--brand-gold);
  color:var(--brand-navy);
}

.btn-warning:hover{
  background:var(--brand-gold-dark);
}

.btn-outline-warning{
  border-color:var(--brand-gold);
  color:var(--brand-gold);
}

.btn-outline-warning:hover{
  background:var(--brand-gold);
  color:var(--brand-navy);
}

.btn-secondary{
  background:var(--brand-bronze);
  border-color:var(--brand-bronze);
  color:#fff;
}

/* Apply safe hover ONLY on devices that support hover */
@media (hover: hover) and (pointer: fine) {
  .btn-secondary:hover {
    background-color: #a46b5e;   /* darker bronze */
    box-shadow: 0 6px 16px rgba(0,0,0,0.25);
  }
}

/* =====================================================
   HAMBURGER (ANIMATED – SAFE)
===================================================== */
.animated-toggler{
  border:2px solid var(--brand-gold);
  background:none;
  padding:6px 10px;
}

.animated-toggler .toggler-line{
  width:24px;
  height:2px;
  background:var(--brand-gold);
  display:block;
  margin:5px 0;
  transition:all .3s ease;
}

.animated-toggler:not(.collapsed) .toggler-line:nth-child(1){
  transform:rotate(45deg) translate(5px,5px);
}
.animated-toggler:not(.collapsed) .toggler-line:nth-child(2){
  opacity:0;
}
.animated-toggler:not(.collapsed) .toggler-line:nth-child(3){
  transform:rotate(-45deg) translate(6px,-6px);
}

/* =====================================================
   MOBILE – SCROLL SAFE
===================================================== */
@media (max-width:991px){

  .navbar-collapse{
    background:var(--brand-navy);
    padding:20px;
    border-radius:0 0 12px 12px;
  }

  .navbar-nav{
    text-align:left;
    margin-bottom:20px;
  }

  .site-header .btn{
    width:100%;
    text-align:center;
  }
}

/* ===============================
   FLOATING SUPPORT
================================ */
.floating-support{
  position:fixed;
  right:20px;
  bottom:20px;
  display:flex;
  flex-direction:column;
  gap:12px;
  z-index:999;
}

.floating-support a{
  width:54px;
  height:54px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#ffffff;
  font-size:22px;
  box-shadow:0 14px 30px rgba(0,0,0,.3);
  transition:.3s ease;
}

.floating-support a:hover{
  transform:scale(1.1);
}

.floating-support .call{
  background:#003358;
}

.floating-support .whatsapp{
  background:#25D366;
}

/* ===============================
   RESPONSIVE
================================ */
@media(max-width:768px){
  .form-wrapper{
    margin-top:30px;
  }
}

/* ===============================
   FOOTER BASE
================================ */

.footer-about-logo{
  background:#ffffff;
  padding:12px 16px;
  border-radius:12px;
  display:inline-block;
  box-shadow:
    0 10px 25px rgba(0,0,0,.25),
    inset 0 0 0 1px rgba(0,0,0,.05);
}

/* JUSTIFIED ABOUT TEXT */
.footer .col-md-4 p{
  text-align:justify;            /* ✅ justify text */
  max-width:380px;               /* readability */
  margin-left:auto;
  margin-right:auto;
  line-height:1.7;
}

.footer{
  background:#002746; /* Dark brand navy */
  color:#cfd6dd;
}

.footer h3,
.footer h2{
  color:#ffffff;
  font-weight:700;
}

.footer p{
  color:#cfd6dd;
  font-size:14px;
}

/* ===============================
   NEWSLETTER BOX
================================ */
.newsletter-box{
  background:linear-gradient(135deg,#003358,#002746);
  border-radius:24px;
  padding:30px;
  color:#ffffff;
  box-shadow:0 18px 45px rgba(0,0,0,.35);
}

.newsletter-box h1{
  font-weight:800;
}

.newsletter-box p{
  color:#dbe4ee;
}

.newsletter-box .form-control{
  border-radius:30px;
  padding:14px 18px;
  border:none;
}

.newsletter-box .btn-primary{
  border-radius:30px;
  padding:14px 26px;
  font-weight:700;
  background:linear-gradient(135deg,#D4AF37,#B78471);
  border:none;
  color:#003358;
  transition:.3s ease;
}

.newsletter-box .btn-primary:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 28px rgba(212,175,55,.45);
}

/* ===============================
   ABOUT LOGO
================================ */
.footer-about-logo{
  max-width:150px;
  margin-bottom:14px;
}

/* ===============================
   FOOTER LINKS
================================ */
.footer ul li{
  margin-bottom:10px;
}

.footer ul li a{
  text-decoration:none;
  color:#cfd6dd;
  font-size:14px;
  transition:.25s ease;
}

.footer ul li a:hover{
  color:#D4AF37;
  padding-left:4px;
}

.footer .badge{
  background:#D4AF37;
  color:#003358;
  font-size:10px;
  font-weight:700;
}

/* ===============================
   QUICK CONTACT
================================ */
.quick-contact i{
  color:#D4AF37;
  font-size:16px;
  min-width:18px;
  margin-top:2px;
}

.quick-contact a{
  text-decoration:none;
  color:#cfd6dd;
  font-size:14px;
  transition:.25s ease;
}

.quick-contact a:hover{
  color:#D4AF37;
}

/* ===============================
   CREDITS
================================ */
.credits{
  border-top:1px solid rgba(255,255,255,.1);
}

.credits a{
  color:#D4AF37;
  font-weight:600;
  text-decoration:none;
}

.credits a:hover{
  text-decoration:underline;
}

/* ===============================
   RESPONSIVE
================================ */
@media(max-width:768px){

  .newsletter-box{
    text-align:center;
  }

  .newsletter-box form{
    flex-direction:column;
  }

  .newsletter-box .btn-primary{
    width:100%;
  }

  .footer-about-logo{
    margin-left:auto;
    margin-right:auto;
    display:block;
  }
}
