/* Visual-only alignment with https://it.izzo.network/. */
body {
  color: #121417 !important;
  background: #f8fafc !important;
  font-family: Inter, "Inter Fallback", Arial, Helvetica, sans-serif !important;
}

body::before,
.hero-glow,
.ambient-particles,
.floating-phone {
  display: none !important;
}

.site-header {
  border: 0 !important;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.74), rgba(0, 0, 0, 0)) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

.site-header.is-scrolled {
  background: rgba(18, 20, 23, 0.92) !important;
}

.brand-logo {
  filter: brightness(0) invert(1) !important;
}

.header-phone {
  border: 0 !important;
  border-radius: 0 !important;
  color: #ffffff !important;
  background: transparent !important;
  box-shadow: none !important;
  font-size: 16px !important;
}

.hero,
.hero.hero-home,
.hero.hero-home.home-reference-hero,
.hero:not(.hero-home) {
  min-height: 92vh !important;
  padding: 118px clamp(20px, 5vw, 72px) 72px !important;
  background: #0d2638 !important;
}

.hero-bg,
.hero-bg-home,
.hero-bg-services,
.hero-bg-service-detail,
.hero-bg-support,
.hero-bg-contact,
.hero-bg-location,
.hero-bg-projects,
.hero.hero-home .hero-bg,
.hero:not(.hero-home) .hero-bg {
  background-image: url("/images/reference/izzo-network-hero.png") !important;
  background-position: center !important;
  background-size: cover !important;
  filter: saturate(0.96) contrast(1.02) brightness(1.02) !important;
}

.hero-veil,
.hero-bg::after {
  background:
    linear-gradient(90deg, rgba(0, 0, 0, 0.78), rgba(0, 0, 0, 0.44) 46%, rgba(0, 0, 0, 0.12)),
    linear-gradient(180deg, rgba(0, 0, 0, 0.18), rgba(0, 0, 0, 0.38)) !important;
}

.hero-copy,
.hero.hero-home .hero-copy,
.hero.hero-home.home-reference-hero .hero-copy,
.hero:not(.hero-home) .hero-copy {
  width: min(680px, 100%) !important;
  max-width: 680px !important;
  margin: 0 auto 0 0 !important;
  padding: 0 !important;
  transform: none !important;
}

.hero h1,
.hero.hero-home h1,
.hero.hero-home.home-reference-hero h1,
.hero:not(.hero-home) h1 {
  display: block !important;
  width: min(680px, 100%) !important;
  max-width: 680px !important;
  color: #ffffff !important;
  font-family: Manrope, Inter, Arial, Helvetica, sans-serif !important;
  font-size: clamp(48px, 6vw, 86px) !important;
  line-height: 0.95 !important;
  letter-spacing: 0 !important;
}

.hero .hero-accent,
.hero.hero-home .hero-accent,
.hero.hero-home.home-reference-hero .hero-accent {
  color: #ffffff !important;
}

.hero .eyebrow,
.hero.hero-home .eyebrow,
.hero:not(.hero-home) .eyebrow,
.eyebrow,
.section .eyebrow,
.section-head .eyebrow {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  letter-spacing: 0.01em !important;
}

.hero .eyebrow,
.hero.hero-home .eyebrow,
.hero:not(.hero-home) .eyebrow {
  color: #ffffff !important;
}

.section .eyebrow,
.section-head .eyebrow,
.split .eyebrow,
.why .eyebrow,
.dual .eyebrow,
.process .eyebrow {
  color: #1262a3 !important;
}

.hero p:not(.eyebrow),
.hero .hero-copy p:not(.eyebrow),
.hero.hero-home .hero-copy p:not(.eyebrow),
.hero:not(.hero-home) .hero-copy p:not(.eyebrow) {
  max-width: 650px !important;
  color: rgba(255, 255, 255, 0.88) !important;
  font-size: clamp(17px, 2vw, 22px) !important;
  line-height: 1.55 !important;
}

.hero.hero-home .hero-status,
.hero.hero-home.home-reference-hero .hero-status {
  position: absolute !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  max-width: none !important;
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 0 !important;
  margin: 0 !important;
  border-top: 1px solid #d8dee6 !important;
  border-bottom: 1px solid #d8dee6 !important;
  background: #ffffff !important;
}

.hero.hero-home .hero-status span {
  min-height: 76px !important;
  padding: 18px !important;
  border: 0 !important;
  border-right: 1px solid #d8dee6 !important;
  border-radius: 0 !important;
  background: #ffffff !important;
  color: #2f3741 !important;
  text-align: center !important;
  box-shadow: none !important;
}

.hero.hero-home .hero-status b {
  color: #121417 !important;
  font-size: 18px !important;
}

.hero.hero-home .hero-status small {
  color: #5d6673 !important;
  font-size: 13px !important;
}

