.elementor-widget-html.fbtl-replica-section,
.elementor-widget-html.fbtl-replica-section > .elementor-widget-container {
  width: 100% !important;
  max-width: 100% !important;
  display: block !important;
}

.fbtl-replica-page .reveal,
.fbtl-replica-page .fade-in {
  opacity: 1 !important;
  transform: none !important;
}

/* Site-wide replica stacking. Original page CSS still owns desktop layouts.
   These rules only fire on tablet/phone so Elementor vars and inline grids cannot keep a two-column desktop on a small screen. */

[class*="fbtl-orig-"],
[class*="fbtl-orig-"] .e-con,
[class*="fbtl-orig-"] .e-con-inner,
[class*="fbtl-orig-"] .elementor-widget,
[class*="fbtl-orig-"] .elementor-widget-container {
  min-width: 0;
  max-width: 100%;
}

[class*="fbtl-orig-"] img,
[class*="fbtl-orig-"] video,
[class*="fbtl-orig-"] canvas,
[class*="fbtl-orig-"] svg {
  max-width: 100%;
  height: auto;
}

@media (max-width: 900px) {
  [class*="fbtl-orig-"] .grid-2,
  [class*="fbtl-orig-"] .two-col,
  [class*="fbtl-orig-"] .split-grid,
  [class*="fbtl-orig-"] .story-grid,
  [class*="fbtl-orig-"] .movement-grid,
  [class*="fbtl-orig-"] .hero-inner,
  [class*="fbtl-orig-"] .hero-meta,
  [class*="fbtl-orig-"] .main-inner,
  [class*="fbtl-orig-"] .practice-split-grid,
  [class*="fbtl-orig-"] .video-box,
  [class*="fbtl-orig-"] .definition-block {
    grid-template-columns: 1fr !important;
  }

  [class*="fbtl-orig-"] .mosaic-a,
  [class*="fbtl-orig-"] .mosaic-b,
  [class*="fbtl-orig-"] .mosaic-c {
    grid-column: 1 !important;
    grid-row: auto !important;
    max-width: 100%;
  }
}

@media (max-width: 768px) {
  [class*="fbtl-orig-"] .grid-3,
  [class*="fbtl-orig-"] .box-talk-grid,
  [class*="fbtl-orig-"] .action-steps,
  [class*="fbtl-orig-"] .tool-row,
  [class*="fbtl-orig-"] .bottom-banner,
  [class*="fbtl-orig-"] .fact-strip-inner,
  [class*="fbtl-orig-"] .q-row {
    grid-template-columns: 1fr !important;
    flex-direction: column !important;
  }

  [class*="fbtl-orig-"] .bottom-banner,
  [class*="fbtl-orig-"] .bb-cta {
    width: 100%;
  }
}

@media (max-width: 640px) {
  [class*="fbtl-orig-"] .looks-like-grid,
  [class*="fbtl-orig-"] .build-grid,
  [class*="fbtl-orig-"] .cards-grid,
  [class*="fbtl-orig-"] .topics-grid,
  [class*="fbtl-orig-"] .sidebar-col,
  [class*="fbtl-orig-"] .hero-contact-cards,
  [class*="fbtl-orig-"] .sustain-grid,
  [class*="fbtl-orig-"] .qr-steps,
  [class*="fbtl-orig-"] .flow-nodes {
    grid-template-columns: 1fr !important;
  }

  [class*="fbtl-orig-"] section,
  [class*="fbtl-orig-"] .section,
  [class*="fbtl-orig-"] .hero {
    padding-left: 5%;
    padding-right: 5%;
  }
}
