/* -------------  Core tokens ------------- */
:root { --ct-primary:#ff6b3d; }

body           { font-family:'Poppins',sans-serif; }
section        { padding:4rem 0; }

/* -------------  Buttons ------------- */
.btn-ct        { background:var(--ct-primary); color:#fff; border:none; }
.btn-ct:hover  { background:#e85e33; }



/* -------------  Banner + Navbar ------------- */
.banner        { position:fixed; top:0; left:0; width:100%; z-index:1040; }
.navbar        { height:4rem; padding:0; background:#212529!important; }
.navbar-offset { top:2rem; background-color: transparent; }          /* sits under banner   */

.navbar .container   { display:flex; align-items:center; height:100%;}
.navbar-brand        { height:100%; }
.navbar-brand img    { height:100%; width:auto; display:block;
                       filter:brightness(0) invert(1);}

@media (max-width: 991.98px) {          /* ≤ lg – same as collapse */
  .navbar-collapse {
    position: absolute;     /* lift it out of normal flow          */
    top: 100%;              /* sit directly below the bar          */
    left: 0;
    width: 100%;
    background: #212529;    /* 👈 pick any solid colour you want   */
    padding: 1rem 0;        /* breathing room around each link     */
    z-index: 1020;          /* keep it above page images/content   */
  }

  /* Make sure the links contrast well on the new dark bg */
  .navbar-collapse .nav-link,
  .navbar-collapse .btn { color: #fff; }

  .navbar-collapse .nav-link:hover,
  .navbar-collapse .nav-link.active { opacity: .8; }
}


/* -------------  Page headers ------------- */
.page-header   { margin-top:6rem; }                 /* 2 rem banner + 4 rem nav */

/* -------------  Index‑only hero ------------- */
.hero          { background:url("/assets/images/background.jpg")
                 center/cover no-repeat; min-height:100vh;
                 display:flex; align-items:center; color:#fff;
                 position:relative; margin-top:6rem; }
.hero::after   { content:''; position:absolute; inset:0;
                 background:rgba(0,0,0,.45); }
.hero-content  { position:relative; z-index:1; max-width:680px; }

/* -------------  Misc. components ------------- */
.amenity i     { font-size:2.5rem; color:var(--ct-primary); }
.newsletter-bg { background:#fef8f6; }
