:root {
  --wp-admin--admin-bar--height: 0px;
}

/* Case Studies follows the dedicated Figma frame at both breakpoints. The
 * generic special hero is 700px on desktop, while this frame is 480px; the
 * list uses the remaining frame height after the fixed site header/footer. */
@media (min-width: 768px) {
  .rb-el-page--case-studies > .rb-el-hero {
    min-height: 480px !important;
    height: 480px !important;
  }

  .rb-el-page--case-studies > .rb-case-list {
    min-height: 2731px !important;
  }
}

@media (max-width: 767px) {
  .rb-el-page--case-studies > .rb-case-list {
    min-height: 5251.6526px !important;
  }
}

/* Figma Case Studies ------------------------------------------------------- */
.rb-el-page--case-studies > .rb-el-hero { min-height: 480px; }
.rb-el-page--case-studies .rb-el-hero-content { padding: 60px 120px; }
.rb-el-page--case-studies .rb-el-hero-title .elementor-heading-title { max-width: 684px; }
.rb-el-page--case-studies .rb-el-hero-subtitle,
.rb-el-page--case-studies .rb-el-hero-subtitle p { max-width: 920px; color: #fff; font-size: 24px; font-weight: 600; line-height: 28px; }
.rb-el-page--case-studies .rb-el-hero-cta { right: 120px; bottom: 60px; }
.rb-case-list { min-height: 4459px; background: #fff; border-top: 1px solid #a9a9a9; }
.rb-case-list-inner { width: 1200px; margin: 0 auto; padding: 80px 0; }
.rb-case-controls { gap: 32px !important; margin-bottom: 48px; }
.rb-case-search { width: 583px !important; }
.rb-case-search .elementor-button { width: 100%; height: 48px; justify-content: flex-end; border: 0; border-radius: 100px; background: #e6e7e8; color: rgba(16,16,16,.5); padding: 0 24px; font-size: 18px; }
.rb-case-filters { display: flex !important; flex-flow: row wrap !important; gap: 8px !important; }
.rb-case-filter { width: auto !important; }
.rb-case-filter .elementor-button { min-width: 80px; height: 40px; padding: 2px 16px; border: 1px solid #2a2a2a; border-radius: 200px; background: transparent; color: #2a2a2a; font-size: 20px; font-weight: 500; }
.rb-case-filter.is-active .elementor-button { border-color: #cb2026; background: #cb2026; color: #fff; font-weight: 600; }
.rb-case-grid { gap: 48px !important; }
.rb-case-card { display: flex !important; flex-direction: row !important; min-height: 240px; }
.rb-case-image { flex: 0 0 374px !important; width: 374px !important; height: 240px; overflow: hidden; border-radius: 16px; }
.rb-case-image .elementor-widget-container,
.rb-case-image img { width: 100%; height: 100%; object-fit: cover; }
.rb-case-content { position: relative; flex: 1 1 auto !important; min-width: 0; padding: 24px 32px 0 !important; }
.rb-case-title .elementor-heading-title { color: #101010; font-size: 24px; font-weight: 600; line-height: 28px; }
.rb-case-summary,
.rb-case-summary p { margin-top: 12px !important; color: #101010; font-size: 20px; line-height: 26px; }
.rb-case-read { width: auto !important; margin-top: 24px; }
.rb-case-read .elementor-button { padding: 0 0 2px; border-bottom: 1px solid #cb2026; border-radius: 0; background: transparent; color: #cb2026; font-size: 18px; font-weight: 600; line-height: 24px; }
.rb-case-share { position: absolute !important; right: 32px; bottom: 0; width: auto !important; color: #cb2026; }
.rb-case-share p { color: #cb2026; font-size: 16px; }
.rb-case-pagination { display: flex !important; flex-direction: row !important; align-items: center !important; justify-content: space-between !important; margin-top: 48px; padding-top: 24px !important; border-top: 1px solid #a9a9a9; }
.rb-case-page-link { width: auto !important; }
.rb-case-page-link .elementor-button { padding: 0; background: transparent; color: #2a2a2a; font-size: 16px; }
.rb-case-pages,
.rb-case-pages p { color: #101010; font-size: 16px; font-weight: 600; }

@media (max-width: 767px) {
  .rb-el-page--case-studies > .rb-el-hero { min-height: 480px; }
  .rb-el-page--case-studies .rb-el-hero-content { padding: 60px 24px; }
  .rb-el-page--case-studies .rb-el-hero-title .elementor-heading-title { font-size: 50px; line-height: 54px; }
  .rb-el-page--case-studies .rb-el-hero-subtitle,
  .rb-el-page--case-studies .rb-el-hero-subtitle p { font-size: 20px; line-height: 24px; }
  .rb-el-page--case-studies .rb-el-hero-cta { right: 24px; bottom: 60px; }
  .rb-case-list { min-height: 6260px; }
  .rb-case-list-inner { width: 100%; padding: 60px 20px; }
  .rb-case-search { width: 100% !important; }
  .rb-case-filters { flex-wrap: nowrap !important; overflow-x: auto; }
  .rb-case-filter { flex: 0 0 auto !important; }
  .rb-case-grid { gap: 40px !important; }
  .rb-case-card { flex-direction: column !important; min-height: 0; }
  .rb-case-image { flex-basis: 220px !important; width: 100% !important; height: 220px; }
  .rb-case-content { min-height: 230px; padding: 20px 0 0 !important; }
  .rb-case-title .elementor-heading-title { font-size: 22px; line-height: 26px; }
  .rb-case-summary,
  .rb-case-summary p { font-size: 18px; line-height: 23px; }
  .rb-case-share { right: 0; bottom: 0; }
}

body.redbuilt-site {
  margin: 0;
  min-width: 320px;
  overflow-x: hidden;
}

body.admin-bar {
  --wp-admin--admin-bar--height: 32px;
}

.rb-skip-link {
  position: fixed;
  left: 1rem;
  top: 1rem;
  z-index: 100000;
  transform: translateY(-180%);
  border-radius: 0.25rem;
  background: #fff;
  color: #101010;
  padding: 0.75rem 1rem;
  font-weight: 700;
}

.rb-skip-link:focus {
  transform: translateY(0);
}

.elementor,
.elementor-page .site-main {
  width: 100%;
  max-width: none;
}

.elementor-element.redbuilt-elementor-shell,
.redbuilt-elementor-shell > .e-con-inner,
.elementor-element.redbuilt-native-section,
.redbuilt-native-section > .e-con-inner {
  display: contents !important;
}

/* Elementor's generic image rule sets height:auto with greater specificity than
   Tailwind's sizing utilities. Restore the original cover behavior. */
.elementor img.size-full,
.elementor img.h-full {
  height: 100%;
}

.rb-nav-dropdown {
  visibility: hidden;
  opacity: 0;
  transform: translateY(-0.4rem);
  transition: opacity 160ms ease, transform 160ms ease, visibility 160ms;
}

.rb-nav-item:hover > .rb-nav-dropdown,
.rb-nav-item:focus-within > .rb-nav-dropdown {
  visibility: visible;
  opacity: 1;
  transform: translateY(0);
}

.rb-nav-item:hover > a,
.rb-nav-item:focus-within > a {
  background: #2a2a2a;
}

.rb-nav-item:hover > a::after,
.rb-nav-item:focus-within > a::after {
  position: absolute;
  right: 1rem;
  bottom: 23px;
  left: 1rem;
  height: 3px;
  content: '';
  background: #cb2026;
}

[data-rb-mobile-group][aria-expanded='true'] {
  background: #2d3a3a;
}

[data-rb-mobile-group][aria-expanded='true'] > span,
[data-rb-mobile-group][aria-expanded='true'] > svg {
  color: #cb2026;
}

[data-rb-mobile-group][aria-expanded='true'] > svg {
  transform: rotate(90deg);
}

[data-rb-search-toggle][aria-expanded='true'] {
  background: #fff;
}

.rb-accordion-panel[hidden],
[data-rb-filtered='true'] {
  display: none !important;
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}

@media (max-width: 782px) {
  body.admin-bar {
    --wp-admin--admin-bar--height: 46px;
  }
}

/* --------------------------------------------------------------------------
   Native Elementor page system

   The rb-el-* classes are presentation hooks attached to ordinary Elementor
   containers and widgets. The Navigator remains a hand-authored-looking tree:
   Hero > Background image / Overlay / Content / CTA, followed by named page
   sections. There are no render widgets or HTML page fragments involved.
   -------------------------------------------------------------------------- */

.rb-el-page,
.rb-el-page .elementor-element {
  box-sizing: border-box;
  font-family: 'Freight Sans Pro', 'Source Sans 3', ui-sans-serif, system-ui, sans-serif;
}

.rb-el-page .elementor-widget,
.rb-el-page .elementor-widget-container,
.rb-el-page p,
.rb-el-page h1,
.rb-el-page h2,
.rb-el-page h3,
.rb-el-page h4,
.rb-el-page ul {
  margin: 0;
}

.rb-el-page .e-con,
.rb-el-page.e-con {
  --container-max-width: none;
  --content-width: 100%;
  --gap: 0px;
  gap: 0;
  padding: 0;
}

.rb-el-section {
  position: relative;
  width: 100%;
  max-width: none;
  overflow: hidden;
}

.rb-el-shell {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 1440px;
  margin-inline: auto;
}

.rb-el-media-cover {
  position: absolute !important;
  inset: 0;
  z-index: 0;
  width: 100% !important;
  height: 100% !important;
}

.rb-el-media-cover > .elementor-widget-container,
.rb-el-media-cover > .elementor-widget-container > a,
.rb-el-media-cover img {
  display: block;
  width: 100% !important;
  height: 100% !important;
}

.rb-el-media-cover img {
  object-fit: cover;
}

.rb-el-overlay {
  position: absolute !important;
  inset: 0;
  z-index: 1;
  width: 100% !important;
  height: 100% !important;
  pointer-events: none;
}

.rb-el-overlay--home {
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.2), transparent);
}

.rb-el-overlay--product,
.rb-el-overlay--legal,
.rb-el-overlay--special {
  background: rgba(0, 0, 0, 0.5);
}

.rb-el-overlay--hub,
.rb-el-overlay--article {
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.55) 10%, transparent 60%);
}

.rb-el-overlay--card {
  background: rgba(0, 0, 0, 0.8);
}

.rb-el-overlay--cta-red {
  background: rgba(203, 32, 38, 0.88);
}

.rb-el-overlay--cta-dark {
  background: rgba(0, 0, 0, 0.55);
}

.rb-el-hero {
  min-height: 640px !important;
  display: flex !important;
  flex-direction: column;
}

.rb-el-hero--home,
.rb-el-hero--special {
  min-height: 700px !important;
}

.rb-el-hero--hub,
.rb-el-hero--article {
  min-height: 560px !important;
}

.rb-el-hero--legal {
  min-height: 480px !important;
}

.rb-el-hero-content {
  display: flex !important;
  flex: 1;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  height: 100%;
  padding: 60px 120px 24px !important;
}

.rb-el-hero-title {
  width: 100%;
  max-width: 900px;
}

.rb-el-hero-title .elementor-heading-title {
  color: #fff;
  font-size: 60px;
  font-weight: 700;
  line-height: 60px;
}

.rb-el-hero--home .rb-el-hero-title {
  width: 620px !important;
  max-width: 620px !important;
}

.rb-el-hero-subtitle {
  margin-top: 8px !important;
  max-width: 900px;
  color: #fff;
  font-size: 24px;
  font-weight: 600;
  line-height: 28px;
}

.rb-el-hero-cta {
  position: absolute !important;
  right: max(120px, calc((100vw - 1440px) / 2 + 120px));
  bottom: 48px;
  z-index: 3;
  width: auto !important;
}

.rb-el-hero-credit {
  position: absolute !important;
  right: max(120px, calc((100vw - 1440px) / 2 + 120px));
  bottom: 24px;
  z-index: 2;
  width: auto !important;
  padding: 8px 16px;
  background: rgba(42, 42, 42, 0.45);
  color: #fff;
  font-size: 16px;
}

.rb-el-button,
.rb-el-card-link,
.rb-el-flip-link,
.rb-el-gallery-link,
.rb-el-legal-back-button {
  width: auto !important;
}

.rb-el-button .elementor-button,
.rb-el-card-link .elementor-button,
.rb-el-flip-link .elementor-button,
.rb-el-gallery-link .elementor-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px !important;
  padding: 2px 32px 4px !important;
  border: 0;
  border-radius: 100px !important;
  background: #cb2026 !important;
  color: #fff !important;
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.15);
  font-size: 22px !important;
  font-weight: 600 !important;
  line-height: 22px !important;
}

.rb-el-button .elementor-button:hover,
.rb-el-card-link .elementor-button:hover,
.rb-el-flip-link .elementor-button:hover,
.rb-el-gallery-link .elementor-button:hover {
  filter: brightness(1.08);
}

.rb-el-intro {
  background: #fff;
}

.rb-el-intro > .rb-el-shell {
  display: flex !important;
  flex-direction: column;
  gap: 40px;
  padding: 100px 120px !important;
}

.rb-el-intro-title {
  max-width: 900px;
}

.rb-el-intro-title .elementor-heading-title {
  color: #cb2026;
  font-size: 48px;
  font-weight: 700;
  line-height: 1.15;
}

.rb-el-intro-body {
  max-width: 900px;
  color: #101010;
  font-size: 22px;
  line-height: 32px;
}

.rb-el-intro--hub > .rb-el-shell {
  padding-block: 80px !important;
}

.rb-el-hub-intro {
  max-width: 900px;
  color: #101010;
  font-size: 26px;
  font-weight: 600;
  line-height: 36px;
}

.rb-el-features,
.rb-el-hub-cards {
  background: #f2f2f2;
}

.rb-el-features > .rb-el-shell,
.rb-el-hub-cards > .rb-el-shell {
  padding: 100px 120px !important;
}

.rb-el-section-title .elementor-heading-title {
  color: #101010;
  font-size: 44px;
  font-weight: 700;
  line-height: 66px;
}

.rb-el-feature-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 32px !important;
  margin-top: 40px;
}

.rb-el-feature-card {
  display: flex !important;
  flex-direction: column;
  gap: 12px !important;
  padding-left: 20px !important;
}

.rb-el-feature-card::before {
  position: absolute;
  top: 11px;
  left: 0;
  width: 8px;
  height: 8px;
  content: '';
  background: #cb2026;
}

.rb-el-feature-title .elementor-heading-title {
  color: #101010;
  font-size: 24px;
  font-weight: 600;
  line-height: 36px;
}

.rb-el-feature-body {
  color: #101010;
  font-size: 18px;
  line-height: 28px;
}

.rb-el-facts {
  background: #101010;
}

.rb-el-facts-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 80px !important;
  padding: 100px 120px !important;
}

.rb-el-facts-column {
  display: flex !important;
  flex-direction: column;
  gap: 32px !important;
}

.rb-el-facts .rb-el-section-title .elementor-heading-title {
  color: #fff;
}

.rb-el-list .elementor-icon-list-items {
  display: flex;
  flex-direction: column;
  gap: 16px !important;
}

.rb-el-list .elementor-icon-list-item {
  align-items: flex-start;
  gap: 16px;
  margin: 0 !important;
}

.rb-el-list .elementor-icon-list-icon {
  margin-top: 8px;
}

.rb-el-list .elementor-icon-list-icon svg,
.rb-el-list .elementor-icon-list-icon i {
  width: 8px;
  height: 8px;
  color: #cb2026;
  fill: #cb2026;
  font-size: 8px;
}

.rb-el-list .elementor-icon-list-text {
  color: #101010;
  font-size: 20px;
  line-height: 28px;
}

.rb-el-list--light .elementor-icon-list-text {
  color: #fff;
}

.rb-el-cta {
  min-height: 0;
  background: #cb2026;
}

.rb-el-cta--dark {
  background: #2d3a3a;
}

.rb-el-cta-inner {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 64px !important;
  padding: 120px !important;
}

.rb-el-cta--dark .rb-el-cta-inner {
  flex-direction: column !important;
  gap: 48px !important;
  padding-block: 80px !important;
  text-align: center;
}

.rb-el-cta--dark .rb-el-cta-copy {
  width: 100%;
  max-width: 1100px;
  align-items: center !important;
  gap: 32px !important;
}

.rb-el-cta--dark .rb-el-cta-title .elementor-heading-title {
  font-size: 60px;
  line-height: 60px;
}

.rb-el-cta--dark .rb-el-cta-body {
  max-width: 855px;
  font-size: 20px;
  line-height: 28px;
}

.rb-el-cta-copy {
  display: flex !important;
  max-width: 760px;
  flex-direction: column !important;
  gap: 16px !important;
  color: #fff;
}

.rb-el-cta-title .elementor-heading-title {
  color: #fff;
  font-size: 52px;
  font-weight: 700;
  line-height: 1.1;
}

.rb-el-cta-body {
  color: #fff;
  font-size: 22px;
  line-height: 28px;
}

.rb-el-cta-button {
  flex: 0 0 auto;
}

.rb-el-cta .rb-el-cta-button .elementor-button {
  background: #fff !important;
  color: #cb2026 !important;
}

.rb-el-cta--dark .rb-el-cta-button .elementor-button {
  background: #cb2026 !important;
  color: #fff !important;
}

.rb-el-hub-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 32px !important;
}

.rb-el-hub-card {
  display: flex !important;
  overflow: hidden;
  flex-direction: column;
  min-height: 508px;
  border-radius: 16px;
  background: #fff;
  transition: box-shadow 0.2s ease;
}

.rb-el-hub-card:hover {
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
}

.rb-el-hub-card-image {
  width: 100%;
  aspect-ratio: 4 / 3;
  overflow: hidden;
}

.rb-el-hub-card-image > .elementor-widget-container,
.rb-el-hub-card-image a,
.rb-el-hub-card-image img {
  display: block;
  width: 100% !important;
  height: 100% !important;
}

.rb-el-hub-card-image img {
  object-fit: cover;
  transition: transform 0.3s ease;
}

.rb-el-hub-card:hover .rb-el-hub-card-image img {
  transform: scale(1.03);
}

.rb-el-hub-card-body {
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: column;
  gap: 12px !important;
  padding: 32px !important;
}

.rb-el-hub-card-title .elementor-heading-title {
  color: #101010;
  font-size: 26px;
  font-weight: 600;
  line-height: 30px;
}

.rb-el-hub-card-description {
  flex: 1 1 auto !important;
  color: #101010;
  font-size: 18px;
  line-height: 27px;
}

.rb-el-card-link .elementor-button {
  min-height: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none;
  color: #cb2026 !important;
  font-size: 18px !important;
  line-height: 27px !important;
}

.rb-el-card-link .elementor-button::after {
  margin-left: 8px;
  content: '↗';
  color: #e2e729;
  font-size: 22px;
}

/* Home */
.rb-el-building {
  overflow: hidden;
  background: #eee;
}

.rb-el-watermark {
  position: absolute !important;
  top: 60px;
  left: 50%;
  width: min(1490px, 110%) !important;
  max-width: none !important;
  transform: translateX(-50%);
  pointer-events: none;
}

.rb-el-building-inner {
  display: flex !important;
  flex-direction: column;
  align-items: center;
  gap: 100px !important;
  padding: 120px 32px !important;
}

.rb-el-centered-copy {
  display: flex !important;
  max-width: 1000px;
  flex-direction: column;
  align-items: center;
  gap: 48px !important;
  padding-inline: 88px !important;
  text-align: center;
}

.rb-el-building-title .elementor-heading-title,
.rb-el-gallery-title .elementor-heading-title {
  color: #cb2026;
  font-size: 60px;
  font-weight: 700;
  line-height: 60px;
}

.rb-el-building-subtitle,
.rb-el-gallery-subtitle {
  color: #101010;
  font-size: 26px;
  line-height: 30px;
}

.rb-el-building-grid {
  display: grid !important;
  width: 100%;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 32px !important;
}

.rb-el-flip-card {
  position: relative;
  width: 100%;
  aspect-ratio: 1;
  perspective: 1200px;
}

.rb-el-flip-front,
.rb-el-flip-back {
  position: absolute !important;
  inset: 0;
  display: flex !important;
  overflow: hidden;
  width: 100%;
  height: 100%;
  border-radius: 16px;
  backface-visibility: hidden;
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.15);
  transition: transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}

.rb-el-flip-front {
  z-index: 2;
  align-items: center;
  justify-content: center;
  padding: 24px !important;
  background: #cb2026;
  text-align: center;
  transform: rotateY(0);
}

.rb-el-flip-back {
  z-index: 1;
  transform: rotateY(180deg);
}

.rb-el-flip-card:hover .rb-el-flip-front,
.rb-el-flip-card:focus-within .rb-el-flip-front {
  transform: rotateY(180deg);
}

.rb-el-flip-card:hover .rb-el-flip-back,
.rb-el-flip-card:focus-within .rb-el-flip-back {
  transform: rotateY(360deg);
}

.rb-el-flip-title .elementor-heading-title {
  color: #fff;
  font-size: clamp(32px, 3.2vw, 50px);
  font-weight: 900;
  line-height: 1.2;
}

.rb-el-flip-copy {
  position: relative;
  z-index: 2;
  display: flex !important;
  height: 100%;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  padding: 48px 24px 40px !important;
}

.rb-el-flip-back-title .elementor-heading-title {
  color: #e6e7e8;
  font-size: 34px;
  font-weight: 400;
  line-height: 36px;
}

.rb-el-flip-description {
  color: #fff;
  font-size: 24px;
  line-height: 28px;
}

.rb-el-flip-link {
  margin-top: auto;
}

.rb-el-flip-link .elementor-button {
  min-height: 0 !important;
  padding: 0 0 2px !important;
  border-bottom: 1px solid #e2e729;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none;
  color: #e2e729 !important;
  font-size: 26px !important;
}

.rb-el-flip-link .elementor-button::after {
  margin-left: 8px;
  content: '↗';
}

.rb-el-gallery {
  padding-block: 60px !important;
  background: #101010;
}

.rb-el-gallery-inner {
  display: flex !important;
  flex-direction: column;
  gap: 0 !important;
  padding-inline: 120px !important;
}

.rb-el-gallery-heading {
  display: flex !important;
  flex-direction: column;
  gap: 32px !important;
  margin-bottom: 60px;
  color: #fff;
}

.rb-el-gallery-title .elementor-heading-title,
.rb-el-gallery-subtitle {
  color: #fff;
}

.rb-el-gallery-subtitle {
  max-width: 908px;
}

.rb-el-gallery-track {
  display: flex !important;
  width: 100%;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  gap: 48px !important;
  margin-bottom: 40px;
  padding-bottom: 4px !important;
  overflow-x: auto;
  scroll-behavior: smooth;
  scrollbar-width: none;
}

.rb-el-gallery-track::-webkit-scrollbar {
  display: none;
}

.rb-el-gallery-card {
  position: relative;
  display: flex !important;
  overflow: hidden;
  width: 373px !important;
  min-width: 373px;
  height: 400px;
  flex: 0 0 373px;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  border-radius: 16px;
}

.rb-el-gallery-image,
.rb-el-gallery-image > .elementor-widget-container,
.rb-el-gallery-image a,
.rb-el-gallery-image img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100% !important;
  height: 100% !important;
}

.rb-el-gallery-image img {
  object-fit: cover;
}

.rb-el-gallery-card::after {
  position: absolute;
  inset: 0;
  z-index: 1;
  content: '';
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.16) 65%, rgba(0, 0, 0, 0.64) 86%);
  pointer-events: none;
}

