/* Declare the original Tailwind ordering before its stylesheet loads.
   WordPress global styles remain available, but cannot outrank source utilities. */
@layer rm-wordpress, theme, base, components, utilities;

/* An explicit WP body line-height/color wins over values inherited from the
   source html reset even inside a lower-priority layer. Restore source tokens. */
body.wp-theme-roaring-media-site.rm-react-upgraded {
  color: hsl(var(--foreground));
  background: hsl(var(--background));
  font-family: var(--app-font-sans);
  font-size: 1rem;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}

/* PHP-owned chrome uses the same text and button scale as the React shell. */
body.rm-react-upgraded .rm-site-header { color: #fff; }
body.rm-react-upgraded.rm-react-light-header .rm-site-header,
body.rm-react-upgraded .rm-site-header.is-scrolled { color: hsl(var(--foreground)); }
body.wp-theme-roaring-media-site.rm-react-upgraded .rm-site-header .rm-primary-nav > .rm-menu > li > a {
  color: inherit;
  line-height: 1.25rem;
}
body.wp-theme-roaring-media-site.rm-react-upgraded .rm-site-header .rm-header-cta {
  font-size: .75rem;
  line-height: 1rem;
  font-weight: 700;
}
body.wp-theme-roaring-media-site.rm-react-upgraded .rm-mobile-panel .rm-menu > li > a {
  line-height: 1.75rem;
}
body.wp-theme-roaring-media-site.rm-react-upgraded .rm-site-footer {
  color: hsl(var(--secondary-foreground));
  background: hsl(var(--secondary));
}
body.wp-theme-roaring-media-site.rm-react-upgraded .rm-site-footer nav a {
  color: hsl(var(--secondary-foreground));
  font-size: .875rem;
  line-height: 1.25rem;
  font-weight: 500;
}
body.wp-theme-roaring-media-site.rm-react-upgraded .rm-footer-contact address {
  font-size: .875rem;
  line-height: 1.25rem;
}
body.wp-theme-roaring-media-site.rm-react-upgraded .rm-footer-direct {
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 600;
}
body.wp-theme-roaring-media-site.rm-react-upgraded .rm-footer-contact .rm-footer-cta {
  min-height: 3rem;
  padding: 0 1.5rem;
  gap: .75rem;
  border-radius: 3px;
  font-family: var(--app-font-sans);
  font-size: .875rem;
  line-height: 1.25rem;
  font-weight: 700;
  letter-spacing: .025em;
  box-shadow: 5px 5px #70ded433;
  color: #102b3b;
}
body.wp-theme-roaring-media-site.rm-react-upgraded .rm-footer-contact .rm-footer-cta:hover {
  transform: scale(1.02);
}
body.rm-react-upgraded .rm-social-x {
  font-family: var(--app-font-sans);
  font-size: 1.25rem;
  line-height: 1.75rem;
}

/* Do not split normal words in wide hero columns. Keep the source's mobile
   emergency wrapping for small screens and exceptionally long content. */
@media (min-width: 980px) {
  .rm-react-main .lead-hero h1 {
    overflow-wrap: normal;
    word-break: normal;
    hyphens: none;
  }
}
