/* ============================================
   MODERNIZE OVERLAY — The Bullet Factory
   Loaded after all Muse-generated CSS to
   refresh the look without touching generated code.
   ============================================ */

/* ---------- CSS Variables ---------- */
:root {
  --text-primary: #1a1a1a;
  --text-secondary: #444;
  --accent-orange: #F7931E;
  --accent-amber: #E8870E;
  --cta-bg: #F7931E;
  --cta-hover: #d97d0a;
  --menu-active: #F7931E;
  --shadow-sm: 0 1px 3px rgba(0,0,0,.08);
  --shadow-md: 0 4px 12px rgba(0,0,0,.1);
  --radius-sm: 8px;
  --radius-md: 12px;
  --transition: .25s ease;
}

/* ---------- Typography ---------- */
/* Only override font-family/weight/color — NOT font-size or line-height,
   because Muse positions elements with pixel-precise calculations based
   on the original 14px/17px values. Changing them breaks layout. */
body {
  font-family: 'Plus Jakarta Sans', 'Helvetica Neue', Arial, sans-serif !important;
  color: var(--text-primary) !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.H1-Style,
.H2-Style {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  color: var(--text-primary) !important;
  letter-spacing: -0.01em;
}

.H1-Style {
  font-weight: 700 !important;
}

.H2-Style {
  font-weight: 600 !important;
}

.Paragraph-Style,
.normal_text {
  color: var(--text-secondary) !important;
}

/* ---------- Links ---------- */
/* Exclude nav menu links and nontext block links (service cards etc.) */
a.nontext {
  color: var(--text-primary) !important;
}

a:link:not(.MenuItem):not(.nontext) {
  color: var(--accent-orange) !important;
  text-decoration-color: transparent !important;
  transition: color var(--transition), text-decoration-color var(--transition) !important;
}

a:hover:not(.MenuItem):not(.nontext) {
  color: var(--accent-amber) !important;
  text-decoration-color: var(--accent-amber) !important;
}

a:visited:not(.MenuItem):not(.nontext) {
  color: var(--accent-amber) !important;
}

/* ---------- Buttons & CTAs ---------- */
.submit-btn,
button.submit-btn {
  border-radius: var(--radius-sm) !important;
  box-shadow: var(--shadow-sm) !important;
  transition: all var(--transition) !important;
  letter-spacing: 0.02em;
}

.submit-btn:hover,
button.submit-btn:hover {
  box-shadow: var(--shadow-md) !important;
  transform: translateY(-1px);
}

/* Override bright yellow backgrounds on buttons/CTAs */
[style*="background-color:#FCEE21"],
[style*="background-color: #FCEE21"],
[style*="background-color:#fcee21"],
#u7418-4 {
  background-color: var(--cta-bg) !important;
  color: #fff !important;
  border-radius: var(--radius-sm) !important;
}

#u7418-4 a:link,
#u7418-4 a:visited,
#u7418-4 .H2-Style {
  color: #fff !important;
}

/* ---------- Menu / Navigation ---------- */
.MenuBar {
  box-shadow: 0 2px 8px rgba(0,0,0,.06) !important;
}

.MenuBar .MenuItemContainer a,
.MenuBar .MenuBarView a {
  transition: color var(--transition), background-color var(--transition) !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  letter-spacing: 0.01em;
}

.MuseMenuActive {
  color: var(--menu-active) !important;
  border-color: var(--menu-active) !important;
}

/* ---------- Images & Cards ---------- */
img {
  transition: transform var(--transition), box-shadow var(--transition) !important;
}

/* Subtle lift on linked images */
a img:hover {
  transform: scale(1.015);
  box-shadow: var(--shadow-md) !important;
}

/* ---------- Form Inputs ---------- */
.form-grp input,
.form-grp textarea {
  border-radius: 6px !important;
  border: 1px solid #ddd !important;
  transition: border-color var(--transition), box-shadow var(--transition) !important;
  padding: 10px 12px !important;
}

.form-grp input:focus,
.form-grp textarea:focus {
  border-color: var(--accent-orange) !important;
  box-shadow: 0 0 0 3px rgba(247,147,30,.15) !important;
  outline: none !important;
}

/* ---------- Smooth scroll ---------- */
html {
  scroll-behavior: smooth;
}

/* ---------- Selection color ---------- */
::selection {
  background: rgba(247,147,30,.2);
  color: var(--text-primary);
}

/* ---------- Transitions on state-animated elements ---------- */
.animateStates {
  transition: all .3s ease-in-out !important;
}

/* ============================================
   PHASE 2 — Visual Enhancements
   ============================================ */

/* ---------- 1. Footer Dark Background ---------- */
#u2180,
#u2180-bw {
  background-color: #1a1a1a !important;
}

#u2180_align_to_page,
#u2180_align_to_page p,
#u2180_align_to_page span {
  color: #aaa !important;
}

#u2180_align_to_page a:link,
#u2180_align_to_page a:visited {
  color: #ccc !important;
}

#u2180_align_to_page a:hover {
  color: var(--accent-orange) !important;
}

/* Bottom bar matches footer */
#u2185,
#u2185-bw {
  background-color: #111 !important;
}

/* ---------- 3. Slideshow Captions ---------- */
.SlideShowCaptionPanel .SSSlideCaption {
  background-color: rgba(0, 0, 0, 0.6) !important;
  color: #fff !important;
}

.SlideShowCaptionPanel .SSSlideCaption p {
  color: #fff !important;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
}

/* ---------- 4. Social Icons Polish ---------- */
#u2187,
#u2225 {
  opacity: 0.7;
  transition: opacity var(--transition), transform var(--transition) !important;
}

#u2187:hover,
#u2225:hover {
  opacity: 1;
  transform: scale(1.15) !important;
}
