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/main/Platform.svelte
<script lang="ts">
  import oneClick from '../../../assets/images/main/platform/one-click.svg';
  import multiplier from '../../../assets/images/main/platform/multiplier.svg';
  import charts from '../../../assets/images/main/platform/9-charts.svg';
  import indicators from '../../../assets/images/main/platform/indicators.svg';
  import tournaments from '../../../assets/images/main/platform/tournaments.svg';
  import tradingPlatform from '../../../assets/images/main/platform/Trading_Platform.webp';
  import tradingPlatformMob from '../../../assets/images/main/platform/Trading_Platform_mob.webp';

  import AIO_MEA23PNG from '../../../assets/images/main/platform/awards/AIO_MEA23.webp';
  import AIO_MEA23SVG from '../../../assets/images/main/platform/awards/AIO_MEA23.svg';
  import BWL_MEA23PNG from '../../../assets/images/main/platform/awards/BWL_MEA23.webp';
  import BWL_MEA23SVG from '../../../assets/images/main/platform/awards/BWL_MEA23.svg';

  import Button from '../../button/Button.svelte';
  import PaginationEl from '../../pagination/Pagination.svelte';

  import { onMount } from 'svelte';
  import Swiper from 'swiper';
  import 'swiper/css';
  import 'swiper/css/pagination';
  import { Pagination } from 'swiper/modules';
  import { localeLink, t } from '$lib/translations';

  onMount(() => {
    const container: HTMLElement | null = document.querySelector('.block-platform-awards__swiper');
    const pagination: HTMLElement | null = document.querySelector('.block-platform-awards__pagination');

    if (!container || !pagination) return;

    new Swiper(container, {
      modules: [Pagination],
      spaceBetween: 40,
      pagination: {
        el: pagination,
        clickable: true,
      },
      breakpoints: {
        320: {
          slidesPerView: 1,
          spaceBetween: 20,
        },
        480: {
          slidesPerView: 2,
          spaceBetween: 20,
        },
        768: {
          slidesPerView: 2,
          spaceBetween: 20,
        },
        1366: {
          slidesPerView: 2,
          spaceBetween: 32,
        },
        1800: {
          slidesPerView: 2,
          spaceBetween: 41,
        },
      },
    });
  });
</script>

<div class="block-platform">
  <div class="container">
    <div class="block-platform-awards">
      <div class="block-platform-awards__content">
        <p class="block-platform-awards__title">{$t('Awards')}</p>
        <p class="block-platform-awards__text">
          {@html $t('Quadcode is a recognized leader as an award-winning white label brokerage solution provider. Our expertise and innovation makes us a trusted choice for businesses entering the brokerage industry.')}
        </p>
      </div>
      <div class="block-platform-awards__slider">
        <div class="swiper block-platform-awards__swiper">
          <div class="swiper-wrapper">
            <div class="swiper-slide">
              <div class="block-platform-awards__slide">
                <img src={BWL_MEA23SVG} alt="" class="block-platform-awards__logo" loading="lazy" />
                <img src={BWL_MEA23PNG} alt="" class="block-platform-awards__img" loading="lazy" />
              </div>
            </div>
            <div class="swiper-slide">
              <div class="block-platform-awards__slide">
                <img src={AIO_MEA23SVG} alt="" class="block-platform-awards__logo" loading="lazy" />
                <img src={AIO_MEA23PNG} alt="" class="block-platform-awards__img" loading="lazy" />
              </div>
            </div>
          </div>
        </div>
        <PaginationEl className="block-platform-awards__pagination" />
      </div>
    </div>
    <p class="block-platform__title">{@html $t('Next-Generation Trading Platform')}</p>
    <p class="block-platform__subtitle">
      {@html $t('Provide your traders smooth and seamless trading experience with state of art trading platform')}
    </p>
    <div class="block-platform__list">
      <div class="block-platform__listItem">
        <img src={oneClick} alt="" class="block-platform__listItemIcon" loading="lazy" />
        <p class="block-platform__listItemText">{@html $t('One-click trading')}</p>
      </div>
      <div class="block-platform__listItem">
        <img src={multiplier} alt="" class="block-platform__listItemIcon" loading="lazy" />
        <p class="block-platform__listItemText">{@html $t('Leverage trading')}</p>
      </div>
      <div class="block-platform__listItem">
        <img src={charts} alt="" class="block-platform__listItemIcon" loading="lazy" />
        <p class="block-platform__listItemText">
          {@html $t('Up to 9 charts to display')}
        </p>
      </div>
      <div class="block-platform__listItem">
        <img src={indicators} alt="" class="block-platform__listItemIcon" loading="lazy" />
        <p class="block-platform__listItemText">{@html $t('100+ indicators')}</p>
      </div>
      <div class="block-platform__listItem">
        <img src={tournaments} alt="" class="block-platform__listItemIcon" loading="lazy" />
        <p class="block-platform__listItemText">{@html $t('Tournaments')}</p>
      </div>
    </div>
    <Button text={$t('Learn more')} className="block-platform__button" link="{localeLink()}/trading-platform" />
    <picture>
      <source srcset="{tradingPlatformMob}" media="(max-width: 767px)">
      <img src={tradingPlatform} alt="trading platform" class="block-platform__image" loading="lazy" />
    </picture>

  </div>