.rb-el-gallery-link {
  position: relative;
  z-index: 2;
  width: 100% !important;
  padding: 16px;
}

.rb-el-gallery-link .elementor-button {
  width: 100%;
  min-height: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none;
  color: #fff !important;
  font-size: 26px !important;
  line-height: 30px !important;
}

.rb-el-gallery-link .elementor-button::after {
  margin-left: 16px;
  content: '→';
}

.rb-el-gallery-controls {
  display: flex !important;
  flex-direction: row !important;
  justify-content: center;
  gap: 24px !important;
}

.rb-el-gallery-control {
  width: 42px !important;
  height: 42px;
}

.rb-el-gallery-control .elementor-button {
  width: 42px;
  height: 42px;
  padding: 0 0 3px;
  border: 2px solid #fff;
  border-radius: 50%;
  background: transparent;
  color: #fff;
  font-size: 32px;
  line-height: 1;
}

/* Legal and article */
.rb-el-legal-back {
  padding: 20px 120px !important;
  background: #101010;
}

.rb-el-legal-back-button .elementor-button {
  padding: 0;
  background: transparent;
  color: #fff;
  font-size: 20px;
  font-weight: 600;
  line-height: 30px;
}

.rb-el-legal-document {
  background: #101010;
  color: #fff;
}

.rb-el-legal-document > .rb-el-shell {
  display: flex !important;
  flex-direction: column;
  gap: 0 !important;
  padding: 80px 120px !important;
}

.rb-el-legal-title .elementor-heading-title {
  color: #fff;
  font-size: 60px;
  font-weight: 700;
  line-height: 60px;
}

.rb-el-legal-title {
  margin-bottom: 60px !important;
}

.rb-el-legal-section,
.rb-el-legal-subsection {
  display: flex !important;
  flex-direction: column;
  gap: 24px !important;
}

.rb-el-legal-subsection {
  gap: 8px !important;
}

.rb-el-legal-section + .rb-el-legal-section {
  margin-top: 60px;
}

.rb-el-legal-heading .elementor-heading-title {
  color: #cb2026;
  font-size: 26px;
  font-weight: 600;
  line-height: 30px;
}

.rb-el-legal-subheading .elementor-heading-title {
  color: #fff;
  font-size: 20px;
  font-style: italic;
  font-weight: 600;
}

.rb-el-legal-paragraph,
.rb-el-legal-subparagraph {
  color: #fff;
  font-size: 20px;
  line-height: 28px;
}

.rb-el-legal-subparagraph {
  padding-left: 40px;
}

.rb-el-article {
  background: #fff;
}

.rb-el-article > .rb-el-shell {
  display: flex !important;
  flex-direction: column;
  gap: 40px;
  padding: 100px 120px !important;
}

.rb-el-article-intro {
  width: 900px !important;
  max-width: 900px !important;
  color: #101010;
  font-size: 26px;
  font-weight: 600;
  line-height: 36px;
}

.rb-el-article-body {
  width: 900px !important;
  max-width: 900px !important;
  color: #101010;
  font-size: 20px;
  line-height: 28px;
}

/* Semantic special pages: every top-level content section stays independently
   editable, while a small set of layout primitives keeps the tree readable. */
.rb-el-special {
  position: relative;
  overflow: hidden;
  background: #fff;
}

.rb-el-special--alt {
  background: #f2f2f2;
}

.rb-el-special-inner {
  position: relative;
  z-index: 1;
  display: flex !important;
  flex-direction: column;
  gap: 48px;
  padding: 100px 120px !important;
}

.rb-el-special-copy-column {
  display: flex !important;
  max-width: 900px;
  flex-direction: column;
  gap: 24px;
}

.rb-el-eyebrow {
  color: #cb2026;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
}

.rb-el-special-title .elementor-heading-title {
  color: #101010;
  font-size: 60px;
  font-weight: 700;
  line-height: 1.05;
}

.rb-el-special-copy {
  color: #101010;
  font-size: 20px;
  line-height: 28px;
}

.rb-el-special-image {
  width: 100%;
  max-height: 600px;
  overflow: hidden;
}

.rb-el-special-image img {
  width: 100%;
  max-height: 600px;
  object-fit: cover;
}

.rb-el-special-image--backgroundimage,
.rb-el-special-image--watermark {
  position: absolute !important;
  inset: 0;
  width: 100%;
  height: 100%;
  max-height: none;
  pointer-events: none;
}

.rb-el-special-image--backgroundimage img,
.rb-el-special-image--watermark img {
  width: 100%;
  height: 100%;
  max-height: none;
  object-fit: cover;
}

.rb-el-special-image--watermark {
  opacity: 0.18;
}

.rb-el-special-grid,
.rb-el-special-gallery {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 32px;
}

