HeroPattern.vue 1.3 KB

123456789101112131415161718192021222324252627282930
  1. <template>
  2. <div class="absolute inset-0 -z-10 mx-0 max-w-none overflow-hidden">
  3. <div class="absolute left-1/2 top-0 ml-[-38rem] h-[25rem] w-[81.25rem] dark:[mask-image:linear-gradient(white,transparent)]">
  4. <div class="absolute inset-0 bg-gradient-to-r from-[#36b49f] to-[#DBFF75] opacity-40 [mask-image:radial-gradient(farthest-side_at_top,white,transparent)] dark:from-[#36b49f]/30 dark:to-[#DBFF75]/30 dark:opacity-100">
  5. <GridPattern
  6. :width="72"
  7. :height="56"
  8. :x="-12"
  9. :y="4"
  10. :squares="squares"
  11. class="absolute inset-x-0 inset-y-[-50%] h-[200%] w-full skew-y-[-18deg] fill-black/40 stroke-black/50 mix-blend-overlay dark:fill-white/2.5 dark:stroke-white/5"/>
  12. </div>
  13. <svg
  14. viewBox="0 0 1113 440"
  15. aria-hidden="true"
  16. class="absolute top-0 left-1/2 ml-[-19rem] w-[69.5625rem] fill-white blur-[26px] dark:hidden">
  17. <path d="M.016 439.5s-9.5-300 434-300S882.516 20 882.516 20V0h230.004v439.5H.016Z" />
  18. </svg>
  19. </div>
  20. </div>
  21. </template>
  22. <script setup>
  23. const squares = ref([
  24. [4, 3],
  25. [2, 1],
  26. [7, 3],
  27. [10, 6]
  28. ]);
  29. </script>