.elementor-kit-342{--e-global-color-primary:#10408D;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;background-color:transparent;color:#010102;background-image:linear-gradient(180deg, #A1C495 0%, #A8C9EB 100%);}.elementor-kit-342 e-page-transition{background-color:#FFBC7D;}.site-header{background-color:transparent;padding-inline-end:34px;padding-inline-start:34px;background-image:linear-gradient(180deg, #9EE0AF 0%, #3C83D4 100%);}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-navigation ul.menu li a{color:#1E4E9B;}.site-header .site-navigation-toggle{background-color:#010102;}.site-header .site-navigation .menu li{font-family:"Montserrat", Sans-serif;font-size:16px;font-weight:500;}.site-footer .site-branding{flex-direction:row-reverse;align-items:center;}.site-footer .copyright p{font-family:"Montserrat", Sans-serif;font-weight:600;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* =========================
   HERO WRAPPER
========================= */
.nunn-hero {
  position: relative;
  height: 85vh;
  min-height: 620px;
  overflow: hidden;
  font-family: 'Montserrat', sans-serif;
}

/* =========================
   VIDEO
========================= */
.hero-video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: none;
  object-fit: cover;
  z-index: 1;
}

/* =========================
   SOFT WHITE OVERLAY
========================= */
.hero-overlay {
  position: absolute;
  inset: 0;
  z-index: 2;
  background: linear-gradient(
    to right,
    rgba(255,255,255,0.65) 0%,
    rgba(255,255,255,0.50) 38%,
    rgba(255,255,255,0.30) 62%,
    rgba(255,255,255,0.12) 100%
  );
}

/* =========================
   CONTENT
========================= */
.hero-content {
  position: relative;
  z-index: 3;
  max-width: 640px;
  padding: 0 20px;
  margin-left: 8%;
  top: 50%;
  transform: translateY(-50%);
}

/* =========================
   HEADLINE (ELEGANT + SMALLER)
========================= */
.hero-content h1 {
  font-size: clamp(22px, 2.8vw, 32px);
  font-weight: 500;
  letter-spacing: 0.6px;
  line-height: 1.35;
  color: #1c4f8c;
  margin-bottom: 18px;
}

/* =========================
   SUBHEAD
========================= */
.hero-content p {
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 1.2px;
  color: #1c4f8c;
  margin-bottom: 30px;
}

/* =========================
   BUTTON
========================= */
.hero-btn {
  display: inline-block;
  padding: 12px 26px;
  background-color: #1c4f8c;
  color: #ffffff;
  text-decoration: none;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.9px;
  border-radius: 4px;
  transition: all 0.3s ease;
}

.hero-btn:hover {
  background-color: #163e6f;
  transform: translateY(-2px);
}

/* =========================
   MOBILE REFINEMENT
========================= */
@media (max-width: 768px) {
  .hero-content {
    margin-left: 5%;
    max-width: 90%;
  }

  .hero-content h1 {
    font-size: 22px;
  }

  .hero-content p {
    font-size: 14px;
  }

  .hero-overlay {
    background: linear-gradient(
      to bottom,
      rgba(255,255,255,0.70) 0%,
      rgba(255,255,255,0.50) 55%,
      rgba(255,255,255,0.30) 100%
    );
  }
}
/* Ensure header always stays above hero */
header,
.elementor-location-header {
  position: relative;
  z-index: 9999;
}
/* Push hero below the header for natural flow */
.nunn-hero {
  margin-top: 120px;
}
/* =========================
   INSURANCE MARQUEE
========================= */
.insurance-banner {
  background: #f7fafc;
  padding: 70px 20px 60px;
  font-family: 'Montserrat', sans-serif;
  overflow: hidden;
}

.insurance-inner {
  max-width: 1200px;
  margin: 0 auto;
  text-align: center;
}

.insurance-inner h2 {
  font-size: 26px;
  font-weight: 500;
  letter-spacing: 0.5px;
  color: #1c4f8c;
  margin-bottom: 40px;
}

/* Marquee container */
.insurance-marquee {
  position: relative;
  overflow: hidden;
  width: 100%;
  margin-bottom: 30px;
}

/* Moving track */
.insurance-track {
  display: flex;
  width: max-content;
  animation: scroll-insurance 45s linear infinite;
}

/* Logos */
.insurance-track img {
  max-height: 46px;
  margin: 0 35px;
  object-fit: contain;
  opacity: 0.9;
  transition: opacity 0.3s ease;
}

.insurance-track img:hover {
  opacity: 1;
}

/* Fine print */
.insurance-note {
  font-size: 13px;
  color: #5f6f82;
  letter-spacing: 0.3px;
}

/* Animation */
@keyframes scroll-insurance {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}

/* Mobile tuning */
@media (max-width: 768px) {
  .insurance-track img {
    max-height: 38px;
    margin: 0 25px;
  }

  .insurance-track {
    animation-duration: 35s;
  }
}/* End custom CSS */