/* PROJECT SPYDER SHARED HEADER - matches homepage navigation.
   Include AFTER each page's existing stylesheet. Nothing below changes booking forms,
   image cards, sliders, or page sections. */
:root { --spyder-nav-height: 104px; }
#spyderSiteHeader {
  background: rgba(23,24,25,.96);
  border-bottom: 1px solid rgba(215,26,41,.36);
  box-shadow: 0 1px 14px rgba(143,0,16,.22);
  z-index: 1030;
}
#spyderSiteHeader .navbar {
  min-height: var(--spyder-nav-height);
  padding: 6px 0;
  background: transparent;
  backdrop-filter: none;
}
#spyderSiteHeader .navbar-brand { max-width:57%; padding:0; }
#spyderSiteHeader .navbar-brand img {
  width:235px; height:auto; max-width:100%; max-height:88px;
  margin:0; object-fit:contain; object-position:left center;
}
#spyderSiteHeader .navbar-nav { gap:8px; }
#spyderSiteHeader .navbar-nav .nav-link {
  position:relative;
  display:block;
  padding:15px 10px;
  margin:0;
  border:0;
  background:transparent;
  color:#f3f3f3;
  font-family:Arial,Helvetica,sans-serif;
  font-size:13px;
  font-weight:700;
  line-height:1.5;
  letter-spacing:.09em;
  text-transform:uppercase;
  text-shadow:none;
  cursor:pointer;
  transition:color .25s ease, text-shadow .25s ease;
}
#spyderSiteHeader .navbar-nav .nav-link::after {
  content:"";
  position:absolute;
  bottom:6px; left:10px; right:10px;
  height:2px;
  background:linear-gradient(90deg,#ae0e1a,#ff3b48,#a40716);
  box-shadow:0 0 6px rgba(244,17,40,.55),0 0 15px rgba(207,8,31,.28);
  transform:scaleX(0);
  transform-origin:center;
  opacity:0;
  transition:transform .25s ease,opacity .25s ease;
}
#spyderSiteHeader .navbar-nav .nav-link:is(:hover,:focus-visible,.active),
#spyderSiteHeader .navbar-nav .show > .nav-link {
  color:#ff6872;
  text-shadow:0 0 9px rgba(255,28,44,.68),0 0 21px rgba(203,10,31,.40);
}
#spyderSiteHeader .navbar-nav .nav-link:is(:hover,:focus-visible,.active)::after,
#spyderSiteHeader .navbar-nav .show > .nav-link::after {
  transform:scaleX(1); opacity:1;
}
#spyderSiteHeader .dropdown-menu {
  background:#1b1c1e;
  border:1px solid rgba(229,27,42,.38);
  box-shadow:0 12px 30px rgba(0,0,0,.70),0 4px 22px rgba(197,9,24,.19);
}
#spyderSiteHeader .dropdown-item { color:#f3f3f3; font-family:Arial,Helvetica,sans-serif; }
#spyderSiteHeader .dropdown-item:is(:hover,:focus-visible,.active) {
  background:#381117; color:#fff;
}
#spyderSiteHeader .navbar-toggler {
  border-color:rgba(255,255,255,.25);
}
#spyderSiteHeader :is(a,button):focus-visible {
  outline:3px solid #f3b0b1; outline-offset:3px;
}
/* The original about page starts at the top of the document.
   The fixed header must not cover its heading. */
.spyder-page-top { padding-top:calc(var(--spyder-nav-height) + 24px); }
@media (max-width:991px) {
  :root { --spyder-nav-height:84px; }
  #spyderSiteHeader .navbar-brand img {width:185px; max-height:72px;}
  #spyderSiteHeader .navbar-collapse {background:#171819; padding:14px 10px 20px;}
  #spyderSiteHeader .navbar-nav .nav-link::after {
    bottom:6px;right:auto;width:60px;transform-origin:left;
  }
}
@media(prefers-reduced-motion:reduce) {
  #spyderSiteHeader *,#spyderSiteHeader *::before,#spyderSiteHeader *::after {
    transition:none!important; animation:none!important;
  }
}
