/* EA-HOMEPAGE-SHELL-014 — homepage shell polish only */

body.home .ea-hdr-brand .logo img,
body.page-template-index .ea-hdr-brand .logo img,
body.ea-dark-page .ea-hdr-brand .logo img {
  filter: brightness(1.35) contrast(1.08) saturate(1.05);
}

body.home .ea-hdr-tagline,
body.page-template-index .ea-hdr-tagline,
body.ea-dark-page .ea-hdr-tagline {
  color: #FFFFFF !important;
  text-shadow: 0 4px 12px rgba(0,0,0,0.6) !important;
}

body.home .logtophead,
body.page-template-index .logtophead {
  min-height: 82px !important;
}

body.home .ea-hp-hero-inner,
body.page-template-index .ea-hp-hero-inner {
  padding-top: 0 !important;
}

body.home .ea-hp-hero-label,
body.page-template-index .ea-hp-hero-label {
  font-size: 13.5px !important;
  font-weight: 800 !important;
  letter-spacing: 3.5px !important;
  color: #FFC107 !important; /* Premium Gold Upgrade */
  text-shadow: 0 3px 10px rgba(0,0,0,0.5) !important;
}

body.home .headerbottom,
body.page-template-index .headerbottom {
  overflow: visible !important;
}

body.home .ea-mega-nav,
body.page-template-index .ea-mega-nav {
  width: 100% !important;
}

body.home .ea-mega-list,
body.page-template-index .ea-mega-list {
  display: flex !important;
  flex-wrap: nowrap !important;
  justify-content: space-between !important;
  align-items: stretch !important;
  gap: 4px !important;
  width: 100% !important;
}

body.home .ea-mega-list > .ea-mega-item,
body.page-template-index .ea-mega-list > .ea-mega-item {
  flex: 0 1 auto !important;
  min-width: 0 !important;
}


body.home .ea-mega-panel,
body.page-template-index .ea-mega-panel {
  border-radius: 16px !important;
}

body.home .ea-mega-panel .ea-panel-sublist li a,
body.page-template-index .ea-mega-panel .ea-panel-sublist li a {
  font-size: 14px !important;
  line-height: 1.45 !important;
  white-space: normal !important;
  display: block !important;
}

body.home .ea-mega-panel h4,
body.home .ea-mega-panel h5,
body.home .ea-mega-panel .ea-panel-title,
body.home .ea-mega-panel .ea-panel-head,
body.page-template-index .ea-mega-panel h4,
body.page-template-index .ea-mega-panel h5,
body.page-template-index .ea-mega-panel .ea-panel-title,
body.page-template-index .ea-mega-panel .ea-panel-head {
  font-size: 15px !important;
  line-height: 1.35 !important;
  color: #FFFFFF !important;
  text-shadow: 0 2px 8px rgba(0,0,0,0.4) !important;
}

body.home #ea-hp-hero,
body.page-template-index #ea-hp-hero {
  background: #7A97B8 !important; /* 3 */
}

body.home #ea-hp-trust-strip,
body.page-template-index #ea-hp-trust-strip {
  background: #44648A !important; /* 2 */
}

body.home #ea-hp-logos,
body.page-template-index #ea-hp-logos {
  background: #A3BFDE !important; /* 4 */
}

body.home #ea-hp-services,
body.home #ea-hp-faq,
body.page-template-index #ea-hp-services,
body.page-template-index #ea-hp-faq {
  background: #0B1F38 !important; /* Deep dark blue for gold label pop */
}

body.home #ea-hp-products,
body.home #ea-hp-videos,
body.page-template-index #ea-hp-products,
body.page-template-index #ea-hp-videos {
  background: #1D4472 !important; /* 1 */
}

body.home #ea-hp-portfolio,
body.home #ea-hp-why,
body.home #ea-hp-blog-preview,
body.page-template-index #ea-hp-portfolio,
body.page-template-index #ea-hp-why,
body.page-template-index #ea-hp-blog-preview {
  background: #7A97B8 !important; /* 3 */
}

body.home #ea-hp-reviews,
body.home #ea-hp-cta,
body.page-template-index #ea-hp-reviews,
body.page-template-index #ea-hp-cta {
  background: #44648A !important; /* 2 */
}

body.home .ea-hp-service-card,
body.home .ea-product-card,
body.home .ea-hp-review-card,
body.home .ea-hp-video-card,
body.home .ea-hp-why-card,
body.page-template-index .ea-hp-service-card,
body.page-template-index .ea-product-card,
body.page-template-index .ea-hp-review-card,
body.page-template-index .ea-hp-video-card,
body.page-template-index .ea-hp-why-card {
  background: #102B49 !important;
  border: 1px solid rgba(143,163,183,0.28) !important;
  box-shadow: 0 18px 46px rgba(0,0,0,0.26) !important;
}