</div>

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

  .block-platform {
    padding: 110px 0 0;
    background: linear-gradient(0deg, #1e232a 0%, #101318 100%);

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

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

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

    &__title {
      @include titleXL;

      color: $techWhite;
      text-align: center;
      max-width: 920px;
      width: 100%;
      margin-inline: auto;
      margin-bottom: 24px;

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

      @include breakpoint-down('deskS') {
        max-width: 380px;
        margin-bottom: 8px;
      }

      > span {
        color: $redPrimary;
      }
    }

    &__subtitle {
      width: 100%;
      max-width: 560px;
      margin-inline: auto;
      text-align: center;
      margin-bottom: 44px;
      color: $techWhite;

      @include breakpoint-down('deskL') {
        max-width: 500px;
        margin-bottom: 40px;
      }

      @include breakpoint-down('deskS') {
        max-width: 445px;
        margin-bottom: 24px;
      }

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

    &__list {
      width: 100%;
      max-width: 1160px;
      margin-inline: auto;
      display: flex;
      align-items: flex-start;
      gap: 40px;
      margin-bottom: 64px;

      @include breakpoint-down('deskL') {
        max-width: 928px;
        gap: 32px;
        margin-bottom: 80px;
      }

      @include breakpoint-down('deskS') {
        flex-wrap: wrap;
        gap: 20px;
        row-gap: 24px;
        justify-content: center;
        margin-bottom: 40px;
      }
    }

    &__listItem {
      flex: 1;
      display: flex;
      flex-direction: column;
      align-items: center;

      @include breakpoint-down('deskS') {
        width: calc((100% - 20px * 2) / 3);
        flex: none;
      }

      @include breakpoint-down('tabM') {
        width: calc((100% - 20px) / 2);
      }
    }

    &__listItemIcon {
      width: 90px;
      height: 90px;

      @include breakpoint-down('deskS') {
        width: 70px;
        height: 70px;
      }
    }

    &__listItemText {
      @include baseTitle;

      text-align: center;
      color: $techWhite;

      > span {
        font-weight: 400;
      }
    }

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

      margin-inline: auto;
      padding: 12px 50px;
    }

    &__image {
      @include breakpoint-down('deskS') {
        width: calc(100% + 40px * 2);
        margin-left: -40px;
      }

      @include breakpoint-down('tabM') {
        width: calc((100% + 83px * 2));
        margin-left: -83px;
      }
    }
  }

  .block-platform-awards {
    margin-bottom: 172px;
    display: flex;
    align-items: flex-start;
    gap: 40px;

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

    @include breakpoint-down('deskS') {
      gap: 20px;
      margin-bottom: 64px;
    }

    @include breakpoint-down('tabM') {
      flex-direction: column;
      gap: 30px;
    }

    &__content {
      max-width: 440px;
      width: 100%;

      @include breakpoint-down('deskL') {
        max-width: 352px;
      }

      @include breakpoint-down('deskS') {
        max-width: 219px;
      }

      @include breakpoint-down('tabM') {
        max-width: none;
      }
    }

    &__title {
      @include titleXL;

      color: $techWhite;
      margin-bottom: 16px;

      @include breakpoint-down('deskS') {
        margin-bottom: 8px;
      }

      @include breakpoint-down('tabM') {
        text-align: center;
      }
    }

    &__text {
      @include smallDefault;

      color: $techWhite;

      @include breakpoint-down('tabM') {
        text-align: center;
      }
    }

    &__slider {
      width: calc(100% - (440px + 40px));

      @include breakpoint-down('deskL') {
        width: calc(100% - (352px + 32px));
      }

      @include breakpoint-down('deskS') {
        width: calc(100% - (219px + 20px));
      }

      @include breakpoint-down('tabM') {
        width: calc(100% + 40px);
        margin-left: -20px;
      }
    }

    &__swiper {
      width: 100%;

      @include breakpoint-down('tabM') {
        padding: 0 63px;
        margin-bottom: 31px;
      }
    }

    &__slide {
      width: 100%;
      position: relative;
      border-radius: 16px;
      background: linear-gradient(180deg, rgba(248, 251, 253, 0.1) 0%, rgba(248, 251, 253, 0.02) 100%);
      padding-top: 70px;

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

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

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

    &__logo {
      position: absolute;
      top: 48px;
      left: 50%;
      transform: translateX(-50%);
      max-width: 260px;

      @include breakpoint-down('deskL') {
        max-width: 220px;
        top: 43px;
      }

      @include breakpoint-down('deskS') {
        max-width: 156px;
        top: 18px;
      }

      @include breakpoint-down('tabM') {
        max-width: 220px;
        top: 38px;
      }
    }

    &__img {
      position: relative;
      left: 50%;
      transform: translateX(-50%);
      max-width: 199px;

      @include breakpoint-down('deskS') {
        max-width: 130px;
      }

      @include breakpoint-down('tabM') {
        max-width: 153px;
      }
    }
  }

  :global(.block-platform__title span) {
    color: $redPrimary;
  } :global(.block-platform__listItemText span) {
    font-weight: 400;
  }
</style>