HEX
Server: nginx/1.18.0
System: Linux test-ipsremont 5.4.0-214-generic #234-Ubuntu SMP Fri Mar 14 23:50:27 UTC 2025 x86_64
User: ips (1000)
PHP: 8.0.30
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/quadcode.com/src/components/blocks/trading-platform/HeroOld.svelte
<script lang="ts">
  import hero from '../../../assets/images/trading-platform/hero.webp';

  import Button from '../../button/Button.svelte';
  import { onMount } from 'svelte';
  import { loadEvent, popupForm } from '../../../store';
  import loadObserver from '$utils/loadObserver';
  import { t } from '$lib/translations';

  let width = 0;
  let height = 0;

  onMount(() => {

  });

  loadEvent.set(false);

  const onload = loadObserver(() => {
    loadEvent.set(true);
  });
</script>

<div class="block-hero">
  <div class="container">
    <div class="block-hero__wrapper">
      <h1 class="block-hero__title">{$t('trading-platform.White Label Trading Platform')}</h1>
      <p class="block-hero__subtitle">{$t('trading-platform.Primed for customization under your brand')}</p>
      <Button text={$t('trading-platform.Get in touch')} className="block-hero__button" onClick={() => popupForm.set(true)} />
      <div class="block-hero__animation">
        <div id="block-hero__animationContainer">
          <img use:onload src={hero} alt="" class="block-hero__image" />
          <canvas id="block-hero__canvas" {width} {height} />
          <div id="block-hero__dom_overlay_container" />
        </div>
      </div>
    </div>
  </div>
</div>

<style lang="scss">
  @import 'src/scss/variables';
  @import 'src/scss/media';
  @import 'src/scss/mixins';

  .block-hero {
    position: relative;
    background: $blue;
    padding-top: 159px;
    padding-bottom: 109px;
    overflow: hidden;
    display: flex;
    align-items: stretch;

    @include breakpoint-down('deskL') {
      padding-top: 149px;
    }

    @include breakpoint-down('deskS') {
      padding-top: 127px;
    }

    @include breakpoint-down('tabM') {
      padding-top: 163px;
    }

    &__wrapper {
      position: relative;
      z-index: 1;
      display: flex;
      flex-direction: column;
      height: 100%;
    }

    &__title {
      @include titleXL;

      color: $techWhite;

      text-align: center;
      width: 100%;
      max-width: 919px;
      margin-inline: auto;
      margin-bottom: 8px;
    }

    &__subtitle {
      color: $techWhite;

      text-align: center;
      width: 100%;
      max-width: 595px;
      margin-inline: auto;
      margin-bottom: 24px;

      @include breakpoint-down('tabM') {
        margin-bottom: 32px;
      }
    }

    & :global(.block-hero__button) {
      @include baseCTA;

      margin-bottom: 65px;
      margin-inline: auto;
      min-width: 260px;

      @include breakpoint-down('deskL') {
        margin-bottom: 32px;
      }

      @include breakpoint-down('deskS') {
        min-width: 180px;
        margin-bottom: 17px;
      }

      @include breakpoint-down('tabM') {
        margin-bottom: 74px;
      }
    }

    &__animation {
      flex: 1;
      display: flex;
      flex-direction: column;
      justify-content: flex-end;
    }

    #block-hero__animationContainer {
      position: relative;
      width: 100% !important;
      max-width: 1400px;
      height: auto !important;
    }

    #block-hero__canvas {
      position: absolute;
      z-index: 2;
      top: -9%;
      left: 50%;
      transform: translateX(-50%);
      display: block;
      background-color: rgba(4, 13, 33, 0);
      width: 100% !important;
      height: calc(100% + 9%) !important;
      transition: 0.3s ease-in-out;

      @include breakpoint-down('deskL') {
        width: 83% !important;
        margin: 0 auto;
      }

      @include breakpoint-down('deskS') {
        width: 77% !important;
      }

      @include breakpoint-down('tabM') {
        width: 155% !important;
        left: 50%;
        transform: translateX(-50%);
      }
    }

    #block-hero__dom_overlay_container {
      pointer-events: none;
      overflow: hidden;
      width: 100%;
      height: 100%;
      position: absolute;
      left: 0;
      top: 0;
      display: block;
    }

    &__image {
      width: 100%;
      max-width: 1440px;
      height: 100%;
      position: relative;
      z-index: -2;
      transition: 0.3s ease-in-out;
      opacity: 0;

      @include breakpoint-down('deskL') {
        width: 83%;
        margin: 0 auto;
      }

      @include breakpoint-down('deskS') {
        width: 77%;
      }

      @include breakpoint-down('tabM') {
        width: 155%;
        position: relative;
        left: 50%;
        transform: translateX(-50%);
      }
    }

    &:after {
      content: '';
      position: absolute;
      left: 50%;
      top: calc(50% - 50px);
      transform: translate(-50%, -50%);
      width: 1700px;
      height: 1700px;
      border-radius: 1700px;
      background: radial-gradient(50% 50% at 50% 50%, #7495d4 -100%, rgba(5, 13, 33, 0) 100%);
      pointer-events: none;
      z-index: 0;
    }

    //&:before {
    //  content: "";
    //  position: absolute;
    //  left: 50%;
    //  transform: translateX(-50%);
    //  bottom: -100px;
    //  width: 75%;
    //  height: 441px;
    //  border-radius: 1801px;
    //  background: radial-gradient(50% 50% at 50% 50%, #7495D4 -50%, rgba(5, 13, 33, 0) 100%);
    //  pointer-events: none;
    //  z-index: 0;
    //
    //  @include breakpoint-down('tabM') {
    //    display: none;
    //  }
    //}
  }
</style>