body.home .ea-hp-why-icon,
body.page-template-index .ea-hp-why-icon {
  color: #FFC107 !important; /* Premium Gold Upgrade */
  filter: drop-shadow(0 2px 4px rgba(0,0,0,0.3));
}

body.home .ea-hp-faq-item summary,
body.page-template-index .ea-hp-faq-item summary {
  color: #FFFFFF !important;
  text-shadow: 0 2px 8px rgba(0,0,0,0.4) !important;
}

body.home .ea-hp-faq-answer p,
body.page-template-index .ea-hp-faq-answer p {
  color: #FFFFFF !important;
}

body.home .ea-hp-faq-icon,
body.page-template-index .ea-hp-faq-icon {
  color: #FFC107 !important;
}

@media (min-width: 768px) {
  body.home .ea-hp-faq-item:hover summary,
  body.page-template-index .ea-hp-faq-item:hover summary {
    color: #FFFFFF !important;
  }
}

body.home footer,
body.home #footer,
body.home .footer,
body.page-template-index footer,
body.page-template-index #footer,
body.page-template-index .footer {
  background: #1D4472 !important; /* 1 */
  border-top: 1px solid rgba(255,255,255,0.15) !important;
}

body.page-template-index .footer h4 {
  color: #FFC107 !important; /* Premium Gold Upgrade */
  letter-spacing: 1.4px !important;
  text-shadow: 0 2px 4px rgba(0,0,0,0.3);
}

body.page-template-index .footer a,
body.page-template-index .footer p,
body.page-template-index .footer li,
body.page-template-index .footer span {
  color: #FFFFFF !important;
  text-shadow: 0 2px 8px rgba(0,0,0,0.4) !important;
}

body.home footer input,
body.home footer select,
body.home footer textarea,
body.home #footer input,
body.home #footer select,
body.home #footer textarea,
body.home .footer input,
body.home .footer select,
body.page-template-index .footer textarea {
  background: #102B49 !important;
  border: 1px solid rgba(143,163,183,0.28) !important;
  color: #FFFFFF !important;
  border-radius: 8px !important;
  min-height: 44px !important;
}

body.home footer input::placeholder,
body.home footer textarea::placeholder,
body.home #footer input::placeholder,
body.home #footer textarea::placeholder,
body.home .footer input::placeholder,
body.home .footer textarea::placeholder,
body.page-template-index footer input::placeholder,
body.page-template-index footer textarea::placeholder,
body.page-template-index #footer input::placeholder,
body.page-template-index #footer textarea::placeholder,
body.page-template-index .footer input::placeholder,
body.page-template-index .footer textarea::placeholder {
  color: #8FA3B7 !important;
}

body.home footer button,
body.home footer input[type=submit],
body.home #footer button,
body.home #footer input[type=submit],
body.home .footer button,
body.home .footer input[type=submit],
body.page-template-index footer button,
body.page-template-index footer input[type=submit],
body.page-template-index #footer button,
body.page-template-index #footer input[type=submit],
body.page-template-index .footer button,
body.page-template-index .footer input[type=submit] {
  background: #FFC107 !important; /* Premium Gold Upgrade */
  color: #0B1F38 !important;
  border: none !important;
  border-radius: 8px !important;
  min-height: 46px !important;
  font-weight: 800 !important;
  letter-spacing: 0.03em !important;
  transition: all 0.2s ease;
}
body.page-template-index .footer input[type=submit]:hover {
  background: #FFFFFF !important;
  transform: translateY(-2px);
}

@media (max-width: 1440px) {
  body.home .ea-mega-list > .ea-mega-item > .ea-mega-link,
  body.page-template-index .ea-mega-list > .ea-mega-item > .ea-mega-link {
    font-size: 11.2px !important;
    padding-left: 6px !important;
    padding-right: 6px !important;
  }
}

@media (max-width: 1280px) {
  body.home .ea-mega-list > .ea-mega-item > .ea-mega-link,
  body.page-template-index .ea-mega-list > .ea-mega-item > .ea-mega-link {
    font-size: 10.8px !important;
    padding-left: 5px !important;
    padding-right: 5px !important;
  }
}

/* Unified mobile header/content spacing system */
@media (max-width: 767px) {
  :root {
    --ea-mobile-header-row: 56px;
    --ea-mobile-logo-height: 44px;
    --ea-mobile-section-offset: 132px;
    --ea-mobile-home-gap: 135px;
  }

  body.home .logtophead,
  body.page-template-index .logtophead,
  body.ea-dark-page .logtophead {
    min-height: var(--ea-mobile-header-row) !important;
  }

  body.home .ea-hdr-brand,
  body.page-template-index .ea-hdr-brand,
  body.ea-dark-page .ea-hdr-brand {
    padding: 6px 0 !important;
  }

  body.home .ea-hdr-brand .logo img,
  body.page-template-index .ea-hdr-brand .logo img,
  body.ea-dark-page .ea-hdr-brand .logo img {
    height: var(--ea-mobile-logo-height) !important;
  }

  .homebaner,
  #ea-hero {
    margin-top: var(--ea-mobile-header-row) !important;
  }

  .ea-cat-hero,
  .cat-hero,
  .sp-hero,
  .ea-seo-hero,
  .ea-bdhero {
    padding-top: var(--ea-mobile-section-offset) !important;
  }

  body.home .ea-hp-hero-inner,
  body.page-template-index .ea-hp-hero-inner {
    padding-top: var(--ea-mobile-home-gap) !important;
  }
}

