/* One shared material for the two public homepages. Section surfaces stay
   transparent so no gradient, tint or grain restarts at a section edge. */
html:root:is([data-vz-infra-theme="pearl"],[data-vz-studio-theme="paper"]) body .main-wrapper {
  --continuity-paper:#f8f8f5;
  position:relative;
  isolation:isolate;
  background:
    linear-gradient(180deg,#f8f8f5 0px,#f8f8f5 800px,#f8f8f500 1800px),
    radial-gradient(ellipse 110% 2200px at 0% 28%,#e1e9edb3,#e1e9ed00 75%),
    radial-gradient(ellipse 110% 2400px at 100% 50%,#ede5dcb3,#ede5dc00 75%),
    radial-gradient(ellipse 100% 2000px at 0% 76%,#e4e9e6a6,#e4e9e600 75%),
    linear-gradient(0deg,#f8f8f5 0%,#f8f8f500 14%),
    #f8f8f5!important;
}
html:root:is([data-vz-infra-theme="pearl"],[data-vz-studio-theme="paper"]) body .main-wrapper::before {
  content:"";
  position:absolute;
  inset:700px 0 0;
  z-index:-1;
  pointer-events:none;
  background:url('/media/premium-grain.png') repeat;
  background-size:180px;
  opacity:.022;
  mask-image:linear-gradient(transparent,#000 260px,#000 calc(100% - 260px),transparent);
}
html:root:is([data-vz-infra-theme="pearl"],[data-vz-studio-theme="paper"]) body .main-wrapper > section:is(
  #integrations,#services,#metrics,#about,#process,#pricing,#testimonials,#contact,#journal,#faq,
  #clients,#selected-work,#studio-benefits,#section-about,#how-it-works,#section_pricing,#section_cta,
  .vz-integration-hero-wrap,.section_home1_about,.section_home1_process,.section_blog-list
) {
  background:transparent!important;
  border-block:0!important;
  box-shadow:none!important;
}
/* Nested full-width paints caused visible seams even with zero section borders. */
html:root:is([data-vz-infra-theme="pearl"],[data-vz-studio-theme="paper"]) body .main-wrapper :is(
  #integrations,#metrics>.vk-process,#process>.vk-process,#pricing>.vk-pricing,
  #contact>.vz-contact-globe,#testimonials>.vz-video-proof,#faq>.vk-faq,
  #journal>.bac-section,#services>.vz-ref-services,#section_pricing>.vk-pricing
) {
  background:transparent!important;
  border-block:0!important;
  box-shadow:none!important;
}
html:root[data-vz-infra-theme="pearl"] body .main-wrapper #metrics>.vk-process::before,
html:root[data-vz-infra-theme="pearl"] body .main-wrapper #metrics>.vk-process::after,
html:root[data-vz-infra-theme="pearl"] body .main-wrapper #services.vz-ai-services::before {
  content:none!important;
}
/* Retain the functional borders inside cards, accordions and form controls. */
html:root:is([data-vz-infra-theme="pearl"],[data-vz-studio-theme="paper"]) body .main-wrapper > :is(.divider,.line,hr) {
  display:none!important;
}
/* Carousel edge masks blend into the same canvas, rather than white rectangles. */
html:root[data-vz-infra-theme="pearl"] body .main-wrapper .vz-proof-carousel::before {
  background:linear-gradient(90deg,#f8f8f5,transparent)!important;
}
html:root[data-vz-infra-theme="pearl"] body .main-wrapper .vz-proof-carousel::after {
  background:linear-gradient(270deg,#f8f8f5,transparent)!important;
}
/* Studio mount roots contain an extra wrapper; keep their media intact. */
html:root[data-vz-studio-theme="paper"] body .main-wrapper #services .vz-ref-services,
html:root[data-vz-studio-theme="paper"] body .main-wrapper #section_cta .pfr0 {
  background:transparent!important;
  border-block:0!important;
  box-shadow:none!important;
  border-radius:0!important;
}
html:root[data-vz-studio-theme="paper"] body .main-wrapper #services.vz-studio-services {
  border-radius:0!important;
}
html:root[data-vz-studio-theme="paper"] body .main-wrapper #services.vz-studio-services::before {
  content:none!important;
}
