/* Keeps the original Everitt Ventures editorial style while making every page easier to read. */

body {
  font-size: clamp(19px, 1.32vw, 21px);
  line-height: 1.76;
  color: var(--slate-deep);
}

body,
p,
li,
span {
  color: inherit;
}

.site-nav {
  min-height: 72px;
  backdrop-filter: blur(18px);
}

.site-nav-links a,
.nav-toggle {
  font-size: clamp(1.08rem, 1.18vw, 1.22rem);
  line-height: 1.28;
}

.site-nav-links a {
  color: #F7F8F7 !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

.nav-toggle {
  min-height: 46px;
  padding: 0.65rem 1rem;
  color: #F7F8F7 !important;
}

.hero {
  min-height: 88svh;
}

.hero h1,
.subpage-hero h1,
.tech-hero h1 {
  text-wrap: balance;
}

.hero-brand,
.section-eyebrow,
.subpage-hero .section-eyebrow,
.subpage-hero p.section-eyebrow,
.tech-hero .section-eyebrow,
.tech-intro .section-eyebrow,
.tech-contact .section-eyebrow {
  font-size: clamp(1.14rem, 1.22vw, 1.3rem);
  line-height: 1.42;
  color: var(--slate-deep);
  letter-spacing: 0.07em;
}

.hero-brand,
.subpage-hero .section-eyebrow,
.subpage-hero p.section-eyebrow,
.tech-hero .section-eyebrow {
  color: rgba(247, 248, 247, 0.94);
}

.line-row {
  min-height: 82px;
}

.line-row strong,
.service-line strong,
.list-item strong {
  line-height: 1.1;
  text-wrap: balance;
}

.contact-link,
.luxury-btn,
.luxury-btn-outline,
.hero-contact,
.chapter-link {
  min-height: 54px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(1.14rem, 1.22vw, 1.28rem);
}

.luxury-btn,
.hero-contact,
.contact-link,
a.luxury-btn,
a.hero-contact,
a.contact-link {
  color: var(--soft-white) !important;
  background-color: var(--slate-deep);
}

.luxury-btn:hover,
.hero-contact:hover,
.contact-link:hover,
a.luxury-btn:hover,
a.hero-contact:hover,
a.contact-link:hover {
  color: var(--soft-white) !important;
}

.luxury-btn-outline,
a.luxury-btn-outline {
  color: var(--slate-deep) !important;
}

/* Light sections must always use dark readable text. */
.services-contact,
.tech-intro,
.tech-capabilities,
.contact,
.home-footer,
.list-footer,
.image-band,
.content-section,
.language-note {
  color: var(--slate-deep) !important;
}

.services-contact p,
.services-contact span,
.services-contact strong,
.tech-intro p,
.tech-intro span,
.tech-intro strong,
.tech-intro a:not(.luxury-btn),
.tech-capabilities p,
.tech-capabilities span,
.tech-capabilities strong,
.contact p,
.contact span,
.contact h2,
.home-footer,
.home-footer a,
.home-footer p,
.list-footer,
.list-footer a,
.content-section p,
.content-section span,
.content-section strong,
.language-note p,
.language-note span {
  color: var(--slate-deep) !important;
}

/* Dark blue sections must always use light readable text. */
.dark,
.dark p,
.dark span,
.dark strong,
.dark a,
.list-section,
.list-section a,
.list-section strong,
.tech-contact,
.tech-contact p,
.tech-contact span,
.tech-contact h2,
.tech-contact a:not(.luxury-btn-outline) {
  color: var(--soft-white) !important;
}

.dark .line-row span,
.dark .section-eyebrow,
.list-section .list-item span,
.tech-contact .section-eyebrow {
  color: rgba(247, 248, 247, 0.78) !important;
}

.dark .line-row strong,
.dark h1,
.dark h2,
.dark h3,
.list-section .list-item strong,
.list-section .service-line strong,
.tech-contact h1,
.tech-contact h2,
.tech-contact h3 {
  color: var(--soft-white) !important;
}

.dark .numbered-list .line-row,
.dark .numbered-list .line-row strong {
  color: var(--slate-deep) !important;
}

.dark .numbered-list .line-row span {
  color: rgba(38, 59, 80, 0.72) !important;
}

.services-contact .luxury-btn,
.contact .contact-link,
.tech-contact .luxury-btn,
.dark .luxury-btn,
.dark .hero-contact,
.dark .contact-link {
  color: var(--soft-white) !important;
  background-color: var(--slate-deep);
}

.luxury-btn,
.luxury-btn-outline,
.hero-contact {
  padding: 1.1rem 1.7rem;
}

.content-section > p,
.tech-intro p,
.tech-capabilities p,
language-note p,
.subpage-hero p:not(.section-eyebrow),
.service-line span {
  font-size: clamp(1.22rem, 1.34vw, 1.38rem);
  line-height: 1.82;
  max-width: 45rem;
  color: var(--slate-deep);
}

.list-item span {
  font-size: clamp(1.22rem, 1.34vw, 1.38rem);
  line-height: 1.82;
  max-width: 45rem;
  color: rgba(247, 248, 247, 0.78) !important;
}

.tech-capabilities span,
.line-row span {
  color: rgba(38, 59, 80, 0.72) !important;
}

.dark .line-row span {
  color: rgba(247, 248, 247, 0.78) !important;
}

.dark .numbered-list .line-row span {
  color: rgba(38, 59, 80, 0.72) !important;
}

.tech-intro h2,
.tech-contact h2,
.content-section h2 {
  text-wrap: balance;
}

.tech-capabilities strong {
  font-size: clamp(2rem, 2.55vw, 2.45rem);
  color: var(--slate-deep) !important;
}

.service-lines .service-line strong {
  color: var(--soft-white) !important;
}

.services-contact {
  padding-block: clamp(4.5rem, 7vw, 6.5rem);
}

.home-footer,
.list-footer,
.privacy {
  line-height: 1.62;
}

.privacy {
  max-width: 44rem;
  font-size: clamp(1.05rem, 1.1vw, 1.14rem);
  line-height: 1.7;
  color: rgba(247, 248, 247, 0.82) !important;
}

.contact .home-footer,
.contact .home-footer a,
.contact .home-footer p,
.contact .socials a,
.contact .privacy {
  color: var(--slate-deep) !important;
}

.contact .privacy {
  color: rgba(22, 38, 53, 0.68) !important;
}

@media (max-width: 900px) {
  .site-nav {
    padding: 0.95rem 6vw;
  }

  .site-nav-links a {
    font-size: 1.18rem;
    padding-block: 1.14rem;
    color: #F7F8F7 !important;
  }

  .hero {
    min-height: 76svh;
    padding-top: 7.4rem;
  }

  .hero h1 {
    max-width: 23rem;
    font-size: clamp(3.05rem, 12vw, 4.25rem);
    line-height: 1;
  }

  .subpage-hero,
  .tech-hero {
    min-height: 68svh;
    padding-top: 7.5rem;
  }

  .subpage-hero h1,
  .tech-hero h1 {
    font-size: clamp(3rem, 13.2vw, 4.7rem);
    line-height: 1;
    max-width: 29rem;
  }

  .line-row,
  .service-line {
    padding-block: 1.3rem;
  }

  .line-row strong,
  .service-line strong {
    font-size: clamp(2rem, 8.8vw, 3.1rem);
  }

  .tech-intro {
    gap: 3rem;
  }

  .tech-app-actions .luxury-btn,
  .tech-app-actions .luxury-btn-outline,
  .services-contact .luxury-btn {
    width: 100%;
  }

  .image-band img,
  .tech-image-band {
    min-height: 16rem;
  }
}

@media (max-width: 768px) {
  body {
    font-size: 17px;
  }

  .subpage-hero,
  .tech-hero {
    min-height: 54svh;
    padding: 6.9rem 7vw 3.2rem;
  }

  .subpage-hero .section-eyebrow,
  .subpage-hero p.section-eyebrow,
  .tech-hero .section-eyebrow {
    font-size: 0.92rem;
    line-height: 1.35;
    margin-bottom: 0.95rem;
  }

  .subpage-hero h1,
  .tech-hero h1 {
    max-width: 22rem;
    font-size: clamp(2.3rem, 10.2vw, 3.45rem) !important;
    line-height: 1.02;
    letter-spacing: -0.045em;
  }

  .list-section {
    padding: 3.4rem 7vw 4rem !important;
  }

  .item-list {
    max-width: 100%;
  }

  .list-item,
  .service-line {
    padding-block: 0.92rem !important;
  }

  .list-item strong,
  .service-line strong,
  .service-lines .service-line strong {
    font-size: clamp(1.48rem, 6.8vw, 2.2rem) !important;
    line-height: 1.08;
    letter-spacing: -0.028em;
  }

  .list-item span {
    font-size: 0.95rem !important;
    line-height: 1.45;
  }

  .services-contact {
    padding-block: 3.5rem !important;
  }

  .site-footer {
    padding-left: 7vw;
    padding-right: 7vw;
  }
}

@media (max-width: 520px) {
  body {
    font-size: 16.5px;
  }

  .hero {
    min-height: 74svh;
  }

  .hero h1 {
    max-width: 21rem;
    font-size: clamp(2.85rem, 14vw, 3.75rem);
  }

  .dark,
  .list-section,
  .tech-intro,
  .contact,
  .tech-contact {
    padding-left: 7vw;
    padding-right: 7vw;
  }

  .subpage-hero,
  .tech-hero {
    min-height: 50svh;
    padding-top: 6.5rem;
    padding-bottom: 2.8rem;
  }

  .subpage-hero h1,
  .tech-hero h1 {
    max-width: 20rem;
    font-size: clamp(2.15rem, 10.6vw, 3.05rem) !important;
  }

  .list-item,
  .service-line {
    padding-block: 0.82rem !important;
  }

  .list-item strong,
  .service-line strong,
  .service-lines .service-line strong {
    font-size: clamp(1.34rem, 6.7vw, 1.95rem) !important;
  }

  .content-section > p,
  .tech-intro p,
  .tech-capabilities p,
  .language-note p,
  .subpage-hero p:not(.section-eyebrow) {
    font-size: 1.05rem;
    line-height: 1.68;
  }

  .home-footer,
  .list-footer {
    font-size: 1rem;
  }

  .privacy {
    max-width: 100%;
    font-size: 0.95rem;
  }
}