/* Interior pages share the homepage's regular type and open, quiet surfaces.
   Scope to inner-page so the homepage's animated scenes keep their geometry. */
body.inner-page {
  --display: "Satoshi", Arial, sans-serif;
  --inner-gutter: clamp(24px, 5.5vw, 88px);
  --inner-title: clamp(34px, 4vw, 60px);
  --inner-section: clamp(30px, 3.4vw, 48px);
  --inner-card: clamp(22px, 2.2vw, 30px);
  background: #f8f9fa;
  font-size: 16px;
  line-height: 1.65;
}

/* Important declarations bridge legacy inline sizes and page-local styles. */
body.inner-page :is(h1, h2, h3, h4, h5, h6) {
  font-weight: 400 !important;
  line-height: 1.2;
  letter-spacing: -.03em;
  text-transform: none !important;
  overflow-wrap: break-word;
}
body.inner-page h1 { font-size: var(--inner-title) !important; line-height: 1.12; }
body.inner-page h2 { font-size: var(--inner-section) !important; }
body.inner-page h3 { font-size: var(--inner-card) !important; }
body.inner-page :is(h1, h2, h3) :is(strong, b, span, em, a) {
  font-size: inherit;
  font-weight: inherit !important;
  letter-spacing: inherit;
  text-transform: inherit;
}
body.inner-page :is(p, li, blockquote) { font-weight: 400; }
body.inner-page :is(p, blockquote) { line-height: 1.75; }
body.inner-page :is(p, li) :is(strong, b) { font-weight: 500; }
body.inner-page :is(.pill-btn, .submit-btn, .header-cta, .menu-btn,
  .site-nav a, .mbar a, .mega__links a, .growth-button, .about-link,
  .about-hero__intro a, .faq-question, .growth-faq summary) { font-weight: 500; }

/* A single gutter aligns page introductions, imagery and content sections. */
body.inner-page :is(.team-sec1, .team-sec2, .team-sec3, .work-sec1, .work-sec2,
  .contact-sec1, .contact-sec2, .gallery-sec, .service-sec1, .service-sec3,
  .service-sec4, .growth-section, .growth-hero, .pad) {
  padding-inline: var(--inner-gutter);
}
body.inner-page > .container {
  width: auto;
  max-width: none;
  margin: 0;
  padding: 112px var(--inner-gutter) 48px;
}
body.inner-page :is(.work-flex h1, .about-hero h1) { max-width: none; width: auto; }
body.inner-page .about-hero { --gutter: var(--inner-gutter); }
body.inner-page .about-hero__intro { padding-top: 0; align-self: start; }
body.inner-page .about-hero__intro p { font-size: 16px; }
body.inner-page :is(.about-story, .about-purpose, .about-journey,
  .about-network, .about-values, .about-next) { --gutter: var(--inner-gutter); }
body.inner-page :is(.about-label, .about-kicker, .about-hero__eyebrow,
  .about-hero__index, .purpose-card__top, .growth-kicker) { font-weight: 500; letter-spacing: .08em; }
body.inner-page :is(.purpose-card, .journey-grid li, .gallery-card,
  .recent-blog, .testimonial-card, .growth-service-card,
  .growth-process__step, .growth-faq details, .innovation-feature-card) {
  border: 1px solid rgba(10, 25, 47, .12);
  border-radius: 12px;
  box-shadow: none;
}
body.inner-page :is(.purpose-card, .journey-grid li, .growth-service-card,
  .growth-process__step, .gallery-card):hover { transform: none; box-shadow: none; }
body.inner-page .purpose-card { padding: clamp(24px, 3vw, 40px); }
body.inner-page .purpose-card h3 { margin-top: 16px; }
body.inner-page .purpose-card__body strong { font-weight: 500; }
body.inner-page .journey-grid li { background: #fff; }
body.inner-page .journey-grid__year { font-size: clamp(30px, 3vw, 44px); font-weight: 400; letter-spacing: -.03em; }
body.inner-page :is(.about-stats dd, .counter) { font-weight: 400; letter-spacing: -.04em; }
body.inner-page :is(.product-card, .growth-service-card) { padding: clamp(24px, 3vw, 40px); }
body.inner-page :is(.product-card, .growth-service-card, .growth-process__step,
  .gallery-header, .recent-blog, .featured, .featured-blog,
  .legal-page__content, .service-detail-content) h2 { font-size: var(--inner-card) !important; }
body.inner-page :is(.recent-blog, .featured, .featured-blog) h3 { font-size: clamp(22px, 2vw, 28px) !important; }
body.inner-page .blog-detail > h1 { max-width: 26ch; font-size: clamp(30px, 3.4vw, 48px) !important; }
body.inner-page :is(.product-card__body, .service-detail-content, .blog-detail .content,
  .team-p, .gallery-description) p { font-size: 16px; line-height: 1.75; }
body.inner-page .contact-card1 h3 { font-size: 18px !important; }
body.inner-page .contact-sec1 form {
  padding: 24px;
  border: 1px solid rgba(10, 25, 47, .12);
  border-radius: 18px;
  background: #fff;
  box-shadow: none;
}
body.inner-page .contact-sec1 :is(input, textarea) { font-weight: 400; border-radius: 8px; }
body.inner-page .contact-sec1 textarea { min-height: 100px; height: 100px; }
body.inner-page .contact-sec1 button[type="submit"] { font-weight: 500; border-radius: 999px; }
body.inner-page :is(.footer__headline, .footer__headline strong) {
  font-size: clamp(34px, 4vw, 60px) !important;
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: -.035em;
  text-transform: none;
}
body.inner-page .footer__word { font-weight: 500; }

@media (max-width: 760px) {
  body.inner-page { --inner-gutter: 24px; }
  body.inner-page > .container { padding-top: 92px; padding-bottom: 28px; }
  body.inner-page .contact-sec1 form { padding: 20px; }
  body.inner-page .contact-sec1 :is(input, textarea, select) { font-size: 16px; }
}
