/* =========================================================
   Global Theme Variables (WCAG-Friendly)
========================================================= */
:root {
  --navy-overlay: #091931;
  --gold: #b8961f;        /* Accessible gold */
  --gold-hover: #987918;  /* Accessible darker hover */
  --silver: #c0c0c0;
  --soft-white: #f9f9f9;
  --pure-white: #ffffff;
  --jet-black: #000000;
}

/* =========================================================
   Theme Wrapper
========================================================= */
.custom-theme {
  background-color: var(--navy-overlay);
  color: var(--pure-white);
  font-family: 'Segoe UI', sans-serif;
  scroll-behavior: smooth;
}

.custom-theme h1,
.custom-theme h2,
.custom-theme h3,
.custom-theme h4,
.custom-theme h5,
.custom-theme h6 {
  color: var(--pure-white);
}

/* Heading Sizes */
.custom-theme h1 {
  font-size: 2rem;
}
@media (min-width: 768px) {
  .custom-theme h1 {
    font-size: 3rem;
  }
}

/* =========================================================
   Typography Utilities
========================================================= */

/* Gold now used ONLY for emphasis — larger + bold */
.text-gold {
  color: var(--gold);
  font-weight: 700;
  font-size: 1.15em;
  letter-spacing: 0.5px;
  transition: 0.3s ease-in-out;
}
.text-gold:hover {
  color: var(--gold-hover);
}

/* Prevent gold from being unreadable on white backgrounds */
.bg-pure-white .text-gold,
.bg-soft-white .text-gold {
  color: var(--jet-black) !important;
}

/* Gold headings remain readable */
h1.text-gold,
h2.text-gold,
h3.text-gold,
h4.text-gold {
  font-weight: 800;
  font-size: 1.2em;
}

.text-silver {
  color: var(--silver);
}
.text-soft-white {
  color: var(--soft-white);
}
.text-black {
  color: var(--jet-black);
}

/* =========================================================
   Buttons
========================================================= */
.btn-gold,
.custom-theme .btn {
  background-color: var(--gold);
  color: var(--pure-white);
  border: none;
  font-weight: 600;
  transition: background 0.3s ease, color 0.3s ease;
  padding: 10px 25px;
}

.btn-gold:hover,
.custom-theme .btn:hover {
  background-color: var(--gold-hover);
  color: var(--jet-black);
  box-shadow: 0 0 10px var(--gold);
}

/* =========================================================
   Background Utility Classes
========================================================= */
.bg-navy-overlay { background-color: var(--navy-overlay) !important; }
.bg-soft-white   { background-color: var(--soft-white) !important; }
.bg-gold         { background-color: var(--gold) !important; }
.bg-pure-white   { background-color: var(--pure-white) !important; }
.bg-black        { background-color: var(--jet-black) !important; }

/* =========================================================
   Hero Section
========================================================= */
.hero-section {
  background: url('img/17363879_MotionElements_purple-stroke-cyber-background-animation-vimage.gif')
              no-repeat center center;
  background-size: cover;
  min-height: 90vh;
  position: relative;
  display: flex;
  align-items: center;
}

.hero-section::before {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.55);
  z-index: 1;
}

.hero-content {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 700px;
  margin: 0 auto;
  padding: 0 15px;
}

/* =========================================================
   Services Section
========================================================= */
.services-section {
  background-color: var(--navy-overlay);
  padding: 60px 0;
}

.service-card {
  background-color: var(--soft-white);
  border-left: 5px solid var(--gold);
  border-radius: 8px;
  color: var(--jet-black);
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  transition: transform 0.3s ease;
}
.service-card:hover {
  transform: translateY(-5px);
}

/* =========================================================
   Navbar
========================================================= */
.custom-theme .navbar {
  position: relative;
  border-bottom: 4px solid var(--gold);
  background: linear-gradient(to right, #b8961f, #987918);
  box-shadow:
    inset 0 -2px 4px rgba(0, 0, 0, 0.3),
    0 2px 10px rgba(0, 0, 0, 0.4);
  color: var(--jet-black);
}

.custom-theme .navbar::after {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 5px;
  background: linear-gradient(
    to bottom,
    rgba(255,255,255,0.4),
    rgba(255,255,255,0)
  );
  pointer-events: none;
}

.navbar .nav-link {
  font-weight: 500;
  transition: 0.3s ease;
  color: var(--jet-black) !important;
}

.navbar .nav-link:hover,
.navbar .nav-link.active {
  color: var(--pure-white) !important;
  background-color: rgba(0, 0, 0, 0.1);
  border-radius: 5px;
}

/* Toggler Icon */
.navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23ffffff' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(255,255,255, 0.8)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

/* =========================================================
   Borders
========================================================= */
.custom-theme .border-gold {
  border: 3px solid var(--gold) !important;
  border-radius: 8px;
}

/* =========================================================
   Footer
========================================================= */
.custom-theme footer {
  background: linear-gradient(to right, #b8961f, #987918);
  color: var(--jet-black);
  border-top: 4px solid var(--gold);
  box-shadow:
    inset 0 2px 4px rgba(0, 0, 0, 0.3),
    0 -2px 10px rgba(0, 0, 0, 0.4);
  position: relative;
}

.custom-theme footer::after {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 5px;
  background: linear-gradient(
    to bottom,
    rgba(255,255,255,0.3),
    rgba(255,255,255,0)
  );
  pointer-events: none;
}

footer p {
  font-size: 0.9rem;
  margin: 0;
}

/* =========================================================
   NEW UPDATES (Requested Fixes)
========================================================= */

/* Make service section headings always gold */
.services-section .service-card h5 {
  color: var(--gold) !important;
  font-weight: 700;
}

/* Ensure hover does NOT change heading color */
.services-section .service-card:hover h5 {
  color: var(--gold) !important;
}

/* Make 'Send a Message' heading gold in contact section */
#contact form h5 {
  color: var(--gold) !important;
  font-weight: 700;
}

/* =========================================================
   Bigger Section Headings (Who We Are, Our Services, etc.)
========================================================= */

.section-title,
#who h2,
#services h2,
#projects h2,
#offer h2,
#contact h2 {
  font-size: 2.4rem !important;    /* Bigger heading */
  font-weight: 800 !important;     /* Stronger bold */
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--gold) !important;   /* Keep your gold theme */
  margin-bottom: 40px !important;
}

/* Larger on big screens */
@media (min-width: 992px) {
  .section-title,
  #who h2,
  #services h2,
  #projects h2,
  #offer h2,
  #contact h2 {
    font-size: 3rem !important;
  }
}
