/* 
 * GRAVITY THEME OVERRIDE
 * Applies a premium, minimalistic, gravity-oriented aesthetic 
 * without breaking the original structural HTML/CSS grid.
 */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap');

:root {
  /* Gravity Palette */
  --brand-navy: #0A0F1C;
  --brand-navy-light: #151E32;
  --brand-orange: #FF5A1F;
  --brand-orange-hover: #E04810;
  --color-bg-primary: #FFFFFF;
  --color-bg-secondary: #F8F9FA;
  --color-border: #EAECEF;
  
  /* Gravity Typography */
  --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  
  /* Gravity Shadows */
  --shadow-float: 0 10px 40px -10px rgba(0,0,0,0.08);
  --shadow-glow-orange: 0 8px 24px -8px rgba(255, 90, 31, 0.4);
  
  /* Overriding old variables if they exist */
  --shadow-card: var(--shadow-float) !important;
  --shadow-card-hover: 0 20px 40px -10px rgba(0,0,0,0.12) !important;
  --radius-card: 16px !important;
  --radius-btn: 8px !important;
}

/* Global Typography Override */
body, p, a, li, span, input, button {
  font-family: var(--font-sans) !important;
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-sans) !important;
  font-weight: 700 !important;
  letter-spacing: -0.02em !important;
  color: var(--brand-navy) !important;
}

/* Base Body Update */
body {
  background-color: var(--color-bg-primary) !important;
  color: #334155 !important;
}

/* Button Upgrades (Gravity Style) */
.btn-pri, button[type="submit"], .cta-btn, .button.primary, .nav-btn, .cta-nav, 
.page-hero .hero-ctas .btn-primary, .page-hero .hero-ctas .btn-pri,
#main .btn-primary, #main .btn-pri, body .btn-primary, body a.btn-primary {
  background-color: var(--brand-orange) !important;
  color: #ffffff !important;
  font-weight: 600 !important;
  border-radius: var(--radius-btn) !important;
  box-shadow: none !important;
  border: none !important;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

.btn-pri:hover, button[type="submit"]:hover, .cta-btn:hover, .button.primary:hover, .nav-btn:hover, .cta-nav:hover, 
.page-hero .hero-ctas .btn-primary:hover, .page-hero .hero-ctas .btn-pri:hover,
#main .btn-primary:hover, #main .btn-pri:hover, body .btn-primary:hover, body a.btn-primary:hover {
  transform: translateY(-2px) !important;
  box-shadow: var(--shadow-glow-orange) !important;
  background-color: var(--brand-orange-hover) !important;
  color: #ffffff !important;
}

.btn-sec, .button.secondary {
  background-color: transparent !important;
  color: var(--brand-navy) !important;
  border: 1px solid var(--color-border) !important;
  font-weight: 600 !important;
  border-radius: var(--radius-btn) !important;
  transition: all 0.3s ease !important;
}

.btn-sec:hover, .button.secondary:hover, .page-hero .hero-ctas .btn-sec:hover, .page-hero .hero-ctas .btn-secondary:hover {
  background-color: rgba(255, 90, 31, 0.05) !important;
  border-color: var(--brand-orange) !important;
  color: var(--brand-orange) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 4px 12px rgba(255, 90, 31, 0.15) !important;
}

/* All Deep/Miscellaneous Form & UI Buttons */
.hero-form-next:hover, .hero-form-submit:hover, .consult-form-next:hover,
.map-strip-btn:hover, .testimonial-read-more:hover {
  background-color: var(--brand-orange-hover) !important;
  color: #ffffff !important;
  transform: translateY(-2px) !important;
  box-shadow: var(--shadow-glow-orange) !important;
  border-color: var(--brand-orange-hover) !important;
}

/* Deep Form Back/Cancel Buttons */
.consult-form-back:hover, .hero-form-back:hover {
  background-color: rgba(255, 90, 31, 0.08) !important;
  border-color: var(--brand-orange-hover) !important;
  color: var(--brand-orange-hover) !important;
}

/* Card Upgrades (Floating Gravity Effect) */
.card, .benefit-card, .service-card, .product-card, .faq-item, .process-card, .feature-card {
  background: #ffffff !important;
  border: 1px solid var(--color-border) !important;
  border-radius: var(--radius-card) !important;
  box-shadow: var(--shadow-float) !important;
  transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
  cursor: pointer !important;
}

.card:hover, .benefit-card:hover, .service-card:hover, .product-card:hover, .process-card:hover, .feature-card:hover, .faq-item:hover {
  transform: translateY(-4px) !important;
  box-shadow: var(--shadow-card-hover) !important;
  border-color: var(--brand-orange) !important;
}

/* Deep Nested Hover Accents */
.process-card:hover .process-number, 
.service-card:hover .service-icon,
.benefit-card:hover .benefit-icon {
  color: var(--brand-orange) !important;
}

/* Navigation Overrides */
header, .site-header, .top-nav {
  background-color: rgba(255, 255, 255, 0.85) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  border-bottom: 1px solid rgba(0,0,0,0.05) !important;
}

/* Hero Section Refinement */
.hero, .hero-section, .page-hero {
  background-color: var(--brand-navy) !important;
  background-image: none !important; /* Remove messy gradients if any */
}

.hero h1, .hero-section h1, .page-hero h1, .page-hero h2, .page-hero h3 {
  color: #ffffff !important;
}

.hero p, .hero-section p, .page-hero p, .page-hero li {
  color: rgba(255, 255, 255, 0.8) !important;
}

/* SVGs / Icons */
.icon svg, [data-icon] svg {
  color: var(--brand-orange) !important;
}