/* ================================================
   EA-SPACING-SYSTEM-v1 — Homepage Rhythm Alignment
   spacing-only refinements (padding / margin / gap)
   ================================================ */
body.home #ea-hp-trust-strip,
body.page-template-index #ea-hp-trust-strip {
  padding-top: clamp(12px, 1.5vw, 18px) !important;
  padding-bottom: clamp(12px, 1.5vw, 18px) !important;
}

body.home #ea-hp-services,
body.home #ea-hp-products,
body.home #ea-hp-portfolio,
body.home #ea-hp-reviews,
body.home #ea-hp-videos,
body.home #ea-hp-why,
body.home #ea-hp-faq,
body.home #ea-hp-cta,
body.page-template-index #ea-hp-services,
body.page-template-index #ea-hp-products,
body.page-template-index #ea-hp-portfolio,
body.page-template-index #ea-hp-reviews,
body.page-template-index #ea-hp-videos,
body.page-template-index #ea-hp-why,
body.page-template-index #ea-hp-faq,
body.page-template-index #ea-hp-cta {
  padding-top: clamp(48px, 5vw, 64px) !important;
  padding-bottom: clamp(48px, 5vw, 64px) !important;
}

body.home .ea-hp-section-header,
body.page-template-index .ea-hp-section-header {
  margin-bottom: clamp(36px, 4.2vw, 48px) !important;
}

body.home .ea-hp-services-grid,
body.home .ea-hp-products-grid,
body.home .ea-hp-portfolio-grid,
body.home .ea-hp-reviews-grid,
body.home .ea-hp-videos-grid,
body.home .ea-hp-why-grid,
body.page-template-index .ea-hp-services-grid,
body.page-template-index .ea-hp-products-grid,
body.page-template-index .ea-hp-portfolio-grid,
body.page-template-index .ea-hp-reviews-grid,
body.page-template-index .ea-hp-videos-grid,
body.page-template-index .ea-hp-why-grid {
  gap: clamp(24px, 2.8vw, 36px) !important;
}

@media (max-width: 767px) {
  body.home #ea-hp-trust-strip,
  body.home #ea-hp-services,
  body.home #ea-hp-products,
  body.home #ea-hp-portfolio,
  body.home #ea-hp-reviews,
  body.home #ea-hp-videos,
  body.home #ea-hp-why,
  body.home #ea-hp-faq,
  body.home #ea-hp-cta,
  body.page-template-index #ea-hp-trust-strip,
  body.page-template-index #ea-hp-services,
  body.page-template-index #ea-hp-products,
  body.page-template-index #ea-hp-portfolio,
  body.page-template-index #ea-hp-reviews,
  body.page-template-index #ea-hp-videos,
  body.page-template-index #ea-hp-why,
  body.page-template-index #ea-hp-faq,
  body.page-template-index #ea-hp-cta {
    padding-top: 56px !important;
    padding-bottom: 56px !important;
  }
}

/* Fix low contrast of gold .ea-hp-label on light background sections */
body.home #ea-hp-logos .ea-hp-label,
body.page-template-index #ea-hp-logos .ea-hp-label {
  color: #0B1F38 !important; /* Deep Navy for high contrast against light blue */
  text-shadow: none !important;
  font-weight: 900 !important;
}

body.home #ea-hp-services .ea-hp-label,
body.home #ea-hp-faq .ea-hp-label,
body.page-template-index #ea-hp-services .ea-hp-label,
body.page-template-index #ea-hp-faq .ea-hp-label {
  color: #FFBA09 !important; /* Gold eyebrow pop */
  text-shadow: 0 2px 8px rgba(0,0,0,0.4) !important;
  font-weight: 800 !important;
}

/* ── Tablet fix: hero split stacks at 1024px ── */
@media (max-width: 1024px) {
  .ea-hp-hero-split-container {
    flex-direction: column !important;
  }
  .ea-hp-hero-split-text {
    width: 100% !important;
    max-width: 100% !important;
    text-align: center !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
  .ea-hp-hero-split-text .ea-hp-hero-ctas {
    justify-content: center !important;
  }
  .ea-hp-hero-split-gallery {
    width: 100% !important;
    max-width: 100% !important;
  }
  .ea-hp-hero-gallery-frame {
    height: 300px !important;
    border-radius: 0 !important;
    margin: 0 !important;
  }
}