.rb-el-special-card {
  display: flex !important;
  overflow: hidden;
  flex-direction: column;
  gap: 16px;
  border-radius: 16px;
  background: #fff;
  padding: 24px !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.rb-el-special-card-image {
  overflow: hidden;
  aspect-ratio: 4 / 3;
  margin: -24px -24px 8px;
}

.rb-el-special-card-image img,
.rb-el-special-gallery-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.rb-el-special-card-title .elementor-heading-title {
  color: #101010;
  font-size: 26px;
  font-weight: 600;
  line-height: 30px;
}

.rb-el-special-card-copy {
  color: #101010;
  font-size: 18px;
  line-height: 26px;
}

:is(
  .rb-el-page--concrete-forming .rb-el-special--benefits,
  .rb-el-page--concrete-forming .rb-el-special--lvl,
  .rb-el-page--sustainability .rb-el-special--efficiency
) .rb-el-special-card {
  border-radius: 0;
  border-bottom: 1.5px solid #cb2026;
  background: transparent;
  padding: 24px 0 !important;
  box-shadow: none;
}

:is(
  .rb-el-page--concrete-forming .rb-el-special--benefits,
  .rb-el-page--concrete-forming .rb-el-special--lvl,
  .rb-el-page--sustainability .rb-el-special--efficiency
) .rb-el-special-card:first-child {
  border-top: 1.5px solid #cb2026;
}

:is(
  .rb-el-page--concrete-forming .rb-el-special--benefits,
  .rb-el-page--concrete-forming .rb-el-special--lvl,
  .rb-el-page--sustainability .rb-el-special--efficiency
) .rb-el-special-card-title {
  cursor: pointer;
}

:is(
  .rb-el-page--concrete-forming .rb-el-special--benefits,
  .rb-el-page--concrete-forming .rb-el-special--lvl,
  .rb-el-page--sustainability .rb-el-special--efficiency
) .rb-el-special-card:not(.is-open) .rb-el-special-card-copy--body {
  display: none;
}

.rb-el-page--concrete-forming .rb-el-special--benefits:not(.rb-el-accordion-ready) .rb-el-special-card:first-child .rb-el-special-card-copy--body,
.rb-el-page--concrete-forming .rb-el-special--lvl:not(.rb-el-accordion-ready) .rb-el-special-card:first-child .rb-el-special-card-copy--body,
.rb-el-page--sustainability .rb-el-special--efficiency:not(.rb-el-accordion-ready) .rb-el-special-card:nth-child(2) .rb-el-special-card-copy--body {
  display: block;
}

:is(
  .rb-el-page--concrete-forming .rb-el-special--sustainability,
  .rb-el-page--open-web-trusses .rb-el-special--benefits,
  .rb-el-page--red-i-joist .rb-el-special--fireperformance,
  .rb-el-page--red-i-joist .rb-el-special--sustainability,
  .rb-el-page--glulam-beam .rb-el-special--why,
  .rb-el-page--glulam-beam .rb-el-special--sustainability,
  .rb-el-page--lvl .rb-el-special--benefits,
  .rb-el-page--lvl .rb-el-special--sustainability
) .rb-el-special-card {
  border-radius: 0;
  border-bottom: 1.5px solid #cb2026;
  background: transparent;
  padding: 24px 0 !important;
  box-shadow: none;
}

.rb-el-special-gallery-image {
  overflow: hidden;
  min-height: 320px;
  border-radius: 16px;
}

.rb-el-bleed-image {
  min-height: 600px;
}

.rb-el-form-section {
  background: #eee;
}

.rb-el-form-section > .rb-el-shell {
  padding: 80px 120px !important;
}

.rb-el-form .elementor-field-group {
  margin-bottom: 16px;
}

.rb-el-form .elementor-field {
  min-height: 48px;
  border: 1px solid #d1d1d1;
  border-radius: 8px;
  background: #fff;
  color: #101010;
  font-size: 18px;
}

.rb-el-form .elementor-button {
  min-height: 48px;
  padding-inline: 32px;
  border-radius: 100px;
  background: #cb2026;
  color: #fff;
  font-size: 20px;
  font-weight: 600;
}

@media (min-width: 768px) {
  .rb-el-intro-title,
  .rb-el-intro-body {
    width: 900px !important;
    max-width: 900px !important;
  }

  .rb-el-page--gallery .rb-el-hub-cards > .rb-el-shell {
    padding-block: 40px !important;
  }

  .rb-el-special-inner {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: center;
  }

  .rb-el-special-inner > :is(.rb-el-special-title, .rb-el-special-grid, .rb-el-special-group) {
    grid-column: 1 / -1;
  }

  .rb-el-special-inner > .rb-el-special-grid {
    align-self: stretch;
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special--intro {
    background: #101010;
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special--intro .rb-el-special-inner {
    grid-template-columns: minmax(0, 1fr) 480px;
    gap: 100px;
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special--intro .rb-el-special-copy--paragraphs {
    color: #fff;
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special-grid--stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special-grid--stats .rb-el-special-card {
    min-height: 180px;
    align-items: center;
    justify-content: center;
    border-radius: 24px;
    background: #2a2a2a;
    color: #fff;
    text-align: center;
    box-shadow: none;
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special-grid--stats .rb-el-special-value .elementor-heading-title {
    color: #e2e729;
    font-size: 34px;
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special-grid--stats .rb-el-special-copy {
    color: #fff;
    font-weight: 600;
  }

  .rb-el-legal-document > .rb-el-shell {
    padding-bottom: 110px !important;
  }

  /* Page-specific compositions for the long editorial/product families. */
  .rb-el-page--about > :nth-child(2) { min-height: 778px; background: #101010; }
  .rb-el-page--about > :nth-child(3) { min-height: 690px; background: #cb2026; }
  .rb-el-page--about > :nth-child(4) { min-height: 678px; background: #f2f2f2; }
  .rb-el-page--about > :nth-child(5) { min-height: 932px; background: #fff; }
  .rb-el-page--about > :nth-child(6) { min-height: 763px; background: #f2f2f2; }
  .rb-el-page--about > :nth-child(7) { min-height: 961px; background: #101010; }
  .rb-el-page--about > :nth-child(8) { min-height: 749.65625px; background: #fff; }
  .rb-el-page--about > :nth-child(9) { min-height: 380px; }

  .rb-el-page--about .rb-el-special--video .rb-el-special-inner {
    display: grid !important;
    min-height: 678px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: 0 !important;
  }

  .rb-el-page--about .rb-el-special--video .rb-el-special-image,
  .rb-el-page--about .rb-el-special--video .rb-el-special-image img {
    height: 678px;
    max-height: none;
  }

  .rb-el-page--about .rb-el-special--video .rb-el-special-copy-column {
    align-self: center;
    padding: 80px !important;
  }

  .rb-el-page--about .rb-el-special--history .rb-el-special-grid,
  .rb-el-page--about .rb-el-special--team .rb-el-special-grid {
    display: flex !important;
    flex-flow: row nowrap !important;
    gap: 32px !important;
    overflow-x: auto;
    scrollbar-width: none;
  }

  .rb-el-page--about .rb-el-special--history .rb-el-special-card,
  .rb-el-page--about .rb-el-special--team .rb-el-special-card {
    width: 320px !important;
    min-width: 320px;
    flex: 0 0 320px;
  }

  .rb-el-page--careers > :nth-child(2) { min-height: 620px; background: #fff; }
  .rb-el-page--careers > :nth-child(3) { min-height: 480px; background: #f2f2f2; }
  .rb-el-page--careers > :nth-child(4) { min-height: 516px; }
  .rb-el-page--careers > :nth-child(5) { min-height: 889px; background: #101010; }

  .rb-el-page--careers .rb-el-special--why .rb-el-special-inner {
    display: grid !important;
    min-height: 480px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: stretch;
    padding: 0 !important;
  }

  .rb-el-page--careers .rb-el-special--why .rb-el-special-image,
  .rb-el-page--careers .rb-el-special--why .rb-el-special-image img {
    height: 480px;
    max-height: none;
  }

  .rb-el-page--careers .rb-el-special--why .rb-el-special-copy-column {
    justify-content: center;
    padding: 64px !important;
  }

  .rb-el-page--sustainability > :nth-child(2) { min-height: 624px; background: #fff; }
  .rb-el-page--sustainability > :nth-child(3) { min-height: 514.5px; background: #101010; }
  .rb-el-page--sustainability > :nth-child(4) { min-height: 624px; background: #101010; }
  .rb-el-page--sustainability > :nth-child(5) { min-height: 600px; }
  .rb-el-page--sustainability > :nth-child(6) { min-height: 782px; background: #eee; }
  .rb-el-page--sustainability > :nth-child(7) { min-height: 807px; background: #101010; }
  .rb-el-page--sustainability > :nth-child(8) { min-height: 872px; background: #fff; }
  .rb-el-page--sustainability > :nth-child(9) { min-height: 560px; }
  .rb-el-page--sustainability > :nth-child(10) { min-height: 647px; background: #cb2026; }
  .rb-el-page--sustainability > :nth-child(11) { min-height: 658px; background: #fff; }
  .rb-el-page--sustainability > :nth-child(12) { min-height: 560px; background: #101010; }

  .rb-el-page--contact > :nth-child(1) { min-height: 560px !important; }
  .rb-el-page--contact > :nth-child(2) { min-height: 917px; background: #fff; }
  .rb-el-page--contact > :nth-child(3) { min-height: 520px; background: #f2f2f2; }
  .rb-el-page--contact .rb-el-special--contact-main {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr);
    gap: 64px !important;
    padding: 100px 120px !important;
  }
  .rb-el-page--contact .rb-el-special--contact-main > .rb-el-shell { padding: 0 !important; }

  .rb-el-page--build-with-us > :nth-child(1) { min-height: 620px !important; }
  .rb-el-page--build-with-us > :nth-child(2) { min-height: 424px; background: #fff; }
  .rb-el-page--build-with-us > :nth-child(3) { min-height: 1280.328125px; background: #f2f2f2; }
  .rb-el-page--build-with-us > :nth-child(4) { min-height: 441.1953125px; background: #fff; }
  .rb-el-page--build-with-us > :nth-child(5) { min-height: 369.1953125px; }

  .rb-el-page--continuing-education > :nth-child(2) { min-height: 508px; background: #fff; }
  .rb-el-page--continuing-education > :nth-child(3) { min-height: 529px; background: #101010; }
  .rb-el-page--continuing-education > :nth-child(4) { min-height: 3760px; background: #fff; }
  .rb-el-page--continuing-education > :nth-child(5) { min-height: 680px; background: #eee; }

  .rb-el-page--case-studies > :nth-child(2) { min-height: 1216px; background: #fff; }
  .rb-el-page--case-studies > :nth-child(3) { min-height: 284.796875px; background: #101010; }

  .rb-el-page--hybrid-mass-timber > :nth-child(2) { min-height: 702px; }
  .rb-el-page--hybrid-mass-timber > :nth-child(3) { min-height: 274.15625px; }
  .rb-el-page--hybrid-mass-timber > :nth-child(4) { min-height: 672px; }
  .rb-el-page--hybrid-mass-timber > :nth-child(5) { min-height: 600px; }
  .rb-el-page--hybrid-mass-timber > :nth-child(6) { min-height: 938px; }
  .rb-el-page--hybrid-mass-timber > :nth-child(7) { min-height: 1215px; }
  .rb-el-page--hybrid-mass-timber > :nth-child(8) { min-height: 1300px; }
  .rb-el-page--hybrid-mass-timber > :nth-child(9) { min-height: 588px; }
  .rb-el-page--hybrid-mass-timber > :nth-child(10) { min-height: 954px; }
  .rb-el-page--hybrid-mass-timber > :nth-child(11) { min-height: 592px; }
  .rb-el-page--hybrid-mass-timber > :nth-child(12) { min-height: 940.5px; }
  .rb-el-page--hybrid-mass-timber > :nth-child(13) { min-height: 600px; }
  .rb-el-page--hybrid-mass-timber > :nth-child(14) { min-height: 496px; }
  .rb-el-page--hybrid-mass-timber > :nth-child(15) { min-height: 1006px; }
  .rb-el-page--hybrid-mass-timber > :nth-child(16) { min-height: 720px; }
  .rb-el-page--hybrid-mass-timber > :nth-child(17) { min-height: 824px; }
  .rb-el-page--hybrid-mass-timber > :nth-child(18) { min-height: 908px; }
  .rb-el-page--hybrid-mass-timber > :nth-child(19) { min-height: 500px; }

  .rb-el-page--concrete-forming > :nth-child(2) { min-height: 636px; }
  .rb-el-page--concrete-forming > :nth-child(3) { min-height: 672px; }
  .rb-el-page--concrete-forming > :nth-child(4) { min-height: 600px; }
  .rb-el-page--concrete-forming > :nth-child(5) { min-height: 948px; }
  .rb-el-page--concrete-forming > :nth-child(6) { min-height: 866.5px; }
  .rb-el-page--concrete-forming > :nth-child(7) { min-height: 1016px; }
  .rb-el-page--concrete-forming > :nth-child(8) { min-height: 1001px; }
  .rb-el-page--concrete-forming > :nth-child(9) { min-height: 600px; }
  .rb-el-page--concrete-forming > :nth-child(10) { min-height: 1339px; }
  .rb-el-page--concrete-forming > :nth-child(11) { min-height: 1062px; }
  .rb-el-page--concrete-forming > :nth-child(12) { min-height: 1092px; }
  .rb-el-page--concrete-forming > :nth-child(13) { min-height: 1078px; }
  .rb-el-page--concrete-forming > :nth-child(14) { min-height: 496px; }
  .rb-el-page--concrete-forming > :nth-child(15) { min-height: 500px; }

  .rb-el-page--wall-panels > :nth-child(2) { min-height: 1035px; }
  .rb-el-page--wall-panels > :nth-child(3) { min-height: 586px; }
  .rb-el-page--wall-panels > :nth-child(4) { min-height: 690px; }
  .rb-el-page--wall-panels > :nth-child(5) { min-height: 868px; }
  .rb-el-page--wall-panels > :nth-child(6) { min-height: 1375px; }
  .rb-el-page--wall-panels > :nth-child(7) { min-height: 844.5px; }
  .rb-el-page--wall-panels > :nth-child(8) { min-height: 914px; }
  .rb-el-page--wall-panels > :nth-child(9) { min-height: 753px; }
  .rb-el-page--wall-panels > :nth-child(10) { min-height: 998px; }
  .rb-el-page--wall-panels > :nth-child(11) { min-height: 676px; }
  .rb-el-page--wall-panels > :nth-child(12) { min-height: 600px; }
  .rb-el-page--wall-panels > :nth-child(13) { min-height: 1121px; }
  .rb-el-page--wall-panels > :nth-child(14) { min-height: 1054px; }
  .rb-el-page--wall-panels > :nth-child(15) { min-height: 1052.59375px; }
  .rb-el-page--wall-panels > :nth-child(16) { min-height: 544px; }

  .rb-el-page--open-web-trusses > :nth-child(2) { min-height: 528px; }
  .rb-el-page--open-web-trusses > :nth-child(3) { min-height: 964px; }
  .rb-el-page--open-web-trusses > :nth-child(4) { min-height: 1369px; }
  .rb-el-page--open-web-trusses > :nth-child(5) { min-height: 1023px; }
  .rb-el-page--open-web-trusses > :nth-child(6) { min-height: 798px; }
  .rb-el-page--open-web-trusses > :nth-child(7) { min-height: 1142px; }
  .rb-el-page--open-web-trusses > :nth-child(8) { min-height: 1110px; }
  .rb-el-page--open-web-trusses > :nth-child(9) { min-height: 940px; }
  .rb-el-page--open-web-trusses > :nth-child(10) { min-height: 1212px; }
  .rb-el-page--open-web-trusses > :nth-child(11) { min-height: 1062px; }
  .rb-el-page--open-web-trusses > :nth-child(12) { min-height: 838.34375px; }
  .rb-el-page--open-web-trusses > :nth-child(13) { min-height: 544px; }

  .rb-el-page--red-i-joist > :nth-child(2) { min-height: 1012px; }
  .rb-el-page--red-i-joist > :nth-child(3) { min-height: 927px; }
  .rb-el-page--red-i-joist > :nth-child(4) { min-height: 1417px; }
  .rb-el-page--red-i-joist > :nth-child(5) { min-height: 1375px; }
  .rb-el-page--red-i-joist > :nth-child(6) { min-height: 753px; }
  .rb-el-page--red-i-joist > :nth-child(7) { min-height: 840px; }
  .rb-el-page--red-i-joist > :nth-child(8) { min-height: 812px; }
  .rb-el-page--red-i-joist > :nth-child(9) { min-height: 1006px; }
  .rb-el-page--red-i-joist > :nth-child(10) { min-height: 1054px; }
  .rb-el-page--red-i-joist > :nth-child(11) { min-height: 1084.5px; }
  .rb-el-page--red-i-joist > :nth-child(12) { min-height: 484px; }

  .rb-el-page--glulam-beam > :nth-child(2) { min-height: 1333px; }
  .rb-el-page--glulam-beam > :nth-child(3) { min-height: 1398px; }
  .rb-el-page--glulam-beam > :nth-child(4) { min-height: 1010px; }
  .rb-el-page--glulam-beam > :nth-child(5) { min-height: 1026px; }
  .rb-el-page--glulam-beam > :nth-child(6) { min-height: 1501px; }
  .rb-el-page--glulam-beam > :nth-child(7) { min-height: 904.5px; }
  .rb-el-page--glulam-beam > :nth-child(8) { min-height: 748px; }
  .rb-el-page--glulam-beam > :nth-child(9) { min-height: 968px; }
  .rb-el-page--glulam-beam > :nth-child(10) { min-height: 1114px; }
  .rb-el-page--glulam-beam > :nth-child(11) { min-height: 1146px; }
  .rb-el-page--glulam-beam > :nth-child(12) { min-height: 544px; }

  .rb-el-page--lvl > .rb-el-special--intro { min-height: 618px; }
  .rb-el-page--lvl > .rb-el-special--whatis { min-height: 1020px; }
  .rb-el-page--lvl > .rb-el-special--difference { min-height: 862px; }
  .rb-el-page--lvl > .rb-el-special--whyspecify { min-height: 973px; }
  .rb-el-page--lvl > .rb-el-special--comparison { min-height: 1529px; }
  .rb-el-page--lvl > .rb-el-special--benefits { min-height: 873px; }
  .rb-el-page--lvl > .rb-el-special--process { min-height: 1146px; }
  .rb-el-page--lvl > .rb-el-special--installation { min-height: 1360px; }
  .rb-el-page--lvl > .rb-el-special--applications { min-height: 1082px; }
  .rb-el-page--lvl > .rb-el-special--sustainability { min-height: 843px; }
  .rb-el-page--lvl > .rb-el-cta { min-height: 484px; }
}

@media (min-width: 1366px) {
  .rb-el-page--lvl > .rb-el-special--whatis { min-height: 964px; }
  .rb-el-page--lvl > .rb-el-special--difference { min-height: 802px; }
  .rb-el-page--lvl > .rb-el-special--benefits { min-height: 813px; }
  .rb-el-page--lvl > .rb-el-special--process { min-height: 1086px; }
  .rb-el-page--lvl > .rb-el-special--installation { min-height: 1210px; }
  .rb-el-page--lvl > .rb-el-special--sustainability { min-height: 753px; }
}

@media (min-width: 1440px) {
  .rb-el-page--lvl > .rb-el-special--whatis { min-height: 820px; }
  .rb-el-page--lvl > .rb-el-special--difference { min-height: 772px; }
  .rb-el-page--lvl > .rb-el-special--whyspecify { min-height: 946px; }
  .rb-el-page--lvl > .rb-el-special--benefits { min-height: 783px; }
}

@media (min-width: 768px) {
  .rb-el-special--pictures .rb-el-special-inner,
  .rb-el-special--featureimage .rb-el-special-inner {
    min-height: inherit;
    padding: 0 !important;
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special--pictures {
    min-height: 274.15625px;
    height: 274.15625px;
  }

  .rb-el-special--pictures .rb-el-special-grid {
    display: grid !important;
    height: 100%;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0 !important;
  }

  .rb-el-special--pictures .rb-el-special-card {
    height: 100%;
    min-height: 274.15625px;
    border-radius: 0;
    padding: 0 !important;
    box-shadow: none;
  }

  .rb-el-special--pictures .rb-el-special-card-image,
  .rb-el-special--pictures .rb-el-special-card-image img {
    height: 100%;
    margin: 0;
  }

  .rb-el-special--featureimage .rb-el-special-image,
  .rb-el-special--featureimage .rb-el-special-image img {
    height: 600px;
    max-height: none;
  }

  .rb-el-page--concrete-forming .rb-el-special--engineered .rb-el-special-inner {
    display: grid !important;
    min-height: 672px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: stretch;
    padding: 0 !important;
  }

  .rb-el-page--concrete-forming .rb-el-special--engineered .rb-el-special-image,
  .rb-el-page--concrete-forming .rb-el-special--engineered .rb-el-special-image img {
    height: 672px;
    max-height: none;
  }

  .rb-el-page--concrete-forming .rb-el-special--engineered .rb-el-special-copy-column {
    justify-content: center;
    padding: 80px 120px 80px 64px !important;
  }

  :is(.rb-el-special--performance, .rb-el-page--continuing-education .rb-el-special--benefits, .rb-el-page--sustainability .rb-el-special--efficiency) {
    position: relative;
    color: #fff;
    background: #101010;
  }

  :is(.rb-el-special--performance, .rb-el-page--continuing-education .rb-el-special--benefits, .rb-el-page--sustainability .rb-el-special--efficiency) .rb-el-special-image {
    position: absolute !important;
    inset: 0;
    width: 100%;
    height: 100%;
    max-height: none;
  }

  :is(.rb-el-special--performance, .rb-el-page--continuing-education .rb-el-special--benefits, .rb-el-page--sustainability .rb-el-special--efficiency) .rb-el-special-image::after {
    position: absolute;
    inset: 0;
    content: '';
    background: rgba(0, 0, 0, 0.8);
  }

  :is(.rb-el-special--performance, .rb-el-page--continuing-education .rb-el-special--benefits, .rb-el-page--sustainability .rb-el-special--efficiency) .rb-el-special-image img {
    width: 100%;
    height: 100%;
    max-height: none;
  }

  :is(.rb-el-special--performance, .rb-el-page--continuing-education .rb-el-special--benefits, .rb-el-page--sustainability .rb-el-special--efficiency) .rb-el-special-copy,
  :is(.rb-el-special--performance, .rb-el-page--continuing-education .rb-el-special--benefits, .rb-el-page--sustainability .rb-el-special--efficiency) .rb-el-special-title .elementor-heading-title,
  :is(.rb-el-page--about > :nth-child(2), .rb-el-page--about > :nth-child(3), .rb-el-page--about > :nth-child(7)) .rb-el-special-copy,
  :is(.rb-el-page--about > :nth-child(2), .rb-el-page--about > :nth-child(3), .rb-el-page--about > :nth-child(7)) .rb-el-special-title .elementor-heading-title {
    color: #fff;
  }

  :is(.rb-el-special--producttypes, .rb-el-special--applications, .rb-el-special--profiles, .rb-el-special--types) .rb-el-special-grid,
  .rb-el-page--careers .rb-el-special--life .rb-el-special-gallery {
    display: flex !important;
    flex-flow: row nowrap !important;
    gap: 32px !important;
    overflow-x: auto;
    scrollbar-width: none;
  }

  :is(.rb-el-special--producttypes, .rb-el-special--applications, .rb-el-special--profiles, .rb-el-special--types) .rb-el-special-card {
    width: 320px !important;
    min-width: 320px;
    flex: 0 0 320px;
  }

  .rb-el-page--careers .rb-el-special--life .rb-el-special-gallery-image {
    width: 373px !important;
    min-width: 373px;
    height: 400px;
    flex: 0 0 373px;
  }

  .rb-el-page--contact .rb-el-special--ctacards .rb-el-special-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 32px !important;
  }

  .rb-el-page--contact .rb-el-special--ctacards .rb-el-special-card {
    position: relative;
    min-height: 320px;
    height: 320px;
    justify-content: flex-end;
    color: #fff;
  }

  .rb-el-page--contact .rb-el-special--ctacards .rb-el-special-card-image {
    position: absolute;
    inset: 0;
    height: 100%;
    margin: 0;
  }

  .rb-el-page--contact .rb-el-special--ctacards .rb-el-special-card > :not(.rb-el-special-card-image) {
    position: relative;
    z-index: 2;
  }

  .rb-el-page--case-studies > .rb-el-cta .rb-el-cta-inner {
    padding-block: 80px !important;
  }

  .rb-el-page--case-studies .rb-el-special--cases {
    display: flex !important;
    height: 1216px;
    flex-direction: column !important;
    gap: 32px !important;
    padding: 80px 120px !important;
  }

  .rb-el-page--case-studies .rb-el-special--cases > .rb-el-shell {
    max-width: none;
    padding: 0 !important;
  }

  .rb-el-page--case-studies > .rb-el-cta .rb-el-cta-title .elementor-heading-title {
    font-size: 48px;
    line-height: 52.8px;
  }

  .rb-el-page--case-studies > .rb-el-cta .rb-el-cta-body {
    font-size: 20px;
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special--intro .rb-el-special-grid--stats {
    grid-column: 2;
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special--why .rb-el-special-copy--paragraphs {
    grid-column: 1;
    grid-row: 2 / 4;
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special--why .rb-el-special-title--listtitle,
  .rb-el-page--hybrid-mass-timber .rb-el-special--why .rb-el-list--bullets {
    grid-column: 2;
  }

  :is(
    .rb-el-page--hybrid-mass-timber .rb-el-special--difference,
    .rb-el-page--concrete-forming .rb-el-special--advantage
  ) .rb-el-special-image--image {
    grid-column: 2;
    grid-row: 1 / 7;
    align-self: center;
  }

  :is(
    .rb-el-page--hybrid-mass-timber .rb-el-special--difference,
    .rb-el-page--concrete-forming .rb-el-special--advantage
  ) .rb-el-special-inner > :not(.rb-el-special-image--image) {
    grid-column: 1;
  }

  .rb-el-page--concrete-forming .rb-el-special--intro .rb-el-special-title--headline {
    grid-column: 1;
  }

  .rb-el-page--concrete-forming .rb-el-special--intro .rb-el-special-title--headline .elementor-heading-title {
    font-size: 26px;
    line-height: 36px;
  }

  .rb-el-page--concrete-forming .rb-el-special--intro .rb-el-special-copy--paragraphs {
    grid-column: 2;
  }

  .rb-el-page--concrete-forming .rb-el-special--engineered .rb-el-special-title,
  .rb-el-page--concrete-forming .rb-el-special--engineered .rb-el-special-copy {
    grid-column: 2;
  }

  .rb-el-page--concrete-forming .rb-el-special--engineered .rb-el-special-image--image {
    grid-row: 1 / 3;
  }

  .rb-el-page--wall-panels .rb-el-special--intro .rb-el-special-grid--features {
    grid-column: 1 / -1;
    grid-row: auto;
    gap: 16px;
  }

  .rb-el-page--wall-panels .rb-el-special--intro .rb-el-special-inner > :not(.rb-el-special-grid--features, .rb-el-special-image--watermark) {
    grid-column: 1 / -1;
  }

  .rb-el-page--wall-panels .rb-el-special--intro .rb-el-special-grid--features .rb-el-special-card {
    padding: 16px !important;
  }

  .rb-el-page--wall-panels .rb-el-special--intro .rb-el-special-grid--features .rb-el-special-card-image {
    width: 64px;
    height: 64px;
    aspect-ratio: auto;
    margin: 0;
  }

  .rb-el-page--wall-panels .rb-el-special--intro .rb-el-special-inner {
    padding-block: 76px !important;
  }

  .rb-el-page--wall-panels .rb-el-special--brands .rb-el-special-title,
  .rb-el-page--wall-panels .rb-el-special--brands .rb-el-special-copy,
  .rb-el-page--wall-panels .rb-el-special--brands .rb-el-special-grid--highlights {
    grid-column: 1;
  }

  .rb-el-page--wall-panels .rb-el-special--brands .rb-el-special-grid--logos {
    grid-column: 2;
    grid-row: 1 / 4;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
  }

  .rb-el-page--wall-panels .rb-el-special--brands .rb-el-special-grid--logos .rb-el-special-card {
    padding: 12px !important;
  }

  .rb-el-page--wall-panels .rb-el-special--brands .rb-el-special-grid--logos .rb-el-special-card-image {
    height: 80px;
    aspect-ratio: auto;
    margin: 0;
  }

  .rb-el-page--open-web-trusses .rb-el-special--profiles .rb-el-special-inner {
    padding-block: 87px !important;
  }

  .rb-el-page--red-i-joist .rb-el-special--intro .rb-el-special-image--diagramimage {
    position: absolute !important;
    top: 100px;
    right: 120px;
    width: 500px;
    height: 390px;
  }

  .rb-el-page--red-i-joist .rb-el-special--intro .rb-el-special-grid--materials,
  .rb-el-page--red-i-joist .rb-el-special--intro .rb-el-special-inner > :not(.rb-el-special-image--diagramimage, .rb-el-special-image--watermark) {
    width: 500px;
    max-width: 500px;
  }

  .rb-el-page--red-i-joist .rb-el-special--intro .rb-el-special-inner {
    display: block !important;
  }

  .rb-el-page--red-i-joist .rb-el-special--intro .rb-el-special-inner > :not(.rb-el-special-image--diagramimage, .rb-el-special-image--watermark, .rb-el-special-grid--materials) {
    margin-bottom: 32px;
  }

  .rb-el-page--red-i-joist .rb-el-special--intro .rb-el-special-title--title .elementor-heading-title {
    font-size: 54px;
    line-height: 56px;
  }

  .rb-el-page--red-i-joist .rb-el-special--intro .rb-el-special-grid--materials {
    position: absolute !important;
    right: 120px;
    bottom: 100px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
  }

  .rb-el-page--red-i-joist .rb-el-special--features .rb-el-special-title,
  .rb-el-page--red-i-joist .rb-el-special--features .rb-el-special-copy {
    grid-column: 1;
  }

  .rb-el-page--red-i-joist .rb-el-special--features .rb-el-special-grid {
    grid-column: 2;
    grid-row: 1 / 3;
  }

  .rb-el-page--red-i-joist .rb-el-special--features .rb-el-special-grid {
    gap: 16px;
  }

  .rb-el-page--red-i-joist .rb-el-special--features .rb-el-special-card {
    padding: 12px !important;
  }

  .rb-el-page--red-i-joist .rb-el-special--features .rb-el-special-inner {
    padding-block: 60px !important;
  }

  .rb-el-page--glulam-beam .rb-el-special--why .rb-el-special-title,
  .rb-el-page--glulam-beam .rb-el-special--why .rb-el-special-copy,
  .rb-el-page--lvl .rb-el-special--whyspecify .rb-el-special-inner > :not(.rb-el-special-grid) {
    grid-column: 1;
  }

  .rb-el-page--glulam-beam .rb-el-special--why .rb-el-special-grid,
  .rb-el-page--lvl .rb-el-special--whyspecify .rb-el-special-grid {
    grid-column: 2;
    grid-row: 1 / 4;
  }

  .rb-el-page--glulam-beam .rb-el-special--why .rb-el-special-grid {
    gap: 16px;
  }

  .rb-el-page--glulam-beam .rb-el-special--why .rb-el-special-inner {
    padding-block: 78px !important;
  }

  .rb-el-page--glulam-beam .rb-el-special--why .rb-el-special-card {
    padding-block: 20px !important;
  }

  .rb-el-page--lvl .rb-el-special--intro .rb-el-special-inner {
    padding-block: 57px !important;
  }

  .rb-el-page--lvl .rb-el-special--whatis .rb-el-special-image--image {
    grid-column: 1;
    grid-row: 1 / 3;
  }

  .rb-el-page--lvl .rb-el-special--whatis :is(.rb-el-special-title, .rb-el-special-copy) {
    grid-column: 2;
  }

  .rb-el-page--lvl .rb-el-special--whyspecify .rb-el-special-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .rb-el-page--lvl .rb-el-special--whyspecify .rb-el-special-card {
    padding: 8px !important;
  }

  .rb-el-page--lvl .rb-el-special--whyspecify .rb-el-special-inner {
    padding-block: 16.5px !important;
  }

  :is(
    .rb-el-page--about .rb-el-special--video,
    .rb-el-page--careers .rb-el-special--why
  ) .rb-el-special-image--image {
    grid-column: 1;
    grid-row: 1 / 4;
  }

  :is(
    .rb-el-page--about .rb-el-special--video,
    .rb-el-page--careers .rb-el-special--why
  ) .rb-el-special-inner > :not(.rb-el-special-image--image) {
    grid-column: 2;
  }

  .rb-el-page--about .rb-el-special--team .rb-el-special-title,
  .rb-el-page--about .rb-el-special--team .rb-el-list--filters {
    grid-column: 1;
  }

  .rb-el-page--about .rb-el-special--team .rb-el-special-grid--members {
    grid-column: 2;
    grid-row: 1 / 3;
  }

  .rb-el-page--about .rb-el-special--articles .rb-el-special-inner {
    padding-block: 67px !important;
  }

  .rb-el-page--sustainability .rb-el-special--certifications .rb-el-special-inner {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }

  .rb-el-page--sustainability .rb-el-special--certifications .rb-el-special-grid--links {
    grid-column: 2;
    grid-row: 1 / 6;
  }

  .rb-el-page--sustainability .rb-el-special--certifications .rb-el-special-inner > :not(.rb-el-special-grid--links) {
    grid-column: 1;
  }

  .rb-el-page--build-with-us .rb-el-special--build-intro > .rb-el-special-inner {
    padding-block: 70px !important;
  }

  .rb-el-page--build-with-us .rb-el-special--people .rb-el-special-inner {
    padding-block: 0 !important;
  }

  .rb-el-page--build-with-us .rb-el-special--people .rb-el-special-card {
    padding-block: 14px !important;
  }

  .rb-el-page--build-with-us .rb-el-special--benefits .rb-el-special-inner {
    padding-block: 53px !important;
  }
}

@media (max-width: 1023px) {
  .rb-el-feature-grid,
  .rb-el-hub-grid,
  .rb-el-special-grid,
  .rb-el-special-gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .rb-el-building-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767px) {
  .rb-el-hero,
  .rb-el-hero--product,
  .rb-el-hero--special {
    min-height: 480px !important;
  }

  .rb-el-hero--home {
    min-height: 700px !important;
  }

  :is(
    .rb-el-page--hybrid-mass-timber,
    .rb-el-page--concrete-forming,
    .rb-el-page--wall-panels,
    .rb-el-page--open-web-trusses,
    .rb-el-page--red-i-joist,
    .rb-el-page--glulam-beam,
    .rb-el-page--lvl
  ) > .rb-el-hero {
    min-height: 700px !important;
  }

  .rb-el-page--contact > .rb-el-hero {
    min-height: 420px !important;
  }

  .rb-el-hero--hub,
  .rb-el-hero--article {
    min-height: 420px !important;
  }

  .rb-el-hero--legal {
    min-height: 360px !important;
  }

  .rb-el-hero-content {
    padding: 48px 24px 24px !important;
  }

  .rb-el-hero--home .rb-el-hero-content {
    padding: 80px 20px !important;
  }

  .rb-el-hero--home .rb-el-hero-title {
    width: 100% !important;
    max-width: 400px !important;
  }

  .rb-el-hero-title .elementor-heading-title {
    font-size: 36px;
    line-height: 1.05;
  }

  :is(
    .rb-el-page--hybrid-mass-timber,
    .rb-el-page--concrete-forming,
    .rb-el-page--wall-panels,
    .rb-el-page--open-web-trusses,
    .rb-el-page--red-i-joist,
    .rb-el-page--glulam-beam,
    .rb-el-page--lvl
  ) .rb-el-hero-title .elementor-heading-title {
    font-size: 40px;
  }

  .rb-el-hero--home .rb-el-hero-title .elementor-heading-title {
    font-size: 40px;
    line-height: 1;
  }

  .rb-el-hero-subtitle {
    font-size: 18px;
    line-height: 24px;
  }

  .rb-el-hero-cta {
    right: 24px;
    bottom: 40px;
  }

  .rb-el-hero-credit {
    right: 24px;
    bottom: 24px;
    font-size: 14px;
  }

  .rb-el-intro > .rb-el-shell,
  .rb-el-features > .rb-el-shell,
  .rb-el-hub-cards > .rb-el-shell,
  .rb-el-article > .rb-el-shell,
  .rb-el-special-inner {
    gap: 32px;
    padding: 64px 24px !important;
  }

  .rb-el-features > .rb-el-shell {
    gap: 0 !important;
  }

  .rb-el-intro--hub > .rb-el-shell {
    padding-block: 64px !important;
  }

  .rb-el-intro-title .elementor-heading-title,
  .rb-el-section-title .elementor-heading-title {
    font-size: 32px;
  }

  .rb-el-intro-title .elementor-heading-title {
    line-height: 1.15;
  }

  .rb-el-section-title .elementor-heading-title {
    line-height: 48px;
  }

  .rb-el-intro-body {
    font-size: 18px;
    line-height: 28px;
  }

  .rb-el-hub-intro,
  .rb-el-article-intro {
    font-size: 20px;
    line-height: 32px;
  }

  .rb-el-feature-grid,
  .rb-el-hub-grid,
  .rb-el-special-grid,
  .rb-el-special-gallery,
  .rb-el-facts-grid,
  .rb-el-building-grid {
    grid-template-columns: 1fr;
  }

  .rb-el-facts-grid {
    gap: 48px !important;
    padding: 64px 24px !important;
  }

  .rb-el-section-title .elementor-heading-title {
    font-size: 32px;
  }

  .rb-el-feature-title .elementor-heading-title {
    font-size: 22px;
    line-height: 33px;
  }

  .rb-el-feature-body {
    font-size: 17px;
  }

  .rb-el-list .elementor-icon-list-text {
    font-size: 18px;
  }

  .rb-el-cta-inner {
    flex-direction: column !important;
    align-items: flex-start;
    gap: 32px !important;
    padding: 80px 24px !important;
  }

  .rb-el-cta--dark .rb-el-cta-inner {
    align-items: center;
    padding-block: 64px !important;
  }

  .rb-el-cta-title .elementor-heading-title {
    font-size: 36px;
  }

  .rb-el-cta-body {
    font-size: 18px;
  }

  .rb-el-hub-card-body {
    padding: 24px 24px 32px !important;
  }

  .rb-el-hub-card {
    min-height: 0;
  }

  .rb-el-hub-card-title .elementor-heading-title {
    font-size: 22px;
    line-height: 28px;
  }

  .rb-el-hub-card-description {
    font-size: 16px;
    line-height: 24px;
  }

  .rb-el-building-inner {
    gap: 64px !important;
    padding: 64px 24px !important;
  }

  .rb-el-centered-copy {
    gap: 32px !important;
    padding-inline: 0 !important;
  }

  .rb-el-building-title .elementor-heading-title,
  .rb-el-gallery-title .elementor-heading-title,
  .rb-el-special-title .elementor-heading-title,
  .rb-el-legal-title .elementor-heading-title {
    font-size: 36px;
    line-height: 1.1;
  }

  .rb-el-building-subtitle,
  .rb-el-gallery-subtitle {
    font-size: 20px;
    line-height: 28px;
  }

  .rb-el-building-grid {
    gap: 48px !important;
  }

  .rb-el-flip-card {
    min-height: 392px;
    aspect-ratio: auto;
  }

  .rb-el-flip-front {
    display: none !important;
  }

  .rb-el-flip-back {
    position: relative !important;
    min-height: 392px;
    background: #cb2026;
    transform: none;
  }

  .rb-el-flip-back .rb-el-media-cover,
  .rb-el-flip-back .rb-el-overlay {
    display: none !important;
  }

  .rb-el-flip-copy {
    padding: 32px !important;
  }

  .rb-el-flip-back-title .elementor-heading-title {
    color: #fff;
    font-size: 28px;
    font-weight: 900;
    line-height: 1.25;
  }

  .rb-el-flip-description {
    color: #fff;
    font-size: 20px;
    font-weight: 600;
    line-height: 24px;
  }

  .rb-el-flip-link .elementor-button {
    border-color: #fff;
    color: #fff;
    font-size: 22px;
  }

  .rb-el-gallery {
    padding-block: 56px !important;
  }

  .rb-el-gallery-inner {
    gap: 48px;
    padding-inline: 24px !important;
  }

  .rb-el-gallery-heading {
    gap: 24px !important;
    margin-bottom: 48px;
  }

  .rb-el-gallery-title .elementor-heading-title {
    font-size: 40px;
    line-height: 44px;
  }

  .rb-el-gallery-track {
    gap: 32px !important;
    scroll-snap-type: x mandatory;
  }

  .rb-el-gallery-card {
    width: min(373px, 78vw) !important;
    min-width: min(373px, 78vw);
    height: 360px;
    flex-basis: min(373px, 78vw);
    scroll-snap-align: center;
  }

  .rb-el-gallery-link .elementor-button {
    font-size: 22px;
  }

  .rb-el-cta--dark .rb-el-cta-title .elementor-heading-title {
    font-size: 36px !important;
    line-height: 39.6px !important;
  }

  .rb-el-cta--dark .rb-el-cta-body {
    font-size: 18px;
    line-height: 28px;
  }

  .rb-el-legal-back,
  .rb-el-legal-document > .rb-el-shell,
  .rb-el-form-section > .rb-el-shell {
    padding-inline: 24px !important;
  }

  .rb-el-legal-back-button .elementor-button {
    font-size: 18px;
    line-height: 27px;
  }

  .rb-el-legal-title .elementor-heading-title {
    font-size: 32px;
    line-height: 48px;
  }

  .rb-el-legal-document > .rb-el-shell {
    gap: 48px;
    padding-block: 64px !important;
  }

  .rb-el-legal-section + .rb-el-legal-section {
    margin-top: 48px;
  }

  .rb-el-legal-heading .elementor-heading-title {
    font-size: 22px;
  }

  .rb-el-legal-paragraph,
  .rb-el-legal-subparagraph,
  .rb-el-article-body,
  .rb-el-special-copy {
    font-size: 18px;
    line-height: 28px;
  }

  .rb-el-article-intro,
  .rb-el-article-body {
    width: 100% !important;
    max-width: 100% !important;
  }

  .rb-el-legal-subparagraph {
    padding-left: 24px;
  }

  .rb-el-bleed-image {
    min-height: 360px;
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special--intro {
    background: #101010;
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special--intro .rb-el-special-inner {
    gap: 48px;
    padding-block: 64px !important;
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special--intro .rb-el-special-image--watermark {
    left: -10%;
    top: 10%;
    width: 70%;
    height: auto;
    opacity: 0.4;
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special--intro .rb-el-special-copy--paragraphs {
    color: #fff;
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special--intro .rb-el-special-copy--paragraphs p:first-child {
    font-size: 22px;
    font-weight: 600;
    line-height: 32px;
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special-grid--stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special-grid--stats .rb-el-special-card {
    min-height: 140px;
    align-items: center;
    justify-content: center;
    gap: 12px;
    border-radius: 24px;
    background: #2a2a2a;
    color: #fff;
    text-align: center;
    box-shadow: none;
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special-grid--stats .rb-el-special-value .elementor-heading-title {
    color: #e2e729;
    font-size: 28px;
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special-grid--stats .rb-el-special-copy {
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    line-height: 24px;
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special--pictures .rb-el-special-inner,
  .rb-el-page--hybrid-mass-timber .rb-el-special--featureimage .rb-el-special-inner {
    gap: 0;
    padding: 0 !important;
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special--pictures .rb-el-special-grid {
    gap: 0;
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special--pictures .rb-el-special-card {
    position: relative;
    height: 292.5px;
    min-height: 292.5px;
    border-radius: 0;
    padding: 0 !important;
    box-shadow: none;
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special--pictures .rb-el-special-card-image,
  .rb-el-page--hybrid-mass-timber .rb-el-special--pictures .rb-el-special-card-image img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    margin: 0;
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special--pictures .rb-el-special-copy--credit {
    position: absolute;
    right: 16px;
    bottom: 16px;
    z-index: 1;
    width: auto !important;
    padding: 8px 16px;
    background: rgba(42, 42, 42, 0.45);
    color: #fff;
    font-size: 14px;
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special--featureimage {
    min-height: 360px;
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special--featureimage .rb-el-special-image,
  .rb-el-page--hybrid-mass-timber .rb-el-special--featureimage .rb-el-special-image img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 360px;
    max-height: none;
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special--featureimage .rb-el-special-copy--credit {
    position: absolute;
    right: 0;
    bottom: 24px;
    z-index: 1;
    width: auto !important;
    padding: 8px 16px;
    background: rgba(42, 42, 42, 0.45);
    color: #fff;
    font-size: 14px;
  }

  .rb-el-page--hybrid-mass-timber :is(.rb-el-special--performance, .rb-el-special--engineered) .rb-el-special-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .rb-el-page--hybrid-mass-timber :is(.rb-el-special--difference, .rb-el-special--producttypes, .rb-el-special--sustainabilitybenefits) {
    background: #101010;
  }

  .rb-el-page--hybrid-mass-timber :is(.rb-el-special--difference, .rb-el-special--producttypes, .rb-el-special--sustainabilitybenefits) :is(.rb-el-special-title .elementor-heading-title, .rb-el-special-copy) {
    color: #fff;
  }

  .rb-el-page--hybrid-mass-timber :is(.rb-el-special--comparison, .rb-el-special--performance)::after {
    position: absolute;
    inset: 0;
    z-index: 0;
    content: '';
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special--comparison::after {
    background: rgba(241, 71, 40, 0.7);
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special--performance::after {
    background: rgba(0, 0, 0, 0.7);
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special--performance :is(.rb-el-special-title .elementor-heading-title, .rb-el-special-copy) {
    color: #fff;
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special--performance .rb-el-special-card,
  .rb-el-page--hybrid-mass-timber .rb-el-special--engineered .rb-el-special-card {
    min-height: 0;
    border-radius: 0;
    background: transparent;
    padding: 0 !important;
    box-shadow: none;
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special--performance .rb-el-special-card {
    gap: 12px;
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special--engineered .rb-el-special-grid {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special--engineered .rb-el-special-inner {
    padding-block: 42px !important;
  }

  :is(
    .rb-el-special--applications,
    .rb-el-special--profiles,
    .rb-el-special--types,
    .rb-el-page--about .rb-el-special--team
  ) .rb-el-special-grid {
    display: flex !important;
    flex-flow: row nowrap !important;
    gap: 24px !important;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
  }

  :is(
    .rb-el-special--applications,
    .rb-el-special--profiles,
    .rb-el-special--types,
    .rb-el-page--about .rb-el-special--team
  ) .rb-el-special-card {
    width: 85vw !important;
    min-width: 85vw;
    flex: 0 0 85vw;
    scroll-snap-align: center;
  }

  .rb-el-special-image--diagramimage,
  .rb-el-special-image--diagramimage img {
    max-height: 320px;
    object-fit: contain;
  }

  .rb-el-special--intro .rb-el-special-title--headline .elementor-heading-title {
    font-size: 22px;
    line-height: 32px;
  }

  .rb-el-page--about .rb-el-special--team .rb-el-special-card {
    min-height: 620px;
  }

  .rb-el-page--contact .rb-el-special--ctacards .rb-el-special-grid {
    gap: 32px;
  }

  .rb-el-page--contact .rb-el-special--ctacards .rb-el-special-card {
    position: relative;
    height: 320px;
    min-height: 320px;
    justify-content: flex-end;
  }

  .rb-el-page--contact .rb-el-special--ctacards .rb-el-special-card-image {
    position: absolute;
    inset: 0;
    height: 100%;
    margin: 0;
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special--engineered .rb-el-special-card {
    gap: 12px;
    padding-bottom: 24px !important;
    border-bottom: 1.5px solid #cb2026;
  }

  .rb-el-page--hybrid-mass-timber .rb-el-special--engineered .rb-el-special-card:last-child {
    padding-bottom: 0 !important;
    border-bottom: 0;
  }

  .rb-el-special-card--light-text :is(.elementor-heading-title, .rb-el-special-copy) {
    color: #fff !important;
  }

  .rb-el-page--hybrid-mass-timber :is(.rb-el-special--producttypes, .rb-el-special--applications) .rb-el-special-grid {
    display: flex !important;
    flex-flow: row nowrap !important;
    gap: 24px !important;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
  }

  .rb-el-page--hybrid-mass-timber :is(.rb-el-special--producttypes, .rb-el-special--applications) .rb-el-special-card {
    width: 85vw !important;
    min-width: 85vw;
    min-height: 460px;
    flex: 0 0 85vw;
    scroll-snap-align: center;
  }

  .rb-el-page--hybrid-mass-timber > :nth-child(2) { min-height: 851px; }
  .rb-el-page--hybrid-mass-timber > :nth-child(3) { min-height: 877.5px; }
  .rb-el-page--hybrid-mass-timber > :nth-child(4) { min-height: 802.1875px; }
  .rb-el-page--hybrid-mass-timber > :nth-child(5) { min-height: 360px; }
  .rb-el-page--hybrid-mass-timber > :nth-child(6) { min-height: 1375.5px; }
  .rb-el-page--hybrid-mass-timber > :nth-child(7) { min-height: 2094px; }
  .rb-el-page--hybrid-mass-timber > :nth-child(8) { min-height: 2124px; }
  .rb-el-page--hybrid-mass-timber > :nth-child(9) { min-height: 783.1875px; }
  .rb-el-page--hybrid-mass-timber > :nth-child(10) { min-height: 793.1875px; }
  .rb-el-page--hybrid-mass-timber > :nth-child(11) { min-height: 1087.1875px; }
  .rb-el-page--hybrid-mass-timber > :nth-child(12) { min-height: 1197.28125px; }
  .rb-el-page--hybrid-mass-timber > :nth-child(13) { min-height: 360px; }
  .rb-el-page--hybrid-mass-timber > :nth-child(14) { min-height: 431.1875px; }
  .rb-el-page--hybrid-mass-timber > :nth-child(15) { min-height: 865.1875px; }
  .rb-el-page--hybrid-mass-timber > :nth-child(16) { min-height: 959.09375px; }
  .rb-el-page--hybrid-mass-timber > :nth-child(17) { min-height: 1403.1875px; }
  .rb-el-page--hybrid-mass-timber > :nth-child(18) { min-height: 1188.09375px; }
  .rb-el-page--hybrid-mass-timber > :nth-child(19) { min-height: 463.1875px; }

  .rb-el-page--concrete-forming > :nth-child(2) { min-height: 864px; }
  .rb-el-page--concrete-forming > :nth-child(3) { min-height: 831.1875px; }
  .rb-el-page--concrete-forming > :nth-child(4) { min-height: 360px; }
  .rb-el-page--concrete-forming > :nth-child(5) { min-height: 1469.984375px; }
  .rb-el-page--concrete-forming > :nth-child(6) { min-height: 1204.28125px; }
  .rb-el-page--concrete-forming > :nth-child(7) { min-height: 1847.59375px; }
  .rb-el-page--concrete-forming > :nth-child(8) { min-height: 1284.78125px; }
  .rb-el-page--concrete-forming > :nth-child(9) { min-height: 360px; }
  .rb-el-page--concrete-forming > :nth-child(10) { min-height: 2233.59375px; }
  .rb-el-page--concrete-forming > :nth-child(11) { min-height: 977.1875px; }
  .rb-el-page--concrete-forming > :nth-child(12) { min-height: 1335.09375px; }
  .rb-el-page--concrete-forming > :nth-child(13) { min-height: 1568.1875px; }
  .rb-el-page--concrete-forming > :nth-child(14) { min-height: 431.1875px; }
  .rb-el-page--concrete-forming > :nth-child(15) { min-height: 423.59375px; }

  .rb-el-page--wall-panels > :nth-child(2) { min-height: 1921px; }
  .rb-el-page--wall-panels > :nth-child(3) { min-height: 511.1875px; }
  .rb-el-page--wall-panels > :nth-child(4) { min-height: 360px; }
  .rb-el-page--wall-panels > :nth-child(5) { min-height: 1489.984375px; }
  .rb-el-page--wall-panels > :nth-child(6) { min-height: 2263.59375px; }
  .rb-el-page--wall-panels > :nth-child(7) { min-height: 975.28125px; }
  .rb-el-page--wall-panels > :nth-child(8) { min-height: 1555.59375px; }
  .rb-el-page--wall-panels > :nth-child(9) { min-height: 829.78125px; }
  .rb-el-page--wall-panels > :nth-child(10) { min-height: 904.78125px; }
  .rb-el-page--wall-panels > :nth-child(11) { min-height: 981.1875px; }
  .rb-el-page--wall-panels > :nth-child(12) { min-height: 360px; }
  .rb-el-page--wall-panels > :nth-child(13) { min-height: 1242.453125px; }
  .rb-el-page--wall-panels > :nth-child(14) { min-height: 929.1875px; }
  .rb-el-page--wall-panels > :nth-child(15) { min-height: 1319.96875px; }
  .rb-el-page--wall-panels > :nth-child(16) { min-height: 463.1875px; }

  .rb-el-page--open-web-trusses > :nth-child(2) { min-height: 774px; }
  .rb-el-page--open-web-trusses > :nth-child(3) { min-height: 1154.1875px; }
  .rb-el-page--open-web-trusses > :nth-child(4) { min-height: 2177.1875px; }
  .rb-el-page--open-web-trusses > :nth-child(5) { min-height: 1411.1875px; }
  .rb-el-page--open-web-trusses > :nth-child(6) { min-height: 857.1875px; }
  .rb-el-page--open-web-trusses > :nth-child(7) { min-height: 1566.4375px; }
  .rb-el-page--open-web-trusses > :nth-child(8) { min-height: 1326.1875px; }
  .rb-el-page--open-web-trusses > :nth-child(9) { min-height: 1143.59375px; }
  .rb-el-page--open-web-trusses > :nth-child(10) { min-height: 1925.9375px; }
  .rb-el-page--open-web-trusses > :nth-child(11) { min-height: 957.1875px; }
  .rb-el-page--open-web-trusses > :nth-child(12) { min-height: 1045.546875px; }
  .rb-el-page--open-web-trusses > :nth-child(13) { min-height: 502.78125px; }

  .rb-el-page--red-i-joist > :nth-child(2) { min-height: 1306.5px; }
  .rb-el-page--red-i-joist > :nth-child(3) { min-height: 1705.1875px; }
  .rb-el-page--red-i-joist > :nth-child(4) { min-height: 1058.8125px; }
  .rb-el-page--red-i-joist > :nth-child(5) { min-height: 2179.78125px; }
  .rb-el-page--red-i-joist > :nth-child(6) { min-height: 817.1875px; }
  .rb-el-page--red-i-joist > :nth-child(7) { min-height: 1040.09375px; }
  .rb-el-page--red-i-joist > :nth-child(8) { min-height: 958.09375px; }
  .rb-el-page--red-i-joist > :nth-child(9) { min-height: 1580px; }
  .rb-el-page--red-i-joist > :nth-child(10) { min-height: 929.1875px; }
  .rb-el-page--red-i-joist > :nth-child(11) { min-height: 1004.09375px; }
  .rb-el-page--red-i-joist > :nth-child(12) { min-height: 463.1875px; }

  .rb-el-page--glulam-beam > :nth-child(2) { min-height: 1088.375px; }
  .rb-el-page--glulam-beam > :nth-child(3) { min-height: 2285.6875px; }
  .rb-el-page--glulam-beam > :nth-child(4) { min-height: 1540.1875px; }
  .rb-el-page--glulam-beam > :nth-child(5) { min-height: 1235.1875px; }
  .rb-el-page--glulam-beam > :nth-child(6) { min-height: 2441.1875px; }
  .rb-el-page--glulam-beam > :nth-child(7) { min-height: 1005.09375px; }
  .rb-el-page--glulam-beam > :nth-child(8) { min-height: 941.78125px; }
  .rb-el-page--glulam-beam > :nth-child(9) { min-height: 1386.6875px; }
  .rb-el-page--glulam-beam > :nth-child(10) { min-height: 901.1875px; }
  .rb-el-page--glulam-beam > :nth-child(11) { min-height: 1254.78125px; }
  .rb-el-page--glulam-beam > :nth-child(12) { min-height: 502.78125px; }

  .rb-el-page--lvl > .rb-el-special--intro { min-height: 700px; }
  .rb-el-page--lvl > .rb-el-special--whatis { min-height: 1204.09375px; }
  .rb-el-page--lvl > .rb-el-special--difference { min-height: 1350.984375px; }
  .rb-el-page--lvl > .rb-el-special--whyspecify { min-height: 1367.59375px; }
  .rb-el-page--lvl > .rb-el-special--comparison { min-height: 2495.1875px; }
  .rb-el-page--lvl > .rb-el-special--benefits { min-height: 1006.1875px; }
  .rb-el-page--lvl > .rb-el-special--process { min-height: 1725.6875px; }
  .rb-el-page--lvl > .rb-el-special--installation { min-height: 1824.59375px; }
  .rb-el-page--lvl > .rb-el-special--applications { min-height: 929.1875px; }
  .rb-el-page--lvl > .rb-el-special--sustainability { min-height: 1020.78125px; }
  .rb-el-page--lvl > .rb-el-cta { min-height: 463.1875px; }

  .rb-el-page--about > :nth-child(2) { min-height: 897px; }
  .rb-el-page--about > :nth-child(3) { min-height: 749.96875px; }
  .rb-el-page--about > :nth-child(4) { min-height: 820.140625px; }
  .rb-el-page--about > :nth-child(5) { min-height: 3846px; }
  .rb-el-page--about > :nth-child(6) { min-height: 1178px; }
  .rb-el-page--about > :nth-child(7) { min-height: 754px; }
  .rb-el-page--about > :nth-child(8) { min-height: 1601.25px; }
  .rb-el-page--about > :nth-child(9) { min-height: 455.1875px; }

  .rb-el-page--careers > :nth-child(2) { min-height: 670.78125px; }
  .rb-el-page--careers > :nth-child(3) { min-height: 679.59375px; }
  .rb-el-page--careers > :nth-child(4) { min-height: 464px; }
  .rb-el-page--careers > :nth-child(5) { min-height: 626px; }

  .rb-el-page--sustainability > :nth-child(2) { min-height: 655.1875px; }
  .rb-el-page--sustainability > :nth-child(3) { min-height: 602.6875px; }
  .rb-el-page--sustainability > :nth-child(4) { min-height: 1047.1875px; }
  .rb-el-page--sustainability > :nth-child(5) { min-height: 420px; }
  .rb-el-page--sustainability > :nth-child(6) { min-height: 1186.28125px; }
  .rb-el-page--sustainability > :nth-child(7) { min-height: 919.671875px; }
  .rb-el-page--sustainability > :nth-child(8) { min-height: 1008.6875px; }
  .rb-el-page--sustainability > :nth-child(9) { min-height: 420px; }
  .rb-el-page--sustainability > :nth-child(10) { min-height: 691.78125px; }
  .rb-el-page--sustainability > :nth-child(11) { min-height: 891.28125px; }
  .rb-el-page--sustainability > :nth-child(12) { min-height: 474.78125px; }

  .rb-el-page--contact > :nth-child(2) { min-height: 1414.390625px; }
  .rb-el-page--contact > :nth-child(3) { min-height: 800px; }

  .rb-el-page--build-with-us > :nth-child(2) { min-height: 520px; }
  .rb-el-page--build-with-us > :nth-child(3) { min-height: 5370.5px; }
  .rb-el-page--build-with-us > :nth-child(4) { min-height: 599.1875px; }
  .rb-el-page--build-with-us > :nth-child(5) { min-height: 391.1875px; }

  .rb-el-page--continuing-education > :nth-child(2) { min-height: 715.1875px; }
  .rb-el-page--continuing-education > :nth-child(3) { min-height: 788.59375px; }
  .rb-el-page--continuing-education > :nth-child(4) { min-height: 5346.59375px; }
  .rb-el-page--continuing-education > :nth-child(5) { min-height: 959.1875px; }

  .rb-el-page--case-studies > :nth-child(2) { min-height: 2033px; }
  .rb-el-page--case-studies > :nth-child(3) { min-height: 378.390625px; }

  :is(
    .rb-el-page--concrete-forming .rb-el-special--benefits,
    .rb-el-page--concrete-forming .rb-el-special--lvl,
    .rb-el-page--sustainability .rb-el-special--efficiency
  ) .rb-el-special-grid {
    gap: 0;
  }

  :is(
    .rb-el-page--concrete-forming .rb-el-special--benefits,
    .rb-el-page--concrete-forming .rb-el-special--lvl,
    .rb-el-page--sustainability .rb-el-special--efficiency
  ) .rb-el-special-card {
    padding-block: 3px !important;
  }

  :is(.rb-el-page--red-i-joist, .rb-el-page--glulam-beam) .rb-el-special--intro .rb-el-special-image--diagramimage {
    display: none !important;
  }

  .rb-el-page--lvl .rb-el-special--intro .rb-el-special-inner {
    padding-block: 35px !important;
  }

  .rb-el-page--wall-panels .rb-el-special--intro .rb-el-special-inner {
    padding-block: 28px !important;
  }

  .rb-el-page--wall-panels .rb-el-special--featurebleed .rb-el-special-inner {
    padding-block: 52px !important;
  }

  .rb-el-page--wall-panels .rb-el-special--structural .rb-el-special-inner {
    padding-block: 24px !important;
  }

  .rb-el-page--open-web-trusses .rb-el-special--benefits .rb-el-special-inner {
    padding-block: 11px !important;
  }

  .rb-el-page--red-i-joist .rb-el-special--fireperformance .rb-el-special-inner {
    padding-block: 61px !important;
  }

  .rb-el-page--glulam-beam .rb-el-special--layups .rb-el-special-inner,
  .rb-el-page--lvl .rb-el-special--benefits .rb-el-special-inner {
    padding-block: 58px !important;
  }

  .rb-el-page--sustainability .rb-el-special--efficiency .rb-el-special-inner {
    padding-block: 42px !important;
  }

  :is(
    .rb-el-page--wall-panels .rb-el-special--benefits,
    .rb-el-page--wall-panels .rb-el-special--brands,
    .rb-el-page--open-web-trusses .rb-el-special--exposed,
    .rb-el-page--red-i-joist .rb-el-special--specs,
    .rb-el-page--sustainability .rb-el-special--certifications
  ) .rb-el-special-grid {
    gap: 16px;
  }

  :is(
    .rb-el-page--wall-panels .rb-el-special--benefits,
    .rb-el-page--wall-panels .rb-el-special--brands,
    .rb-el-page--open-web-trusses .rb-el-special--exposed,
    .rb-el-page--red-i-joist .rb-el-special--specs,
    .rb-el-page--sustainability .rb-el-special--certifications
  ) .rb-el-special-card {
    padding: 16px !important;
  }

  .rb-el-page--wall-panels .rb-el-special--brands :is(.rb-el-special-grid--highlights, .rb-el-special-grid--logos) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .rb-el-page--red-i-joist .rb-el-special--specs .rb-el-special-grid--rows,
  .rb-el-page--open-web-trusses .rb-el-special--exposed .rb-el-special-grid--cards {
    gap: 0;
  }

  .rb-el-page--red-i-joist .rb-el-special--specs .rb-el-special-card,
  .rb-el-page--open-web-trusses .rb-el-special--exposed .rb-el-special-card {
    border-radius: 0;
    border-bottom: 1px solid #cb2026;
    background: transparent;
    padding: 12px 0 !important;
    box-shadow: none;
  }

  .rb-el-page--build-with-us .rb-el-special--build-intro > .rb-el-special-inner {
    padding-block: 8px !important;
  }

  .rb-el-page--case-studies .rb-el-special--cases > .rb-el-special-inner {
    padding-block: 0 !important;
  }

  .rb-el-page--case-studies .rb-el-special--cases .rb-el-special-grid {
    gap: 0;
  }

  .rb-el-page--case-studies .rb-el-special--cases .rb-el-special-card {
    padding-block: 3px !important;
  }

  .rb-el-page--case-studies > .rb-el-cta .rb-el-cta-inner {
    padding-block: 59.5px !important;
  }

  .rb-el-page--wall-panels .rb-el-special--benefits .rb-el-special-grid,
  .rb-el-page--sustainability .rb-el-special--certifications .rb-el-special-grid {
    gap: 0;
  }

  .rb-el-page--wall-panels .rb-el-special--benefits .rb-el-special-card,
  .rb-el-page--sustainability .rb-el-special--certifications .rb-el-special-card {
    padding: 4px !important;
  }

  .rb-el-page--wall-panels .rb-el-special--brands .rb-el-special-card {
    padding: 8px !important;
  }

  .rb-el-page--open-web-trusses .rb-el-special--exposed .rb-el-special-card {
    padding-block: 4px !important;
  }

  .rb-el-page--red-i-joist .rb-el-special--specs .rb-el-special-card {
    padding-block: 0 !important;
  }

  .rb-el-page--red-i-joist .rb-el-special--specs .rb-el-special-inner {
    padding-block: 40px !important;
  }

  .rb-el-page--glulam-beam .rb-el-special--benefits .rb-el-special-card {
    padding-block: 12px !important;
  }
}

@media (max-width: 379px) {
  .rb-el-page--lvl > .rb-el-special--whatis { min-height: 1288.4375px; }
  .rb-el-page--lvl > .rb-el-special--difference { min-height: 1331.59375px; }
  .rb-el-page--lvl > .rb-el-special--whyspecify { min-height: 1431.1875px; }
  .rb-el-page--lvl > .rb-el-special--comparison { min-height: 2522.1875px; }
  .rb-el-page--lvl > .rb-el-special--benefits { min-height: 1033.1875px; }
  .rb-el-page--lvl > .rb-el-special--process { min-height: 1741.4375px; }
  .rb-el-page--lvl > .rb-el-special--installation { min-height: 1824.59375px; }
  .rb-el-page--lvl > .rb-el-special--applications { min-height: 957.1875px; }

  .rb-el-page--lvl .rb-el-special--benefits .rb-el-special-inner {
    padding-block: 57.5625px !important;
  }
}

/* --------------------------------------------------------------------------
   About — approved Figma composition

   These hooks belong to the dedicated native Elementor tree in
   redbuilt_el_about_document().  They intentionally target named containers,
   never generated DOM positions, so editors can reorder and edit the page
   without turning the Navigator into an opaque code block.
   -------------------------------------------------------------------------- */

.rb-el-page--about .rb-about-eyebrow {
  color: #cb2026;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 2px;
  line-height: 1;
  text-transform: uppercase;
}

.rb-el-page--about .rb-about-title .elementor-heading-title {
  color: #fff;
  font-size: 60px;
  font-weight: 700;
  line-height: 60px;
}

.rb-el-page--about .rb-about-body,
.rb-el-page--about .rb-about-body p {
  color: #fff;
  font-size: 20px;
  line-height: 28px;
}

.rb-el-page--about .rb-about-list .elementor-icon-list-items {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.rb-el-page--about .rb-about-list .elementor-icon-list-item {
  margin: 0 !important;
  padding: 0 !important;
}

.rb-el-page--about .rb-about-list .elementor-icon-list-icon {
  width: 8px;
  margin-right: 16px;
}

.rb-el-page--about .rb-about-list .elementor-icon-list-icon i {
  width: 8px;
  height: 8px;
  color: currentColor;
  font-size: 8px;
}

.rb-el-page--about .rb-about-list .elementor-icon-list-text {
  padding: 0;
  color: inherit;
  font-size: 20px;
  font-weight: inherit;
  line-height: 1.25;
}

.rb-el-page--about .rb-about-list--red { color: #cb2026; }
.rb-el-page--about .rb-about-list--red .elementor-icon-list-text { color: #fff; font-weight: 400; }
.rb-el-page--about .rb-about-list--white { color: #fff; }
.rb-el-page--about .rb-about-list--white .elementor-icon-list-text { color: #fff; font-weight: 600; }

.rb-el-page--about .rb-about-mission,
.rb-el-page--about .rb-about-video,
.rb-el-page--about .rb-about-history,
.rb-el-page--about .rb-about-team,
.rb-el-page--about .rb-about-culture,
.rb-el-page--about .rb-about-articles {
  overflow: hidden;
}

.rb-el-page--about .rb-about-mission-overlay {
  background: rgba(241, 71, 40, 0.7);
}

.rb-el-page--about .rb-about-video-image img,
.rb-el-page--about .rb-about-team-image img,
.rb-el-page--about .rb-about-culture-image img,
.rb-el-page--about .rb-about-article-image img,
.rb-el-page--about .rb-about-history-image img {
  display: block;
  width: 100%;
  height: 100% !important;
  object-fit: cover;
}

.rb-el-page--about .rb-about-article-tag .elementor-button {
  min-height: 20px !important;
  padding: 2px 10px !important;
  border-radius: 16px !important;
  background: #cb2026 !important;
  box-shadow: none;
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 16px !important;
}

@media (min-width: 768px) {
  .rb-site-header {
    height: 95px;
  }

  .rb-site-header > .rb-shell {
    height: 94px;
  }

  .rb-site-footer {
    height: 421.1853px;
    overflow: hidden;
  }

  .rb-site-footer > .rb-shell > :first-child {
    height: 201.1853px;
  }

  .rb-el-page--about > .rb-el-hero {
    min-height: 480px !important;
    height: 480px !important;
  }

  .rb-el-page--about > .rb-el-hero .rb-el-hero-content {
    padding: 60px 120px !important;
  }

  .rb-el-page--about > .rb-el-hero .rb-el-hero-title {
    width: 775px !important;
    max-width: 775px !important;
  }

  .rb-el-page--about > .rb-el-hero .rb-el-hero-cta {
    right: max(120px, calc((100vw - 1440px) / 2 + 120px));
    bottom: 60px;
  }

  .rb-el-page--about > .rb-about-integrity {
    min-height: 691px !important;
    height: 691px !important;
    background: #101010;
  }

  .rb-el-page--about .rb-about-integrity-inner {
    display: flex !important;
    flex-direction: column;
    gap: 32px !important;
    padding: 120px !important;
  }

  .rb-el-page--about .rb-about-integrity-columns {
    display: grid !important;
    grid-template-columns: 625px minmax(0, 1fr);
    gap: 100px !important;
  }

  .rb-el-page--about .rb-about-integrity-lead,
  .rb-el-page--about .rb-about-integrity-lead p {
    color: #fff;
    font-size: 26px;
    font-weight: 600;
    line-height: 36px;
  }

  .rb-el-page--about .rb-about-integrity-right {
    display: flex !important;
    flex-direction: column;
    gap: 12px !important;
  }

  .rb-el-page--about .rb-about-integrity-right > :first-child {
    margin-bottom: 20px;
  }

  .rb-el-page--about > .rb-about-mission {
    min-height: 534px !important;
    height: 534px !important;
  }

  .rb-el-page--about .rb-about-mission-inner {
    display: grid !important;
    grid-template-columns: 625px minmax(0, 1fr);
    gap: 100px !important;
    align-items: start;
    padding: 120px !important;
  }

  .rb-el-page--about .rb-about-mission-title .elementor-heading-title {
    color: #fff;
    font-size: 60px;
    font-weight: 700;
    line-height: 60px;
  }

  .rb-el-page--about .rb-about-mission-copy {
    display: flex !important;
    flex-direction: column;
    gap: 12px !important;
    color: #fff;
  }

  .rb-el-page--about .rb-about-mission-label,
  .rb-el-page--about .rb-about-mission-closing,
  .rb-el-page--about .rb-about-mission-label p,
  .rb-el-page--about .rb-about-mission-closing p {
    color: #fff;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.25;
  }

  .rb-el-page--about .rb-about-mission-closing { margin-top: 20px; }

  .rb-el-page--about > .rb-about-video {
    min-height: 678px !important;
    height: 678px !important;
    background: #f2f2f2;
  }

  .rb-el-page--about .rb-about-video-inner {
    position: relative;
    display: block !important;
    height: 438px;
    margin: 120px auto;
    padding: 0 120px !important;
  }

  .rb-el-page--about .rb-about-video-media {
    position: absolute;
    right: 120px;
    bottom: 0;
    display: block !important;
    width: 704px;
    height: 408px;
    overflow: hidden;
    border-radius: 16px;
  }

  .rb-el-page--about .rb-about-video-image,
  .rb-el-page--about .rb-about-video-image > .elementor-widget-container {
    width: 100%;
    height: 100%;
  }

  .rb-el-page--about .rb-about-video-play {
    position: absolute !important;
    top: 50%;
    left: 50%;
    z-index: 2;
    width: 82px !important;
    height: 82px;
    transform: translate(-50%, -50%);
  }

  .rb-el-page--about .rb-about-video-copy {
    position: absolute;
    top: 0;
    left: 120px;
    z-index: 3;
    display: flex !important;
    width: 619px;
    min-height: 426px;
    flex-direction: column;
    gap: 24px !important;
    padding: 32px !important;
    border-radius: 16px;
    background: #2a2a2a;
    color: #fff;
  }

  .rb-el-page--about .rb-about-video-title .elementor-heading-title {
    color: #fff;
    font-size: 60px;
    font-weight: 700;
    line-height: 60px;
  }

  .rb-el-page--about .rb-about-video-subtitle .elementor-heading-title {
    color: #fff;
    font-size: 26px;
    font-weight: 600;
    line-height: 30px;
  }

  .rb-el-page--about .rb-about-video-body,
  .rb-el-page--about .rb-about-video-body p {
    color: #fff;
    font-size: 20px;
    line-height: 28px;
  }

  .rb-el-page--about > .rb-about-history {
    min-height: 1039px !important;
    height: 1039px !important;
    background: #fff;
  }

  .rb-el-page--about .rb-about-history-inner {
    display: flex !important;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px !important;
    height: 100%;
    padding: 120px !important;
  }

  .rb-el-page--about .rb-about-history-title .elementor-heading-title,
  .rb-el-page--about .rb-about-team-title .elementor-heading-title {
    color: #cb2026;
    font-size: 60px;
    font-weight: 700;
    line-height: 60px;
  }

  .rb-el-page--about .rb-about-history-badge {
    width: auto !important;
    padding: 8px 16px !important;
    background: #cb2026;
  }

  .rb-el-page--about .rb-about-history-badge .elementor-heading-title {
    color: #fff;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 2px;
    line-height: 27px;
    text-transform: uppercase;
  }

  .rb-el-page--about .rb-about-history-track {
    position: relative;
    display: flex !important;
    width: max-content;
    min-width: 3762px;
    height: 552px;
    flex-flow: row nowrap;
    gap: 40px !important;
    margin-top: 44px;
  }

  .rb-el-page--about .rb-about-history-track::before {
    position: absolute;
    top: 283px;
    right: 0;
    left: 0;
    height: 2px;
    content: '';
    background: #2a2a2a;
  }

  .rb-el-page--about .rb-about-history-card {
    position: relative;
    display: block !important;
    width: 291px !important;
    height: 509px;
    flex: 0 0 291px;
  }

  .rb-el-page--about .rb-about-history-number {
    position: absolute !important;
    left: 0;
    z-index: 2;
    width: auto !important;
  }

  .rb-el-page--about .rb-about-history-number .elementor-heading-title {
    color: #101010;
    font-size: 34px;
    font-weight: 600;
    line-height: 36px;
  }

  .rb-el-page--about .rb-about-history-copy {
    position: absolute;
    left: 71px;
    display: flex !important;
    width: 220px;
    flex-direction: column;
    gap: 16px !important;
  }

  .rb-el-page--about .rb-about-history-card--upper .rb-about-history-number { top: 0; }
  .rb-el-page--about .rb-about-history-card--upper .rb-about-history-copy { top: 3px; }
  .rb-el-page--about .rb-about-history-card--lower .rb-about-history-number { bottom: 0; }
  .rb-el-page--about .rb-about-history-card--lower .rb-about-history-copy { bottom: 4px; }

  .rb-el-page--about .rb-about-history-item-title .elementor-heading-title,
  .rb-el-page--about .rb-about-history-year .elementor-heading-title {
    color: #cb2026;
    font-size: 24px;
    font-weight: 600;
    line-height: 28px;
  }

  .rb-el-page--about .rb-about-history-body,
  .rb-el-page--about .rb-about-history-body p {
    color: #101010;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.15;
  }

  .rb-el-page--about .rb-about-history-image {
    position: absolute !important;
    left: 116px;
    width: 130px !important;
    height: 130px;
    overflow: hidden;
    border-radius: 50%;
  }

  .rb-el-page--about .rb-about-history-card--upper .rb-about-history-image { bottom: 2px; }
  .rb-el-page--about .rb-about-history-card--lower .rb-about-history-image { top: 0; }

  .rb-el-page--about .rb-about-history-card::after {
    position: absolute;
    top: 273px;
    left: 41px;
    z-index: 3;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    content: '';
    background: #cb2026;
  }

  .rb-el-page--about .rb-about-history-scroll {
    width: 100%;
    height: 7px;
    margin-top: 24px;
    background: linear-gradient(90deg, #acacac 22%, #e8e8e8 22%);
  }

  .rb-el-page--about > .rb-about-team {
    min-height: 738px !important;
    height: 738px !important;
    background: #f2f2f2;
  }

  .rb-el-page--about .rb-about-team-inner {
    display: flex !important;
    flex-direction: column;
    gap: 32px !important;
    padding: 120px !important;
  }

  .rb-el-page--about .rb-about-team-title { align-self: center; width: auto !important; }

  .rb-el-page--about .rb-about-team-tabs {
    display: flex !important;
    flex-flow: row nowrap;
    align-items: center;
    align-self: center;
  }

  .rb-el-page--about .rb-about-team-tab .elementor-button {
    min-height: 40px !important;
    padding: 10px 16px !important;
    border: 0;
    border-bottom: 1px solid #acacac;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none;
    color: #101010 !important;
    font-size: 18px !important;
    font-weight: 400 !important;
    line-height: 20px !important;
  }

  .rb-el-page--about .rb-about-team-tab.is-active .elementor-button {
    border-bottom: 2px solid #cb2026;
    color: #cb2026 !important;
    font-weight: 700 !important;
  }

  .rb-el-page--about .rb-about-team-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px 32px !important;
  }

  .rb-el-page--about .rb-about-team-card {
    display: grid !important;
    min-height: 90px;
    grid-template-columns: 90px minmax(0, 1fr);
    overflow: hidden;
    border-radius: 16px;
    background: #fff;
  }

  .rb-el-page--about .rb-about-team-image,
  .rb-el-page--about .rb-about-team-image > .elementor-widget-container {
    width: 90px !important;
    height: 90px;
  }

  .rb-el-page--about .rb-about-team-copy {
    display: flex !important;
    flex-direction: column;
    justify-content: center;
    gap: 8px !important;
    padding: 8px 24px !important;
  }

  .rb-el-page--about .rb-about-team-name .elementor-heading-title {
    color: #cb2026;
    font-size: 20px;
    font-weight: 600;
    line-height: 1;
  }

  .rb-el-page--about .rb-about-team-role,
  .rb-el-page--about .rb-about-team-role p {
    color: #101010;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.05;
  }

  .rb-el-page--about > .rb-about-culture {
    min-height: 956.8528px !important;
    height: 956.8528px !important;
    background: #101010;
  }

  .rb-el-page--about .rb-about-culture-inner {
    display: flex !important;
    flex-direction: column;
    align-items: center;
    gap: 16px !important;
    padding: 120px !important;
  }

  .rb-el-page--about .rb-about-culture-title .elementor-heading-title {
    color: #fff;
    font-size: 60px;
    font-weight: 700;
    line-height: 60px;
    text-align: center;
  }

  .rb-el-page--about .rb-about-culture-body,
  .rb-el-page--about .rb-about-culture-body p {
    max-width: 835px;
    color: #fff;
    font-size: 20px;
    line-height: 28px;
    text-align: center;
  }

  .rb-el-page--about .rb-about-culture-track {
    display: flex !important;
    width: max-content;
    flex-flow: row nowrap;
    gap: 32px !important;
    align-self: flex-start;
    margin-top: 64px;
    margin-left: 42px;
  }

  .rb-el-page--about .rb-about-culture-image,
  .rb-el-page--about .rb-about-culture-image > .elementor-widget-container {
    width: 542px !important;
    height: 414.853px;
    flex: 0 0 542px;
    overflow: hidden;
    border-radius: 16px;
  }

  .rb-el-page--about .rb-about-culture-controls {
    display: flex !important;
    width: auto !important;
    flex-direction: row;
    gap: 24px !important;
    margin-top: 32px;
  }

  .rb-el-page--about .rb-about-culture-control .elementor-button {
    width: 42px;
    min-height: 42px !important;
    padding: 0 !important;
    border: 1px solid #fff;
    border-radius: 50% !important;
    background: transparent !important;
    box-shadow: none;
    color: #fff !important;
    font-size: 34px !important;
    font-weight: 400 !important;
    line-height: 36px !important;
  }

  .rb-el-page--about > .rb-about-articles {
    min-height: 850px !important;
    height: 850px !important;
    border-top: 1px solid #2a2a2a;
    background: #fff;
  }

  .rb-el-page--about .rb-about-articles-inner {
    display: flex !important;
    flex-direction: column;
    gap: 32px !important;
    padding: 120px !important;
  }

  .rb-el-page--about .rb-about-articles-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 60px !important;
  }

  .rb-el-page--about .rb-about-article-card {
    display: flex !important;
    min-width: 0;
    height: 519px;
    flex-direction: column;
    gap: 12px !important;
  }

  .rb-el-page--about .rb-about-article-image,
  .rb-el-page--about .rb-about-article-image > .elementor-widget-container {
    width: 100%;
    height: 240px;
    overflow: hidden;
    border: 1px solid #acacac;
    border-radius: 16px;
  }

  .rb-el-page--about .rb-about-article-meta,
  .rb-el-page--about .rb-about-article-meta p {
    color: #cb2026;
    font-size: 20px;
    font-weight: 500;
    line-height: 1;
  }

  .rb-el-page--about .rb-about-article-title .elementor-heading-title {
    min-height: 60px;
    color: #101010;
    font-size: 26px;
    font-weight: 600;
    line-height: 30px;
  }

  .rb-el-page--about .rb-about-article-excerpt,
  .rb-el-page--about .rb-about-article-excerpt p {
    color: #101010;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.05;
  }

  .rb-el-page--about .rb-about-article-tags {
    display: flex !important;
    width: auto !important;
    flex-direction: row;
    gap: 8px !important;
    margin-top: auto;
  }

  .rb-el-page--about .rb-about-article-share,
  .rb-el-page--about .rb-about-article-share p {
    color: #cb2026;
    font-size: 14px;
    font-weight: 500;
    line-height: 1;
  }

  .rb-el-page--about > .rb-el-cta {
    min-height: 400px !important;
    height: 400px !important;
  }

  .rb-el-page--about > .rb-el-cta .rb-el-cta-inner {
    display: flex !important;
    min-height: 400px;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    padding: 60px 120px !important;
  }

  .rb-el-page--about > .rb-el-cta .rb-el-cta-copy {
    width: 620px;
    max-width: 620px;
  }

  .rb-el-page--about > .rb-el-cta .rb-el-cta-title .elementor-heading-title {
    color: #fff;
    font-size: 60px;
    line-height: 60px;
  }

  .rb-el-page--about > .rb-el-cta .rb-el-cta-body,
  .rb-el-page--about > .rb-el-cta .rb-el-cta-body p {
    color: #fff;
    font-size: 24px;
    font-weight: 600;
    line-height: 28px;
  }
}

@media (max-width: 767px) {
  .rb-site-header {
    height: 80px;
  }

  .rb-site-header > .rb-shell {
    height: 79px;
  }

  .rb-site-footer {
    height: 886.1853px;
    overflow: hidden;
  }

  .rb-el-page--about > .rb-el-hero {
    min-height: 700px !important;
    height: 700px !important;
  }

  .rb-el-page--about > .rb-el-hero .rb-el-hero-content {
    justify-content: flex-start;
    padding: 80px 24px !important;
  }

  .rb-el-page--about > .rb-el-hero .rb-el-hero-title .elementor-heading-title {
    font-size: 48px;
    line-height: 48px;
  }

  .rb-el-page--about > .rb-el-hero .rb-el-hero-subtitle {
    font-size: 22px;
    line-height: 28px;
  }

  .rb-el-page--about > .rb-el-hero .rb-el-hero-cta {
    right: 24px;
    bottom: 80px;
  }

  .rb-el-page--about > .rb-about-integrity {
    min-height: 1199px !important;
    background: #101010;
  }

  .rb-el-page--about .rb-about-integrity-inner {
    display: flex !important;
    flex-direction: column;
    gap: 32px !important;
    padding: 80px 24px !important;
  }

  .rb-el-page--about .rb-about-title .elementor-heading-title,
  .rb-el-page--about .rb-about-mission-title .elementor-heading-title,
  .rb-el-page--about .rb-about-video-title .elementor-heading-title,
  .rb-el-page--about .rb-about-history-title .elementor-heading-title,
  .rb-el-page--about .rb-about-team-title .elementor-heading-title,
  .rb-el-page--about .rb-about-culture-title .elementor-heading-title {
    font-size: 48px;
    line-height: 48px;
  }

  .rb-el-page--about .rb-about-integrity-columns,
  .rb-el-page--about .rb-about-integrity-right {
    display: flex !important;
    flex-direction: column;
    gap: 32px !important;
  }

  .rb-el-page--about .rb-about-integrity-lead,
  .rb-el-page--about .rb-about-integrity-lead p {
    color: #fff;
    font-size: 24px;
    font-weight: 600;
    line-height: 34px;
  }

  .rb-el-page--about > .rb-about-mission {
    min-height: 1008px !important;
  }

  .rb-el-page--about .rb-about-mission-inner {
    display: flex !important;
    flex-direction: column;
    gap: 48px !important;
    padding: 80px 24px !important;
  }

  .rb-el-page--about .rb-about-mission-copy {
    display: flex !important;
    flex-direction: column;
    gap: 24px !important;
  }

  .rb-el-page--about .rb-about-mission-label,
  .rb-el-page--about .rb-about-mission-closing,
  .rb-el-page--about .rb-about-mission-label p,
  .rb-el-page--about .rb-about-mission-closing p {
    color: #fff;
    font-size: 20px;
    font-weight: 600;
    line-height: 28px;
  }

  .rb-el-page--about > .rb-about-video {
    min-height: 989.4px !important;
    background: #f2f2f2;
  }

  .rb-el-page--about .rb-about-video-inner {
    position: relative;
    display: flex !important;
    flex-direction: column-reverse;
    justify-content: center;
    padding: 80px 24px !important;
  }

  .rb-el-page--about .rb-about-video-media,
  .rb-el-page--about .rb-about-video-image,
  .rb-el-page--about .rb-about-video-image > .elementor-widget-container {
    width: 392px;
    max-width: 100%;
    height: 326px;
    overflow: hidden;
    border-radius: 16px;
  }

  .rb-el-page--about .rb-about-video-play {
    position: absolute !important;
    top: 50%;
    left: 50%;
    z-index: 2;
    width: 72px !important;
    height: 72px;
    transform: translate(-50%, -50%);
  }

  .rb-el-page--about .rb-about-video-copy {
    display: flex !important;
    flex-direction: column;
    gap: 20px !important;
    padding: 32px !important;
    border-radius: 16px 16px 0 0;
    background: #2a2a2a;
  }

  .rb-el-page--about .rb-about-video-subtitle .elementor-heading-title {
    color: #fff;
    font-size: 24px;
    line-height: 30px;
  }

  .rb-el-page--about .rb-about-video-body,
  .rb-el-page--about .rb-about-video-body p { color: #fff; font-size: 18px; line-height: 26px; }

  .rb-el-page--about > .rb-about-history {
    min-height: 3714px !important;
    background: #fff;
  }

  .rb-el-page--about .rb-about-history-inner {
    display: flex !important;
    flex-direction: column;
    gap: 16px !important;
    padding: 80px 24px !important;
  }

  .rb-el-page--about .rb-about-history-title .elementor-heading-title,
  .rb-el-page--about .rb-about-team-title .elementor-heading-title { color: #cb2026; }

  .rb-el-page--about .rb-about-history-badge {
    width: auto !important;
    padding: 8px 16px !important;
    background: #cb2026;
  }

  .rb-el-page--about .rb-about-history-badge .elementor-heading-title {
    color: #fff;
    font-size: 20px;
    letter-spacing: 2px;
    text-transform: uppercase;
  }

  .rb-el-page--about .rb-about-history-track {
    display: flex !important;
    flex-direction: column;
    gap: 24px !important;
    margin-top: 48px;
  }

  .rb-el-page--about .rb-about-history-card {
    position: relative;
    display: grid !important;
    min-height: 264px;
    grid-template-columns: 48px minmax(0, 1fr) 96px;
    gap: 16px !important;
    padding-bottom: 24px !important;
    border-bottom: 1px solid #acacac;
  }

  .rb-el-page--about .rb-about-history-number .elementor-heading-title {
    color: #101010;
    font-size: 30px;
    line-height: 34px;
  }

  .rb-el-page--about .rb-about-history-copy {
    display: flex !important;
    flex-direction: column;
    gap: 12px !important;
  }

  .rb-el-page--about .rb-about-history-item-title .elementor-heading-title,
  .rb-el-page--about .rb-about-history-year .elementor-heading-title {
    color: #cb2026;
    font-size: 22px;
    line-height: 26px;
  }

  .rb-el-page--about .rb-about-history-body,
  .rb-el-page--about .rb-about-history-body p { color: #101010; font-size: 16px; line-height: 20px; }

  .rb-el-page--about .rb-about-history-image,
  .rb-el-page--about .rb-about-history-image > .elementor-widget-container {
    width: 96px !important;
    height: 96px;
    overflow: hidden;
    border-radius: 50%;
  }

  .rb-el-page--about .rb-about-history-scroll { display: none !important; }

  .rb-el-page--about > .rb-about-team {
    min-height: 1304px !important;
    background: #f2f2f2;
  }

  .rb-el-page--about .rb-about-team-inner {
    display: flex !important;
    flex-direction: column;
    gap: 32px !important;
    padding: 80px 24px !important;
  }

  .rb-el-page--about .rb-about-team-tabs {
    display: flex !important;
    width: 100%;
    flex-flow: row nowrap;
    overflow-x: auto;
  }

  .rb-el-page--about .rb-about-team-tab { flex: 0 0 auto; }

  .rb-el-page--about .rb-about-team-tab .elementor-button {
    min-height: 40px !important;
    padding: 10px 16px !important;
    border: 0;
    border-bottom: 1px solid #acacac;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none;
    color: #101010 !important;
    font-size: 18px !important;
  }

  .rb-el-page--about .rb-about-team-tab.is-active .elementor-button { border-bottom: 2px solid #cb2026; color: #cb2026 !important; font-weight: 700 !important; }

  .rb-el-page--about .rb-about-team-grid {
    display: grid !important;
    grid-template-columns: 1fr;
    gap: 16px !important;
  }

  .rb-el-page--about .rb-about-team-card {
    display: grid !important;
    min-height: 90px;
    grid-template-columns: 90px minmax(0, 1fr);
    overflow: hidden;
    border-radius: 16px;
    background: #fff;
  }

  .rb-el-page--about .rb-about-team-image,
  .rb-el-page--about .rb-about-team-image > .elementor-widget-container { width: 90px !important; height: 90px; }

  .rb-el-page--about .rb-about-team-copy { display: flex !important; flex-direction: column; justify-content: center; gap: 8px !important; padding: 8px 20px !important; }
  .rb-el-page--about .rb-about-team-name .elementor-heading-title { color: #cb2026; font-size: 20px; line-height: 22px; }
  .rb-el-page--about .rb-about-team-role,
  .rb-el-page--about .rb-about-team-role p { color: #101010; font-size: 16px; line-height: 18px; }

  .rb-el-page--about > .rb-about-culture {
    min-height: 864px !important;
    background: #101010;
  }

  .rb-el-page--about .rb-about-culture-inner {
    display: flex !important;
    flex-direction: column;
    align-items: center;
    gap: 16px !important;
    padding: 80px 24px !important;
  }

  .rb-el-page--about .rb-about-culture-title .elementor-heading-title { color: #fff; text-align: center; }
  .rb-el-page--about .rb-about-culture-body,
  .rb-el-page--about .rb-about-culture-body p { color: #fff; font-size: 18px; line-height: 26px; text-align: center; }

  .rb-el-page--about .rb-about-culture-track {
    display: flex !important;
    width: max-content;
    flex-flow: row nowrap;
    gap: 24px !important;
    align-self: flex-start;
    margin-top: 48px;
  }

  .rb-el-page--about .rb-about-culture-image,
  .rb-el-page--about .rb-about-culture-image > .elementor-widget-container { width: 320px !important; height: 250px; flex: 0 0 320px; overflow: hidden; border-radius: 16px; }

  .rb-el-page--about .rb-about-culture-controls { display: flex !important; width: auto !important; flex-direction: row; gap: 24px !important; margin-top: 24px; }
  .rb-el-page--about .rb-about-culture-control .elementor-button { width: 42px; min-height: 42px !important; padding: 0 !important; border: 1px solid #fff; border-radius: 50% !important; background: transparent !important; box-shadow: none; color: #fff !important; font-size: 34px !important; line-height: 36px !important; }

  .rb-el-page--about > .rb-about-articles {
    min-height: 1949px !important;
    border-top: 1px solid #2a2a2a;
    background: #fff;
  }

  .rb-el-page--about .rb-about-articles-inner { display: flex !important; flex-direction: column; gap: 32px !important; padding: 80px 24px !important; }
  .rb-el-page--about .rb-about-articles-grid { display: flex !important; flex-direction: column; gap: 48px !important; }
  .rb-el-page--about .rb-about-article-card { display: flex !important; flex-direction: column; gap: 12px !important; }
  .rb-el-page--about .rb-about-article-image,
  .rb-el-page--about .rb-about-article-image > .elementor-widget-container { width: 100%; height: 240px; overflow: hidden; border: 1px solid #acacac; border-radius: 16px; }
  .rb-el-page--about .rb-about-article-meta,
  .rb-el-page--about .rb-about-article-meta p { color: #cb2026; font-size: 18px; line-height: 20px; }
  .rb-el-page--about .rb-about-article-title .elementor-heading-title { color: #101010; font-size: 26px; line-height: 30px; }
  .rb-el-page--about .rb-about-article-excerpt,
  .rb-el-page--about .rb-about-article-excerpt p { color: #101010; font-size: 16px; line-height: 20px; }
  .rb-el-page--about .rb-about-article-tags { display: flex !important; width: auto !important; flex-direction: row; gap: 8px !important; }
  .rb-el-page--about .rb-about-article-share,
  .rb-el-page--about .rb-about-article-share p { color: #cb2026; font-size: 14px; line-height: 16px; }

  .rb-el-page--about > .rb-el-cta {
    min-height: 552px !important;
    height: 552px !important;
  }

  .rb-el-page--about > .rb-el-cta .rb-el-cta-inner {
    display: flex !important;
    min-height: 552px;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 48px !important;
    padding: 80px 24px !important;
  }

  .rb-el-page--about > .rb-el-cta .rb-el-cta-title .elementor-heading-title { color: #fff; font-size: 48px; line-height: 48px; }
  .rb-el-page--about > .rb-el-cta .rb-el-cta-body,
  .rb-el-page--about > .rb-el-cta .rb-el-cta-body p { color: #fff; font-size: 20px; line-height: 28px; }
}