.section,
.why,
.split,
.dual,
.process,
.why-trust,
.local-seo-proof,
.proof-section,
.trend-insights,
.priority-search-paths,
.search-console-opportunities,
.coverage-map,
.location-band {
  background: #f8fafc !important;
}

.section,
.proof-section,
.trend-insights,
.priority-search-paths,
.search-console-opportunities,
.coverage-map,
.location-band,
.brand-tech,
.faq,
.why,
.split,
.dual,
.process,
.why-trust,
.final-cta {
  padding-top: clamp(72px, 7vw, 96px) !important;
  padding-bottom: clamp(72px, 7vw, 96px) !important;
}

.home-feature-services {
  padding-top: 72px !important;
}

.section::before,
.proof-section::before {
  display: none !important;
}

.section-head {
  max-width: 760px !important;
  text-align: left !important;
}

.section h2,
.split h2,
.why h2,
.dual h2,
.final-cta h2,
.detail-grid h2,
.process h2,
.story h2,
.contact-panel h2 {
  color: #121417 !important;
  font-family: Manrope, Inter, Arial, Helvetica, sans-serif !important;
  font-size: clamp(34px, 4vw, 70px) !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
}

.section p,
.split p,
.why p,
.dual p,
.final-cta p,
.detail-grid p,
.process p,
.story p,
.contact-panel p,
.article p,
.service-card p,
.project-card p,
.blog-card p,
.trust-card p,
.location-card span {
  color: #5d6673 !important;
}

.service-card,
.plan-card,
.blog-card,
.project-card,
.location-card,
.trust-card,
.why-grid article,
.bullet-grid article,
.process article,
.values article,
.split figure,
.split > div,
.dual article,
.detail-grid article,
.story article,
.contact-panel,
.contact-form,
.article,
.location-browser-card,
.seo-link-rail a,
.mini-path-card,
.trend-card,
.final-cta {
  border: 1px solid #d8dee6 !important;
  border-radius: 6px !important;
  background: #ffffff !important;
  color: #121417 !important;
  box-shadow: none !important;
}

.service-card,
.plan-card,
.blog-card,
.project-card,
.location-card,
.trust-card,
.why-grid article,
.bullet-grid article,
.process article,
.values article,
.seo-link-rail a,
.mini-path-card,
.trend-card {
  min-height: 172px !important;
  padding: 22px !important;
}

.service-card h3,
.plan-card h3,
.project-card h3,
.blog-card h3,
.location-card strong,
.trust-card h3,
.why-grid h3,
.bullet-grid h3,
.process h3,
.values h3 {
  color: #121417 !important;
  font-family: Manrope, Inter, Arial, Helvetica, sans-serif !important;
}

.service-card b,
.plan-card b,
.project-card b,
.blog-card b,
.section-head a:not(.btn),
.seo-link-rail a span {
  color: #1262a3 !important;
}

.btn,
.hero-actions .btn,
.section-head a,
.blog-card b,
.project-card b,
.service-card b,
.plan-card b {
  border-radius: 0 !important;
  box-shadow: none !important;
}

.btn.primary,
.hero-actions .btn.primary {
  border-color: #1262a3 !important;
  background: #1262a3 !important;
}

.btn.ghost,
.hero-actions .btn.ghost {
  border-color: rgba(255, 255, 255, 0.34) !important;
  color: #ffffff !important;
  background: rgba(255, 255, 255, 0.12) !important;
}

.site-footer {
  background: #111820 !important;
}

@media (max-width: 640px) {
  .hero,
  .hero.hero-home,
  .hero.hero-home.home-reference-hero,
  .hero:not(.hero-home) {
    min-height: 86vh !important;
    padding: 100px 20px 96px !important;
  }

  .hero h1,
  .hero.hero-home h1,
  .hero.hero-home.home-reference-hero h1,
  .hero:not(.hero-home) h1 {
    font-size: clamp(42px, 14vw, 64px) !important;
  }

  .hero.hero-home .hero-status,
  .hero.hero-home.home-reference-hero .hero-status,
  .services-grid,
  .solution-grid,
  .project-grid,
  .blog-grid,
  .plan-grid,
  .bullet-grid,
  .why-grid,
  .values,
  .trust-grid {
    grid-template-columns: 1fr !important;
  }

  .hero.hero-home .hero-status span {
    border-right: 0 !important;
    border-bottom: 1px solid #d8dee6 !important;
  }

  .section,
  .proof-section,
  .trend-insights,
  .priority-search-paths,
  .search-console-opportunities,
  .coverage-map,
  .location-band,
  .brand-tech,
  .faq,
  .why,
  .split,
  .dual,
  .process,
  .why-trust,
  .final-cta {
    padding-top: 56px !important;
    padding-bottom: 56px !important;
  }
}
