.elementor-9 .elementor-element.elementor-element-9844c79{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9 .elementor-element.elementor-element-6ea7825{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9 .elementor-element.elementor-element-18bb15b{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9 .elementor-element.elementor-element-0d252a2{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}/* Start custom CSS for html, class: .elementor-element-a4903b6 */.ph-scroll-hero,
.ph-scroll-hero * {
  box-sizing: border-box;
}

.ph-scroll-hero a {
  color: inherit;
  text-decoration: none;
}

.ph-scroll-hero {
  --ph-viewport: 100vh;
  --ph-ink: #160d3d;
  --ph-midnight: #231560;
  --ph-purple: #4b258c;
  --ph-orange: #ff6e18;
  --ph-red: #e62133;
  --ph-white: #fffdf9;
  --hero-progress: 0;
  position: relative;
  left: 50%;
  width: var(--ph-page-width, 100vw);
  max-width: none;
  margin-left: calc(var(--ph-page-width, 100vw) * -0.5);
  height: 620vh;
  background: var(--ph-ink);
  color: var(--ph-white);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI",
    sans-serif;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  touch-action: pan-y;
}

.ph-sticky-stage {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  width: 100%;
  height: var(--ph-viewport, 100vh);
  overflow: hidden;
  isolation: isolate;
  background: var(--ph-ink);

}

.ph-scroll-hero.ph-stage-past .ph-sticky-stage {
  position: absolute;
  top: auto;
  right: 0;
  bottom: 0;
  left: 0;
}

.ph-video {
  position: absolute;
  inset: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
  transform: none;
  filter: none;
  opacity: 0;
}

.ph-colour-wash,
.ph-vignette,
.ph-grain {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

/* Static overlays: no per-scroll gradient repaint, grain or video filter. */
.ph-colour-wash {
  z-index: 2;
  background:
    linear-gradient(90deg, rgba(22,13,61,.62) 0%, rgba(22,13,61,.24) 42%, rgba(22,13,61,.04) 76%),
    linear-gradient(180deg, rgba(10,5,33,.44), transparent 30%, rgba(10,5,33,.40));
}
.ph-vignette {
  z-index: 3;
  background: radial-gradient(ellipse at center, transparent 42%, rgba(8,4,27,.27) 100%);
}
.ph-grain { display: none; }

.ph-copy-stage {
  position: absolute;
  z-index: 4;
  inset: 0;
  width: min(92vw, 1500px);
  margin: 0 auto;
}

.ph-chapter {
  position: absolute;
  left: clamp(24px, 4.7vw, 72px);
  top: 50%;
  width: min(670px, 58vw);
  padding-bottom: 0.18em;
  transform-origin: left center;
  translate: 0 -50%;
  will-change: transform, opacity;
  opacity: 0;
}

.ph-chapter:first-child {
  opacity: 1;
}

.ph-kicker {
  display: flex;
  align-items: center;
  gap: 13px;
  margin: 0 0 21px;
  color: rgba(255, 253, 249, 0.86);
  font-size: clamp(10px, 0.9vw, 13px);
  font-weight: 720;
  letter-spacing: 0.19em;
  line-height: 1.4;
  text-transform: uppercase;
}

.ph-kicker span {
  width: 34px;
  height: 2px;
  flex: 0 0 34px;
  background: linear-gradient(90deg, var(--ph-orange), var(--ph-red));
}

.ph-chapter h1,
.ph-chapter h2 {
  max-width: 770px;
  margin: 0;
  padding: 0 0 0.09em;
  overflow: visible;
  color: var(--ph-white);
  font-size: clamp(54px, 7.1vw, 116px);
  font-weight: 730;
  letter-spacing: -0.065em;
  line-height: 1.06;
  text-wrap: balance;
  text-shadow: 0 8px 34px rgba(9, 4, 30, 0.26);
}

.ph-body {
  max-width: 590px;
  margin: clamp(18px, 2vw, 28px) 0 0;
  color: rgba(255, 253, 249, 0.84);
  font-size: clamp(16px, 1.35vw, 21px);
  font-weight: 420;
  letter-spacing: -0.012em;
  line-height: 1.58;
  text-wrap: pretty;
}

.ph-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 30px;
}

.ph-button {
  display: inline-flex;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  gap: 14px;
  padding: 0 23px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 999px;
  font-size: 13px;
  font-weight: 720;
  letter-spacing: 0.035em;
  transition: transform 180ms ease, background 180ms ease, border-color 180ms ease;
}

.ph-button:hover,
.ph-button:focus-visible {
  transform: translateY(-2px);
}

.ph-button-primary {
  border-color: transparent;
  background: linear-gradient(110deg, var(--ph-orange), var(--ph-red));
  box-shadow: 0 16px 38px rgba(230, 33, 51, 0.28);
}

.ph-button-ghost {
  background: rgba(22, 13, 61, 0.28);

}

.ph-button-ghost:hover,
.ph-button-ghost:focus-visible {
  border-color: rgba(255, 255, 255, 0.48);
  background: rgba(22, 13, 61, 0.5);
}

.ph-progress-steps {
  position: absolute;
  z-index: 7;
  right: clamp(20px, 3vw, 48px);
  top: 50%;
  display: flex;
  flex-direction: column;
  gap: 17px;
  translate: 0 -50%;
}

.ph-progress-dot {
  display: flex;
  align-items: center;
  gap: 10px;
  color: rgba(255, 255, 255, 0.34);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.12em;
  transition: color 260ms ease;
}

.ph-progress-dot::after {
  width: 20px;
  height: 1px;
  content: "";
  background: currentColor;
  transform-origin: right center;
  transition: width 260ms ease, background 260ms ease;
}

.ph-progress-dot.is-active {
  color: #fff;
}

.ph-progress-dot.is-active::after {
  width: 38px;
  background: linear-gradient(90deg, var(--ph-orange), var(--ph-red));
}

.ph-scroll-hint {
  position: absolute;
  z-index: 6;
  left: clamp(24px, 5vw, 86px);
  bottom: clamp(27px, 4vw, 52px);
  display: flex;
  align-items: center;
  gap: 14px;
  color: rgba(255, 255, 255, 0.68);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.ph-scroll-hint i {
  position: relative;
  width: 42px;
  height: 1px;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.28);
}

.ph-scroll-hint i::after {
  position: absolute;
  inset: 0;
  content: "";
  background: #fff;
  animation: ph-scroll-line 1.8s ease-in-out infinite;
}

@keyframes ph-scroll-line {
  0% { transform: translateX(-105%); }
  55%, 100% { transform: translateX(105%); }
}

.ph-progress-track {
  position: absolute;
  z-index: 8;
  right: 0;
  bottom: 0;
  left: 0;
  height: 3px;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.15);
}

.ph-progress-track div {
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, var(--ph-orange), var(--ph-red), var(--ph-purple));
  transform: scaleX(0);
  transform-origin: left center;
  will-change: transform;
}

/* The fixed stage has its own host. No Elementor ancestor resets are used. */
.ph-viewport-host {
  position: fixed;
  z-index: 3;
  inset: 0 auto auto 0;
  left: 0;
  width: 100%;
  height: var(--ph-viewport, 100vh);
  margin: 0;
  pointer-events: none;
}
.ph-viewport-host[hidden] { display: none !important; }
.ph-viewport-host > .ph-sticky-stage { pointer-events: auto; }
.ph-viewport-host.ph-is-loading { z-index: 999990; }
.ph-scroll-hero:not(.ph-viewport-host).ph-is-loading { z-index: 10; }
.ph-poster, .ph-poster img, .ph-nojs-poster {
  position: absolute;
  inset: 0;
  z-index: 0;
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: 50% 50%;
  pointer-events: none;
}
.ph-film-ready .ph-video { opacity: 1; }
.ph-static-actions { display: none; }
.ph-static-mode .ph-static-actions { display: flex; }
.ph-static-mode .ph-chapter:not(:first-child),
.ph-static-mode .ph-progress-steps,
.ph-static-mode .ph-progress-track,
.ph-static-mode .ph-scroll-hint { display: none; }
.ph-static-mode .ph-chapter:first-child {
  opacity: 1 !important;
  transform: none !important;
  pointer-events: auto !important;
}
.ph-button:focus-visible,
.ph-loader-skip:focus-visible { outline: 2px solid #fff; outline-offset: 5px; }

/* The real supplied P mark, not a word typed in a substitute font. */
.ph-loader {
  position: absolute;
  z-index: 50;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 28px 24px calc(28px + var(--ph-mobile-ui-offset, 0px));
  background:
    radial-gradient(ellipse at 50% 33%, rgba(75,37,140,.25), transparent 56%),
    radial-gradient(ellipse at 82% 85%, rgba(230,33,51,.06), transparent 48%),
    #160d3d;
  opacity: 1;
  visibility: visible;
  transition: opacity 360ms ease, visibility 360ms;
}
.ph-loader.is-ready { opacity: 0; visibility: hidden; pointer-events: none; }
.ph-loader-inner {
  width: min(380px, 100%);
  position: relative;
  text-align: center;
}
.ph-loader-symbol {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 146px;
  height: 132px;
  margin: 0 auto 31px;
  border: 1px solid rgba(255,255,255,.085);
  border-radius: 30px;
  background: linear-gradient(145deg, rgba(255,255,255,.045), rgba(255,255,255,.012));
}
.ph-loader-symbol img {
  display: block;
  width: 110px;
  height: auto;
  max-width: none;
  border: 0;
  border-radius: 0;
  opacity: 1;
  transform: none;
  filter: none;
  object-fit: contain;
}
.ph-loader-label {
  margin: 0 0 22px;
  color: rgba(255,253,249,.80);
  font-size: 10px;
  font-weight: 650;
  letter-spacing: .18em;
  line-height: 1.7;
  text-transform: uppercase;
}
.ph-loader-row {
  display: grid;
  grid-template-columns: 1fr 49px;
  align-items: center;
  gap: 15px;
}
.ph-loader-bar {
  height: 3px;
  overflow: hidden;
  border-radius: 3px;
  background: rgba(255,255,255,.11);
}
.ph-loader-bar i {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #ff6e18, #e62133);
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 150ms linear;
}
.ph-loader-number {
  color: var(--ph-white);
  font-size: 12px;
  font-weight: 650;
  font-variant-numeric: tabular-nums;
  letter-spacing: .045em;
  line-height: 1.5;
  text-align: right;
}
.ph-loader-note {
  display: block;
  margin-top: 18px;
  color: rgba(255,253,249,.45);
  font-size: 11px;
  font-weight: 400;
  line-height: 1.65;
}
.ph-scroll-hero .ph-loader-skip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin: 26px 0 0;
  padding: 9px 12px;
  min-height: 38px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 7px;
  background: transparent;
  color: rgba(255,253,249,.70);
  font-family: inherit;
  font-size: 11px;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0;
  text-transform: none;
  cursor: pointer;
}
.ph-scroll-hero .ph-loader-skip:hover { color: #fff; border-color: rgba(255,255,255,.4); }
.ph-scroll-hero .ph-loader-skip[hidden] { display: none !important; }
.ph-progress-unknown .ph-loader-bar i { width: 34%; animation: ph-loading-unknown 1.4s ease-in-out infinite; }
@keyframes ph-loading-unknown {
  0% { transform: translateX(-105%) scaleX(1); }
  100% { transform: translateX(395%) scaleX(1); }
}

@media (max-width: 767px) {
  .ph-scroll-hero {
    height: 530vh;
  }

  .ph-video, .ph-poster img, .ph-nojs-poster {
    object-position: 52% center;
  }

  .ph-colour-wash {
    background:
      linear-gradient(180deg, rgba(22, 13, 61, 0.46), rgba(22, 13, 61, 0.05) 33%, rgba(22, 13, 61, 0.70) 100%),
      linear-gradient(90deg, rgba(22, 13, 61, 0.27), transparent 78%);
  }

  .ph-copy-stage {
    width: 100%;
  }

  .ph-chapter {
    top: auto;
    right: 20px;
    bottom: calc(90px + var(--ph-mobile-ui-offset, 0px));
    left: 20px;
    width: auto;
    translate: 0;
    transform-origin: left bottom;
  }

  .ph-kicker {
    margin-bottom: 15px;
  }

  .ph-chapter h1,
  .ph-chapter h2 {
    font-size: clamp(46px, 14vw, 68px);
    letter-spacing: -0.06em;
    line-height: 1.08;
  }

  .ph-body {
    max-width: 520px;
    margin-top: 14px;
    font-size: 15px;
    line-height: 1.48;
  }

  .ph-actions {
    gap: 9px;
    margin-top: 20px;
  }

  .ph-button {
    min-height: 46px;
    padding: 0 17px;
    font-size: 11px;
  }

  .ph-progress-steps {
    top: 82px;
    right: 19px;
    flex-direction: row;
    gap: 8px;
    translate: 0;
  }

  .ph-progress-dot {
    width: 18px;
    height: 2px;
    overflow: hidden;
    color: transparent;
    background: rgba(255, 255, 255, 0.25);
    transition: width 220ms ease, background 220ms ease;
  }

  .ph-progress-dot::after {
    display: none;
  }

  .ph-progress-dot.is-active {
    color: transparent;
    width: 34px;
    background: linear-gradient(90deg, var(--ph-orange), var(--ph-red));
  }

  .ph-scroll-hint {
    display: none;
  }

  .ph-loader-symbol { width: 128px; height: 116px; border-radius: 25px; }
  .ph-loader-symbol img { width: 97px; }
}

@media (max-width: 430px) and (max-height: 720px) {
  .ph-chapter {
    bottom: calc(54px + var(--ph-mobile-ui-offset, 0px));
  }

  .ph-chapter h1,
  .ph-chapter h2 {
    font-size: clamp(39px, 12.2vw, 52px);
  }

  .ph-body {
    font-size: 13px;
  }

  .ph-actions {
    margin-top: 14px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ph-scroll-hint i::after,
  .ph-loader-bar i,
  .ph-loader {
    animation: none;
    transition-duration: 0.01ms;
  }
}

@media (max-height: 500px) and (orientation: landscape) {
  .ph-chapter {
    top: 50%;
    bottom: auto;
    left: clamp(24px, 5vw, 70px);
    right: 55px;
    width: min(650px, 82vw);
    translate: 0 -50%;
  }
  .ph-chapter h1, .ph-chapter h2 {
    max-width: 16ch;
    font-size: clamp(32px, 5.8vw, 48px);
    line-height: 1.08;
  }
  .ph-kicker { margin-bottom: 9px; font-size: 9px; }
  .ph-body { margin-top: 10px; max-width: 550px; font-size: 13px; line-height: 1.42; }
  .ph-actions { margin-top: 12px; gap: 9px; }
  .ph-button { min-height: 40px; font-size: 11px; }
  .ph-scroll-hint { display: none; }
  .ph-progress-steps { top: 24px; }
  .ph-loader-symbol { width: 88px; height: 76px; margin-bottom: 14px; border-radius: 20px; }
  .ph-loader-symbol img { width: 65px; }
  .ph-loader-label { margin-bottom: 12px; }
  .ph-loader-note { margin-top: 12px; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-5c669ca *//* ==========================================================
   PROLOCATE HERO V2
   ========================================================== */

:root{
    --pl-navy:#231560;
    --pl-purple:#4B258C;
    --pl-orange:#FF6E18;
    --pl-red:#E62133;

    --pl-dark:#080411;
    --pl-dark-2:#100720;
    --pl-white:#FFFFFF;
}


/* ==========================================================
   BASE
   ========================================================== */

.pro-hero,
.pro-hero *{
    box-sizing:border-box;
}


.pro-hero{
    position:relative;

    width:100%;

    min-height:860px;

    display:flex;
    align-items:center;

    overflow:hidden;

    isolation:isolate;

    color:#fff;

    background:
        radial-gradient(
            circle at 78% 38%,
            rgba(75,37,140,.17),
            transparent 30%
        ),
        radial-gradient(
            circle at 12% 84%,
            rgba(255,110,24,.07),
            transparent 23%
        ),
        linear-gradient(
            125deg,
            #07030E 0%,
            #0D061C 48%,
            #080311 100%
        );

    font-family:
        Inter,
        "Segoe UI",
        Arial,
        sans-serif;
}


/* ==========================================================
   GRID
   ========================================================== */

.pro-hero__grid{
    position:absolute;

    inset:0;

    z-index:-10;

    opacity:.16;

    pointer-events:none;

    background-image:
        linear-gradient(
            rgba(255,255,255,.035) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255,255,255,.035) 1px,
            transparent 1px
        );

    background-size:82px 82px;

    mask-image:
        linear-gradient(
            to bottom,
            #000,
            rgba(0,0,0,.40) 70%,
            transparent
        );
}


/* ==========================================================
   AMBIENT LIGHT
   ========================================================== */

.pro-hero__ambient{
    position:absolute;

    z-index:-9;

    border-radius:50%;

    pointer-events:none;
}


.pro-hero__ambient--orange{
    width:600px;
    height:600px;

    left:-300px;
    bottom:-380px;

    background:
        radial-gradient(
            circle,
            rgba(255,110,24,.13),
            transparent 68%
        );
}


.pro-hero__ambient--purple{
    width:850px;
    height:850px;

    right:-380px;
    top:-420px;

    background:
        radial-gradient(
            circle,
            rgba(75,37,140,.22),
            transparent 68%
        );
}


/* ==========================================================
   BACKGROUND ROUTES
   ========================================================== */

.pro-hero__routes{
    position:absolute;

    inset:0;

    width:100%;
    height:100%;

    z-index:-5;

    pointer-events:none;
}


.pro-route{
    fill:none;

    stroke-linecap:round;
}


.pro-route--quiet{
    stroke:
        rgba(255,255,255,.055);

    stroke-width:1;
}


.pro-route--active{
    stroke:
        url(#proHeroRoute);

    stroke-width:1.4;

    stroke-dasharray:
        28 330;

    opacity:.7;

    animation:
        proHeroRouteFlow
        7s linear
        infinite;
}


@keyframes proHeroRouteFlow{

    to{
        stroke-dashoffset:-780;
    }

}


/* ==========================================================
   MAIN LAYOUT
   ========================================================== */

.pro-hero__inner{
    position:relative;

    z-index:5;

    width:
        calc(100% - 84px);

    max-width:1500px;

    margin:
        0 auto;

    padding:
        140px
        0
        90px;

    display:grid;

    grid-template-columns:
        minmax(530px,.88fr)
        minmax(570px,1.12fr);

    align-items:center;

    gap:
        clamp(
            38px,
            4.5vw,
            80px
        );
}


/* ==========================================================
   LEFT COPY
   ========================================================== */

.pro-hero__copy{
    position:relative;

    max-width:710px;

    z-index:8;

    overflow:visible !important;
}


/* EYEBROW */

.pro-hero__eyebrow{
    margin-bottom:28px;

    display:flex;
    align-items:center;

    gap:12px;

    color:
        rgba(255,255,255,.48);

    font-size:9px;
    font-weight:850;

    letter-spacing:.17em;

    text-transform:uppercase;
}


.pro-hero__eyebrow > span{
    width:45px;
    height:2px;

    background:
        linear-gradient(
            90deg,
            var(--pl-orange),
            var(--pl-red)
        );
}


/* ==========================================================
   TITLE
   EXTRA DESCENDER-SAFE
   g / y / p / q / j
   ========================================================== */

.pro-hero__title{
    position:relative;

    display:block;

    width:100%;
    height:auto !important;

    margin:0;

    /*
       Extra hely a teljes H1 alatt.
       Ez NEM csak line-height javítás:
       fizikailag is nagyobb festési területet adunk.
    */
    padding:
        .03em
        0
        .20em;

    overflow:visible !important;

    contain:none !important;

    clip-path:none !important;

    font-size:
        clamp(
            58px,
            5.3vw,
            88px
        );

    font-weight:520;

    line-height:1.14 !important;

    letter-spacing:-.064em;
}


/* ELSŐ SOR */

.pro-hero__title > span{
    position:relative;

    display:block;

    width:max-content;
    max-width:100%;

    height:auto !important;

    /*
       A descender ténylegesen ezen a soron belül
       kap extra függőleges helyet.
    */
    padding:
        .02em
        0
        .18em;

    margin:0;

    overflow:visible !important;

    contain:none !important;

    clip-path:none !important;

    white-space:nowrap;

    color:#fff;

    line-height:1.14 !important;
}


/* MÁSODIK / GRADIENT SOR */

.pro-hero__title > strong{
    position:relative;

    display:block;

    width:max-content;
    max-width:100%;

    height:auto !important;

    /*
       Gradient textnél még nagyobb biztonsági tér,
       mert Chromium/WebKit background-clip:text esetén
       érzékenyebb lehet a glyph alsó része.
    */
    padding:
        .02em
        0
        .22em;

    margin:
        -.10em
        0
        0;

    overflow:visible !important;

    contain:none !important;

    clip-path:none !important;

    white-space:nowrap;

    font-weight:520;

    line-height:1.14 !important;

    background:
        linear-gradient(
            95deg,
            var(--pl-orange) 0%,
            var(--pl-red) 48%,
            #9A42C1 100%
        );

    background-size:
        100%
        100%;

    background-repeat:no-repeat;

    -webkit-background-clip:text;
    background-clip:text;

    -webkit-text-fill-color:transparent;

    color:transparent;

    -webkit-box-decoration-break:clone;
    box-decoration-break:clone;
}


/* ==========================================================
   LEAD
   ========================================================== */

.pro-hero__lead{
    max-width:570px;

    margin:
        16px 0 0;

    color:
        rgba(255,255,255,.46);

    font-size:15px;

    line-height:1.75;
}


/* ==========================================================
   BUTTONS
   ========================================================== */

.pro-hero__actions{
    margin-top:34px;

    display:flex;

    align-items:center;

    gap:13px;
}


/* PRIMARY */

.pro-hero__primary{
    min-height:55px;

    display:flex;
    align-items:stretch;

    overflow:hidden;

    border-radius:8px;

    color:#fff !important;

    text-decoration:none !important;

    background:
        linear-gradient(
            105deg,
            var(--pl-orange),
            var(--pl-red),
            var(--pl-purple)
        );

    box-shadow:
        0 12px 35px
        rgba(230,33,51,.18);

    transition:
        transform .25s ease,
        box-shadow .25s ease;
}


.pro-hero__primary > span{
    padding:
        0 23px;

    display:flex;
    align-items:center;

    font-size:12px;
    font-weight:750;
}


.pro-hero__primary > i{
    width:50px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-left:
        1px solid
        rgba(255,255,255,.18);
}


.pro-hero__primary svg,
.pro-hero__secondary svg{
    width:17px;
    height:17px;

    fill:none;

    stroke:currentColor;

    stroke-width:1.7;

    stroke-linecap:round;
    stroke-linejoin:round;

    transition:
        transform .25s ease;
}


.pro-hero__primary:hover{
    transform:
        translateY(-3px);

    box-shadow:
        0 17px 42px
        rgba(230,33,51,.27);
}


.pro-hero__primary:hover svg{
    transform:
        translateX(3px);
}


/* SECONDARY */

.pro-hero__secondary{
    min-height:55px;

    padding:
        0 21px;

    display:flex;
    align-items:center;

    gap:14px;

    border:
        1px solid
        rgba(255,255,255,.12);

    border-radius:8px;

    color:
        rgba(255,255,255,.70) !important;

    text-decoration:none !important;

    background:
        rgba(255,255,255,.025);

    font-size:11px;
    font-weight:650;

    transition:
        color .2s ease,
        border-color .2s ease,
        background .2s ease;
}


.pro-hero__secondary:hover{
    color:#fff !important;

    border-color:
        rgba(255,255,255,.22);

    background:
        rgba(255,255,255,.055);
}


.pro-hero__secondary:hover svg{
    transform:
        translateX(3px);
}


/* ==========================================================
   PROOF
   ========================================================== */

.pro-hero__proof{
    margin-top:48px;

    display:flex;

    align-items:stretch;

    gap:22px;
}


.pro-proof{
    display:flex;

    flex-direction:column;

    gap:6px;
}


.pro-proof strong{
    color:
        rgba(255,255,255,.90);

    font-size:15px;

    font-weight:650;

    letter-spacing:-.025em;
}


.pro-proof span{
    max-width:120px;

    color:
        rgba(255,255,255,.27);

    font-size:7.5px;

    line-height:1.45;

    letter-spacing:.085em;

    text-transform:uppercase;
}


.pro-proof__separator{
    width:1px;

    background:
        rgba(255,255,255,.085);
}


/* ==========================================================
   WORLD VISUAL
   ========================================================== */

.pro-world{
    position:relative;

    width:100%;

    height:560px;

    perspective:1300px;

    transform-style:preserve-3d;
}


/* BACK FRAME */

.pro-world__frame{
    position:absolute;

    width:88%;
    height:82%;

    right:1%;
    top:12%;

    border:
        1px solid
        rgba(255,255,255,.08);

    border-radius:17px;

    background:
        linear-gradient(
            135deg,
            rgba(75,37,140,.10),
            rgba(255,110,24,.025)
        );

    transform:
        rotate(-2.5deg);

    transition:
        translate .15s ease-out;
}


/* ==========================================================
   MAP
   ========================================================== */

.pro-world__map{
    position:absolute;

    width:92%;
    height:82%;

    right:3%;
    top:8%;

    overflow:hidden;

    border-radius:17px;

    border:
        1px solid
        rgba(255,255,255,.12);

    background:#080414;

    box-shadow:
        0 45px 100px
        rgba(0,0,0,.39);

    transform-style:preserve-3d;

    transition:
        translate .15s ease-out;
}


.pro-world__map > img{
    position:absolute;

    inset:0;

    width:100%;
    height:100%;

    display:block;

    object-fit:cover;

    object-position:
        54% center;

    transform:
        scale(1.035);

    filter:
        saturate(.94)
        contrast(1.05)
        brightness(.86);
}


/* MAP SHADE */

.pro-world__shade{
    position:absolute;

    inset:0;

    background:
        linear-gradient(
            90deg,
            rgba(8,4,17,.55) 0%,
            rgba(8,4,17,.12) 37%,
            rgba(8,4,17,.04) 72%,
            rgba(8,4,17,.20) 100%
        ),
        linear-gradient(
            180deg,
            rgba(8,4,17,.12),
            transparent 50%,
            rgba(8,4,17,.42)
        );

    pointer-events:none;
}


/* SCAN */

.pro-world__scan{
    position:absolute;

    top:0;
    left:-35%;

    width:28%;
    height:100%;

    opacity:.22;

    transform:
        skewX(-12deg);

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255,255,255,.13),
            rgba(255,110,24,.15),
            transparent
        );

    filter:
        blur(5px);

    animation:
        proWorldScan
        8s ease-in-out
        infinite;

    pointer-events:none;
}


@keyframes proWorldScan{

    0%,
    15%{
        left:-35%;
    }

    70%,
    100%{
        left:120%;
    }

}


/* MAP BRAND */

.pro-world__brand{
    position:absolute;

    left:24px;
    bottom:22px;

    display:flex;

    align-items:center;

    gap:10px;
}


.pro-world__brand > span{
    color:
        rgba(255,255,255,.68);

    font-size:8px;

    font-weight:850;

    letter-spacing:.17em;
}


.pro-world__brand > i{
    width:24px;
    height:1px;

    background:
        var(--pl-orange);
}


.pro-world__brand > strong{
    color:
        rgba(255,255,255,.28);

    font-size:7px;

    font-weight:750;

    letter-spacing:.12em;
}


/* ==========================================================
   HOTSPOTS
   ========================================================== */

.pro-hotspot{
    position:absolute;

    width:12px;
    height:12px;
}


.pro-hotspot__dot{
    position:absolute;

    left:50%;
    top:50%;

    width:7px;
    height:7px;

    transform:
        translate(-50%,-50%);

    border-radius:50%;

    background:#fff;

    box-shadow:
        0 0 8px #fff,
        0 0 17px rgba(255,110,24,.9);
}


.pro-hotspot__pulse{
    position:absolute;

    left:50%;
    top:50%;

    width:30px;
    height:30px;

    transform:
        translate(-50%,-50%);

    border:
        1px solid
        rgba(255,110,24,.65);

    border-radius:50%;

    animation:
        proHotspotPulse
        2.5s ease-out
        infinite;
}


@keyframes proHotspotPulse{

    0%{
        opacity:.8;

        transform:
            translate(-50%,-50%)
            scale(.45);
    }

    100%{
        opacity:0;

        transform:
            translate(-50%,-50%)
            scale(1.55);
    }

}


.pro-hotspot__label{
    position:absolute;

    left:17px;
    top:-13px;

    min-width:105px;

    padding:
        7px 9px;

    border:
        1px solid
        rgba(255,255,255,.09);

    border-radius:5px;

    background:
        rgba(8,4,17,.68);

    backdrop-filter:
        blur(10px);

    -webkit-backdrop-filter:
        blur(10px);
}


.pro-hotspot__label small{
    display:block;

    margin-bottom:2px;

    color:
        var(--pl-orange);

    font-size:6.5px;

    font-weight:850;

    letter-spacing:.12em;
}


.pro-hotspot__label strong{
    display:block;

    color:
        rgba(255,255,255,.66);

    font-size:8px;

    font-weight:650;

    white-space:nowrap;
}


/*
   These are visual labels,
   not literal geographic precision markers.
*/

.pro-hotspot--budapest{
    left:64%;
    top:37%;
}


.pro-hotspot--europe{
    left:58%;
    top:32%;
}


.pro-hotspot--europe .pro-hotspot__label{
    left:-113px;
}


.pro-hotspot--worldwide{
    right:14%;
    top:49%;
}


.pro-hotspot--worldwide .pro-hotspot__label{
    left:auto;
    right:17px;

    min-width:125px;
}


/* ==========================================================
   FLOATING CARDS
   ========================================================== */

.pro-world__card{
    position:absolute;

    z-index:15;

    border:
        1px solid
        rgba(255,255,255,.12);

    border-radius:11px;

    background:
        linear-gradient(
            135deg,
            rgba(28,15,57,.90),
            rgba(10,5,23,.91)
        );

    backdrop-filter:
        blur(20px);

    -webkit-backdrop-filter:
        blur(20px);

    box-shadow:
        0 27px 70px
        rgba(0,0,0,.29);

    transition:
        translate .15s ease-out;
}


/* GLOBAL REACH */

.pro-world__card--reach{
    top:3%;
    left:-1%;

    width:225px;

    padding:
        19px;

    display:flex;

    gap:14px;
}


.pro-world__card-icon{
    width:38px;
    height:38px;

    flex:0 0 38px;

    display:flex;

    align-items:center;
    justify-content:center;

    border-radius:50%;

    color:#fff;

    background:
        linear-gradient(
            135deg,
            var(--pl-orange),
            var(--pl-red)
        );
}


.pro-world__card small{
    display:block;

    margin-bottom:6px;

    color:
        var(--pl-orange);

    font-size:7px;

    font-weight:850;

    letter-spacing:.13em;
}


.pro-world__card strong{
    display:block;

    color:#fff;

    font-size:13px;

    font-weight:650;

    line-height:1.4;
}


/* STATUS */

.pro-world__card--status{
    right:-2%;
    bottom:2%;

    width:255px;

    padding:
        21px
        22px;
}


.pro-world__status{
    margin-bottom:14px;

    display:flex;

    align-items:center;

    gap:8px;

    color:
        rgba(255,255,255,.37);

    font-size:7px;

    font-weight:850;

    letter-spacing:.14em;
}


.pro-world__status > span{
    width:7px;
    height:7px;

    border-radius:50%;

    background:
        #59D593;

    box-shadow:
        0 0 12px
        rgba(89,213,147,.65);
}


.pro-world__card--status > strong{
    font-size:16px;
}


.pro-world__card--status > small{
    margin:
        7px 0 0;

    color:
        rgba(255,255,255,.31);

    font-size:8px;

    font-weight:500;

    letter-spacing:0;
}


/* ==========================================================
   SIDE LABEL
   ========================================================== */

.pro-world__side{
    position:absolute;

    left:0;
    bottom:14%;

    color:
        rgba(255,255,255,.20);

    font-size:7px;

    font-weight:800;

    letter-spacing:.19em;

    writing-mode:
        vertical-rl;

    transform:
        rotate(180deg);

    transition:
        translate .15s ease-out;
}


/* ==========================================================
   CORNERS
   ========================================================== */

.pro-world__corner{
    position:absolute;

    width:66px;
    height:66px;

    pointer-events:none;
}


.pro-world__corner--top{
    right:0;
    top:1%;

    border-top:
        1px solid
        rgba(255,110,24,.38);

    border-right:
        1px solid
        rgba(255,110,24,.38);
}


.pro-world__corner--bottom{
    left:5%;
    bottom:2%;

    border-bottom:
        1px solid
        rgba(75,37,140,.45);

    border-left:
        1px solid
        rgba(75,37,140,.45);
}


/* ==========================================================
   BOTTOM META
   ========================================================== */

.pro-hero__bottom{
    position:absolute;

    z-index:8;

    left:50%;
    bottom:24px;

    width:
        calc(100% - 84px);

    max-width:1500px;

    transform:
        translateX(-50%);

    display:flex;

    align-items:center;

    justify-content:space-between;

    pointer-events:none;
}


.pro-hero__coordinates{
    display:flex;

    align-items:center;

    gap:13px;

    color:
        rgba(255,255,255,.19);

    font-family:
        monospace;

    font-size:7px;

    letter-spacing:.08em;
}


.pro-hero__coordinates strong{
    color:
        rgba(255,255,255,.35);
}


/* SCROLL */

.pro-hero__scroll{
    display:flex;

    align-items:center;

    gap:14px;

    color:
        rgba(255,255,255,.23);

    font-size:7px;

    font-weight:750;

    letter-spacing:.15em;
}


.pro-hero__scroll > div{
    position:relative;

    width:70px;
    height:1px;

    overflow:hidden;

    background:
        rgba(255,255,255,.10);
}


.pro-hero__scroll i{
    position:absolute;

    top:0;
    left:-45%;

    width:45%;
    height:100%;

    background:
        linear-gradient(
            90deg,
            transparent,
            var(--pl-orange)
        );

    animation:
        proHeroScroll
        2.4s ease-in-out
        infinite;
}


@keyframes proHeroScroll{

    to{
        left:115%;
    }

}


/* ==========================================================
   LAPTOP
   ========================================================== */

@media(max-width:1350px){

    .pro-hero__inner{
        width:
            calc(100% - 56px);

        grid-template-columns:
            minmax(470px,.92fr)
            minmax(500px,1.08fr);

        gap:32px;
    }


    .pro-hero__title{
        font-size:
            clamp(
                56px,
                5vw,
                78px
            );

        line-height:1.14 !important;

        padding-bottom:.20em;
    }


    .pro-hero__title > span{
        line-height:1.14 !important;

        padding-bottom:.18em;
    }


    .pro-hero__title > strong{
        line-height:1.14 !important;

        padding-bottom:.22em;
    }


    .pro-world{
        height:520px;
    }

}


/* ==========================================================
   TABLET
   ========================================================== */

@media(max-width:1050px){

    .pro-hero{
        min-height:auto;
    }


    .pro-hero__inner{
        width:
            calc(100% - 42px);

        padding:
            125px 0 100px;

        grid-template-columns:1fr;

        gap:70px;
    }


    .pro-hero__copy{
        max-width:800px;

        overflow:visible !important;
    }


    .pro-hero__title{
        font-size:
            clamp(
                60px,
                9vw,
                90px
            );

        line-height:1.14 !important;

        padding-bottom:.20em;

        overflow:visible !important;
    }


    .pro-hero__title > span{
        line-height:1.14 !important;

        padding-bottom:.18em;

        overflow:visible !important;
    }


    .pro-hero__title > strong{
        line-height:1.14 !important;

        padding-bottom:.22em;

        overflow:visible !important;
    }


    .pro-world{
        width:min(
            800px,
            100%
        );

        height:590px;

        margin:
            0 auto;
    }


    .pro-hero__bottom{
        display:none;
    }

}


/* ==========================================================
   MOBILE
   ========================================================== */

@media(max-width:700px){

    .pro-hero__inner{
        width:
            calc(100% - 36px);

        padding:
            108px
            0
            78px;

        gap:52px;
    }


    .pro-hero__eyebrow{
        margin-bottom:20px;

        font-size:7.5px;
    }


    .pro-hero__copy{
        overflow:visible !important;
    }


    .pro-hero__title{
        font-size:
            clamp(
                48px,
                14vw,
                68px
            );

        line-height:1.16 !important;

        padding:
            .03em
            0
            .24em;

        overflow:visible !important;
    }


    .pro-hero__title > span,
    .pro-hero__title > strong{
        width:100%;
        max-width:100%;

        white-space:normal;

        line-height:1.16 !important;

        overflow:visible !important;
    }


    .pro-hero__title > span{
        padding-bottom:.20em;
    }


    .pro-hero__title > strong{
        margin-top:-.08em;

        padding-bottom:.26em;
    }


    .pro-hero__lead{
        margin-top:12px;

        font-size:13px;
    }


    .pro-hero__actions{
        margin-top:29px;

        align-items:stretch;

        flex-direction:column;
    }


    .pro-hero__primary,
    .pro-hero__secondary{
        width:100%;

        justify-content:space-between;
    }


    .pro-hero__primary > span{
        flex:1;
    }


    .pro-hero__proof{
        margin-top:36px;

        display:grid;

        grid-template-columns:
            repeat(3,1fr);

        gap:12px;
    }


    .pro-proof__separator{
        display:none;
    }


    .pro-proof strong{
        font-size:13px;
    }


    .pro-proof span{
        font-size:6.5px;
    }


    /* WORLD */

    .pro-world{
        height:445px;
    }


    .pro-world__map{
        width:94%;
        height:72%;

        right:-1%;
        top:13%;
    }


    .pro-world__frame{
        width:88%;
        height:68%;

        right:3%;
        top:16%;
    }


    .pro-world__map > img{
        object-position:
            59% center;
    }


    .pro-world__card--reach{
        top:4%;
        left:0;

        width:175px;

        padding:14px;
    }


    .pro-world__card-icon{
        width:31px;
        height:31px;

        flex-basis:31px;
    }


    .pro-world__card strong{
        font-size:10px;
    }


    .pro-world__card--status{
        width:205px;

        right:0;
        bottom:1%;

        padding:
            16px
            17px;
    }


    .pro-world__card--status > strong{
        font-size:13px;
    }


    .pro-hotspot__label{
        display:none;
    }


    .pro-world__brand > strong{
        display:none;
    }


    .pro-world__side{
        display:none;
    }

}


/* ==========================================================
   SMALL MOBILE
   ========================================================== */

@media(max-width:430px){

    .pro-hero__title{
        font-size:
            clamp(
                46px,
                14vw,
                58px
            );

        line-height:1.18 !important;

        padding-bottom:.26em;

        overflow:visible !important;
    }


    .pro-hero__title > span,
    .pro-hero__title > strong{
        line-height:1.18 !important;

        overflow:visible !important;
    }


    .pro-hero__title > span{
        padding-bottom:.22em;
    }


    .pro-hero__title > strong{
        padding-bottom:.28em;
    }


    .pro-hero__proof{
        grid-template-columns:
            1fr 1fr;
    }


    .pro-proof:last-child{
        display:none;
    }


    .pro-world{
        height:400px;
    }


    .pro-world__map{
        width:97%;

        right:-4%;
    }


    .pro-world__card--reach{
        width:160px;
    }


    .pro-world__card--status{
        width:185px;
    }

}


/* ==========================================================
   REDUCED MOTION
   ========================================================== */

@media(prefers-reduced-motion:reduce){

    .pro-route--active,
    .pro-world__scan,
    .pro-hotspot__pulse,
    .pro-hero__scroll i{
        animation:none !important;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-bf4f575 *//* ==========================================================
   PROLOCATE REFERENCES
   CLEAN AMERICAN LONG-NOSE TRUCK
   ========================================================== */

.plr-section,
.plr-section *{
    box-sizing:border-box;
}


.plr-section{
    --pl-purple:#4B258C;
    --pl-purple-light:#6841B0;

    --pl-orange:#FF6E18;
    --pl-red:#E62133;

    position:relative;

    width:100%;

    overflow:hidden;

    color:#fff;

    font-family:
        Inter,
        "Segoe UI",
        Arial,
        sans-serif;

    background:
        radial-gradient(
            circle at 87% 4%,
            rgba(75,37,140,.16),
            transparent 30%
        ),
        radial-gradient(
            circle at 5% 100%,
            rgba(255,110,24,.07),
            transparent 25%
        ),
        linear-gradient(
            180deg,
            #080410 0%,
            #0B0517 50%,
            #07030E 100%
        );
}


/* ==========================================================
   BACKGROUND GRID
   ========================================================== */

.plr-grid{
    position:absolute;

    inset:0;

    pointer-events:none;

    opacity:.11;

    background-image:
        linear-gradient(
            rgba(255,255,255,.035) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255,255,255,.035) 1px,
            transparent 1px
        );

    background-size:
        82px 82px;
}


/* ==========================================================
   CONTAINER
   ========================================================== */

.plr-container{
    position:relative;

    z-index:2;

    width:
        calc(100% - 84px);

    max-width:1500px;

    margin:0 auto;

    padding:
        110px 0
        115px;
}


/* ==========================================================
   HEADER
   DESCENDER SAFE
   ========================================================== */

.plr-heading{
    margin-bottom:64px;

    overflow:visible !important;
}


.plr-eyebrow{
    margin-bottom:24px;

    display:flex;

    align-items:center;

    gap:12px;

    color:
        rgba(255,255,255,.46);

    font-size:9px;

    font-weight:850;

    letter-spacing:.18em;

    text-transform:uppercase;
}


.plr-eyebrow > span{
    width:44px;
    height:2px;

    background:
        linear-gradient(
            90deg,
            var(--pl-orange),
            var(--pl-red)
        );
}


.plr-heading__row{
    display:flex;

    align-items:flex-end;

    justify-content:space-between;

    gap:70px;

    overflow:visible !important;
}


/* ==========================================================
   MAIN HEADING
   g / y / p / q / j DESCENDER FIX
   ========================================================== */

.plr-heading h2{
    position:relative;

    display:block;

    width:auto;
    height:auto !important;

    margin:0;

    padding:
        .02em
        0
        .20em;

    overflow:visible !important;

    contain:none !important;

    clip-path:none !important;

    font-size:
        clamp(
            50px,
            5.2vw,
            82px
        );

    font-weight:520;

    /*
       Korábban 1.03 volt.
       Ez túl szűk volt a lelógó karaktereknek.
    */
    line-height:1.14 !important;

    letter-spacing:-.068em;
}


/* GRADIENT SOR */

.plr-heading h2 strong{
    position:relative;

    display:block;

    width:max-content;
    max-width:100%;

    height:auto !important;

    /*
       Nagyobb alsó glyph-terület a
       g / y / p / q / j karaktereknek.
    */
    padding:
        .02em
        0
        .22em;

    margin:0;

    overflow:visible !important;

    contain:none !important;

    clip-path:none !important;

    font-weight:520;

    line-height:1.14 !important;

    background:
        linear-gradient(
            95deg,
            var(--pl-orange),
            var(--pl-red),
            #A344C1
        );

    background-size:
        100%
        100%;

    background-repeat:no-repeat;

    -webkit-background-clip:text;
    background-clip:text;

    -webkit-text-fill-color:transparent;

    color:transparent;

    -webkit-box-decoration-break:clone;
    box-decoration-break:clone;
}


.plr-heading__right{
    max-width:330px;

    padding-bottom:8px;
}


.plr-heading__right p{
    margin:
        0
        0
        17px;

    color:
        rgba(255,255,255,.43);

    font-size:13px;

    line-height:1.65;
}


.plr-all{
    display:inline-flex;

    align-items:center;

    gap:10px;

    color:
        rgba(255,255,255,.76) !important;

    text-decoration:none !important;

    font-size:11px;

    font-weight:700;
}


.plr-all span{
    color:var(--pl-orange);

    transition:
        transform .2s ease;
}


.plr-all:hover span{
    transform:
        translate(2px,-2px);
}


/* ==========================================================
   SCENE
   ========================================================== */

.plr-scene{
    position:relative;

    height:440px;

    overflow:hidden;

    contain:layout paint;

    border:
        1px solid
        rgba(255,255,255,.075);

    border-radius:18px;

    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,.016),
            rgba(255,255,255,.004)
        );
}


/* ==========================================================
   ROAD META
   ========================================================== */

.plr-road-meta{
    position:absolute;

    top:30px;

    left:46px;
    right:46px;

    display:flex;

    align-items:center;

    gap:14px;

    color:
        rgba(255,255,255,.22);

    font-size:7px;

    font-weight:850;

    letter-spacing:.15em;
}


.plr-road-meta i{
    flex:1;

    height:1px;

    background:
        linear-gradient(
            90deg,
            rgba(255,255,255,.04),
            rgba(255,110,24,.20),
            rgba(255,255,255,.04)
        );
}


/* ==========================================================
   VIEWPORT
   ========================================================== */

.plr-viewport{
    position:absolute;

    inset:
        58px
        0
        68px;

    overflow:hidden;
}


/* ==========================================================
   TRACK
   ========================================================== */

.plr-track{
    position:absolute;

    left:0;
    bottom:0;

    height:300px;

    display:flex;

    align-items:flex-end;

    gap:82px;

    padding:
        0
        72px;

    will-change:transform;

    transform:
        translate3d(0,0,0);
}


/* ==========================================================
   TRUCK CONTAINER
   ========================================================== */

.plr-truck{
    width:690px;
    min-width:690px;

    flex:
        0 0
        690px;

    margin:0;

    padding:0;
}


/* ==========================================================
   SVG
   ========================================================== */

.plr-truck-svg{
    display:block;

    width:100%;
    height:auto;

    overflow:visible;

    shape-rendering:
        geometricPrecision;
}


/* ==========================================================
   TRAILER
   ========================================================== */

.plr-svg-trailer{
    fill:#170C2E;

    stroke:
        rgba(255,255,255,.13);

    stroke-width:1;
}


.plr-svg-trailer-line{
    stroke:
        rgba(255,255,255,.08);

    stroke-width:1;
}


.plr-svg-trailer-title{
    fill:
        rgba(255,255,255,.40);

    font-size:8px;

    font-weight:800;

    letter-spacing:2px;
}


.plr-svg-trailer-number{
    fill:#FF6E18;

    font-size:8px;

    font-weight:900;
}


.plr-svg-card{
    fill:#241347;

    stroke:
        rgba(255,255,255,.11);

    stroke-width:1;
}


.plr-svg-stripe-orange{
    fill:#FF6E18;
}


.plr-svg-stripe-red{
    fill:#E62133;
}


.plr-svg-stripe-purple{
    fill:#4B258C;
}


.plr-svg-underbody{
    fill:#18171D;
}


/* ==========================================================
   CONNECTION / CHASSIS
   ========================================================== */

.plr-svg-connection{
    fill:#26252C;
}


.plr-svg-chassis{
    fill:#17171C;
}


.plr-svg-deck{
    fill:#7F828A;

    stroke:#B7B9BE;

    stroke-width:1;
}


/* ==========================================================
   CAB + HOOD
   ========================================================== */

.plr-svg-body{
    fill:#43247D;

    stroke:#6948A5;

    stroke-width:1;
}


.plr-svg-hood{
    fill:#3A206E;

    stroke:#6948A5;

    stroke-width:1;
}


.plr-svg-body-line,
.plr-svg-hood-line{
    stroke:
        rgba(255,255,255,.15);

    stroke-width:1;
}


.plr-svg-door{
    fill:none;

    stroke:
        rgba(255,255,255,.12);

    stroke-width:1;
}


.plr-svg-handle{
    fill:#A9ABB1;
}


/* ==========================================================
   WINDOWS
   ========================================================== */

.plr-svg-glass{
    fill:#16233A;

    stroke:#67738B;

    stroke-width:1;
}


/* ==========================================================
   CAB STRIPES
   ========================================================== */

.plr-svg-body-stripe{
    fill:#E62133;
}


.plr-svg-cab-mark{
    fill:#FFFFFF;

    font-size:24px;

    font-weight:900;

    font-style:italic;
}


/* ==========================================================
   MARKER LIGHTS
   ========================================================== */

.plr-svg-marker-lights{
    fill:#FF9E35;
}


.plr-svg-marker{
    fill:#FF9E35;
}


/* ==========================================================
   HORNS
   ========================================================== */

.plr-svg-horns{
    fill:#B9BBC1;
}


/* ==========================================================
   CHROME
   ========================================================== */

.plr-svg-chrome{
    fill:#AEB0B7;

    stroke:#DDDEE1;

    stroke-width:1;
}


/* ==========================================================
   MIRROR
   ========================================================== */

.plr-svg-mirror{
    fill:#AEB0B7;

    stroke:#CDD0D4;

    stroke-width:2;
}


/* ==========================================================
   EXHAUST STACKS
   ========================================================== */

.plr-svg-stack{
    fill:#AEB0B7;

    stroke:#E2E3E6;

    stroke-width:1;
}


.plr-svg-stack--far{
    fill:#777A82;

    stroke:#A6A8AE;
}


/* ==========================================================
   AIR CLEANER
   ========================================================== */

.plr-svg-aircleaner rect{
    fill:#AEB0B7;

    stroke:#E1E2E5;

    stroke-width:1;
}


.plr-svg-aircleaner line{
    stroke:#676A72;

    stroke-width:1;
}


/* ==========================================================
   HOOD BRAND
   ========================================================== */

.plr-svg-hood-badge{
    fill:
        rgba(255,255,255,.38);

    font-size:6px;

    font-weight:800;

    letter-spacing:1.2px;
}


/* ==========================================================
   HEADLIGHT
   ========================================================== */

.plr-svg-headlight > rect:first-child{
    fill:#777A82;

    stroke:#BFC1C7;

    stroke-width:1;
}


.plr-svg-lamp{
    fill:#FFE8B1;
}


/* ==========================================================
   GRILLE
   ========================================================== */

.plr-svg-grille > rect:first-child{
    fill:#AEB0B7;

    stroke:#ECEDEF;

    stroke-width:2;
}


.plr-svg-grille line{
    stroke:#50535A;

    stroke-width:1;
}


.plr-svg-grille-badge{
    fill:#E62133;
}


/* ==========================================================
   FENDER
   ========================================================== */

.plr-svg-fender{
    fill:#3A206E;

    stroke:#6948A5;

    stroke-width:1;
}


/* ==========================================================
   FUEL TANK
   ========================================================== */

.plr-svg-fuel{
    fill:#A6A8AE;

    stroke:#E0E1E4;

    stroke-width:1;
}


.plr-svg-fuel-band{
    stroke:#64676E;

    stroke-width:2;
}


/* ==========================================================
   STEPS
   ========================================================== */

.plr-svg-step{
    fill:#7F828A;

    stroke:#C9CBD0;

    stroke-width:1;
}


/* ==========================================================
   BUMPER
   ========================================================== */

.plr-svg-bumper{
    fill:#AEB0B7;

    stroke:#E7E8EA;

    stroke-width:1;
}


/* ==========================================================
   WHEELS
   ========================================================== */

.plr-svg-tire{
    fill:#060609;

    stroke:#17171C;

    stroke-width:3;
}


.plr-svg-rim{
    fill:#A8AAB0;

    stroke:#E0E1E3;

    stroke-width:2;
}


.plr-svg-hub{
    fill:#4B4D54;
}


/* ==========================================================
   ROAD
   ========================================================== */

.plr-road{
    position:absolute;

    left:0;
    right:0;

    bottom:0;

    height:68px;
}


.plr-road__edge{
    height:2px;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255,110,24,.35),
            rgba(230,33,51,.25),
            transparent
        );
}


.plr-road__surface{
    position:relative;

    height:66px;

    overflow:hidden;

    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,.018),
            rgba(255,255,255,.004)
        );
}


.plr-road__line{
    position:absolute;

    top:28px;

    left:-180px;

    width:
        calc(100% + 360px);

    height:2px;

    opacity:.18;

    background:
        repeating-linear-gradient(
            90deg,
            #FFFFFF 0 90px,
            transparent 90px 172px
        );

    animation:
        plrRoadMove
        2.8s linear
        infinite;
}


@keyframes plrRoadMove{

    to{
        transform:
            translateX(-172px);
    }

}


/* ==========================================================
   SIDE FADES
   ========================================================== */

.plr-scene__fade{
    position:absolute;

    z-index:20;

    top:0;
    bottom:0;

    width:85px;

    pointer-events:none;
}


.plr-scene__fade--left{
    left:0;

    background:
        linear-gradient(
            90deg,
            #090411 0%,
            transparent 100%
        );
}


.plr-scene__fade--right{
    right:0;

    background:
        linear-gradient(
            -90deg,
            #090411 0%,
            transparent 100%
        );
}


/* ==========================================================
   TABLET
   ========================================================== */

@media(max-width:1050px){

    .plr-container{
        width:
            calc(100% - 42px);

        padding:
            95px 0;
    }


    .plr-heading__row{
        flex-direction:column;

        align-items:flex-start;

        gap:25px;

        overflow:visible !important;
    }


    .plr-heading h2{
        line-height:1.14 !important;

        padding-bottom:.20em;

        overflow:visible !important;
    }


    .plr-heading h2 strong{
        line-height:1.14 !important;

        padding-bottom:.22em;

        overflow:visible !important;
    }


    .plr-truck{
        width:600px;
        min-width:600px;

        flex-basis:600px;
    }


    .plr-track{
        gap:55px;
    }

}


/* ==========================================================
   MOBILE
   ========================================================== */

@media(max-width:700px){

    .plr-container{
        width:
            calc(100% - 36px);

        padding:
            82px 0;
    }


    .plr-heading{
        margin-bottom:42px;

        overflow:visible !important;
    }


    .plr-heading h2{
        font-size:
            clamp(
                45px,
                13vw,
                64px
            );

        line-height:1.16 !important;

        padding:
            .02em
            0
            .24em;

        overflow:visible !important;
    }


    .plr-heading h2 strong{
        width:100%;

        line-height:1.16 !important;

        padding-bottom:.26em;

        overflow:visible !important;
    }


    .plr-scene{
        height:315px;

        border-radius:13px;
    }


    .plr-road-meta{
        display:none;
    }


    .plr-viewport{
        inset:
            18px
            0
            54px;
    }


    .plr-track{
        height:240px;

        gap:28px;

        padding:
            0
            24px;
    }


    .plr-truck{
        width:445px;
        min-width:445px;

        flex-basis:445px;
    }


    .plr-road{
        height:54px;
    }


    .plr-road__surface{
        height:52px;
    }


    .plr-road__line{
        top:22px;
    }


    .plr-scene__fade{
        width:25px;
    }

}


/* ==========================================================
   SMALL MOBILE
   ========================================================== */

@media(max-width:430px){

    .plr-heading h2{
        line-height:1.18 !important;

        padding-bottom:.26em;

        overflow:visible !important;
    }


    .plr-heading h2 strong{
        line-height:1.18 !important;

        padding-bottom:.28em;

        overflow:visible !important;
    }


    .plr-scene{
        height:285px;
    }


    .plr-viewport{
        inset:
            12px
            0
            50px;
    }


    .plr-track{
        height:212px;

        padding:
            0
            18px;

        gap:21px;
    }


    .plr-truck{
        width:370px;
        min-width:370px;

        flex-basis:370px;
    }

}


/* ==========================================================
   VERY SMALL MOBILE
   ========================================================== */

@media(max-width:360px){

    .plr-truck{
        width:335px;
        min-width:335px;

        flex-basis:335px;
    }

}


/* ==========================================================
   REDUCED MOTION
   ========================================================== */

@media(prefers-reduced-motion:reduce){

    .plr-road__line{
        animation:none !important;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-6ea33b8 *//* ==========================================================
   PROLOCATE — HOME REMAINDER
   DESCENDER-SAFE TYPOGRAPHY
   ========================================================== */

:root{
    --pl-navy:#231560;
    --pl-purple:#4B258C;
    --pl-orange:#FF6E18;
    --pl-red:#E62133;

    --pl-dark:#080411;
    --pl-dark2:#100720;

    --pl-light:#F5F3F7;
    --pl-light2:#ECE8F0;

    --pl-text:#20192B;
    --pl-muted:#706979;

    --pl-white:#FFFFFF;
}


.plmain,
.plmain *{
    box-sizing:border-box;
}


.plmain{
    width:100%;

    font-family:
        Inter,
        "Segoe UI",
        Arial,
        sans-serif;
}


.plmain a{
    text-decoration:none !important;
}


/* ==========================================================
   GLOBAL CONTAINER
   ========================================================== */

.plmain-container{
    position:relative;

    z-index:3;

    width:
        calc(100% - 84px);

    max-width:1500px;

    margin:0 auto;
}


/* ==========================================================
   EYEBROW
   ========================================================== */

.plmain-eyebrow{
    display:flex;

    align-items:center;

    gap:12px;

    color:
        rgba(35,21,96,.52);

    font-size:9px;

    font-weight:850;

    letter-spacing:.18em;

    text-transform:uppercase;
}


.plmain-eyebrow > span{
    width:44px;
    height:2px;

    background:
        linear-gradient(
            90deg,
            var(--pl-orange),
            var(--pl-red)
        );
}


.plmain-eyebrow--light{
    color:
        rgba(255,255,255,.42);
}


/* ==========================================================
   SECTION HEADER
   DESCENDER SAFE
   ========================================================== */

.plmain-section-head{
    margin-bottom:64px;

    overflow:visible !important;
}


.plmain-section-head__row{
    margin-top:23px;

    display:flex;

    justify-content:space-between;

    align-items:flex-end;

    gap:70px;

    overflow:visible !important;
}


.plmain-section-head h2{
    position:relative;

    max-width:820px;

    height:auto !important;

    margin:0;

    padding:
        .02em
        0
        .20em;

    overflow:visible !important;

    contain:none !important;

    clip-path:none !important;

    font-size:
        clamp(
            50px,
            5vw,
            80px
        );

    font-weight:520;

    line-height:1.14 !important;

    letter-spacing:-.066em;
}


.plmain-section-head h2 strong{
    position:relative;

    display:block;

    width:max-content;
    max-width:100%;

    height:auto !important;

    margin-top:-.05em;

    padding:
        .02em
        0
        .22em;

    overflow:visible !important;

    contain:none !important;

    clip-path:none !important;

    font-weight:520;

    line-height:1.14 !important;

    background:
        linear-gradient(
            95deg,
            var(--pl-orange),
            var(--pl-red),
            #9E44BE
        );

    background-size:100% 100%;
    background-repeat:no-repeat;

    -webkit-background-clip:text;
    background-clip:text;

    -webkit-text-fill-color:transparent;

    color:transparent;

    -webkit-box-decoration-break:clone;
    box-decoration-break:clone;
}


.plmain-section-head__row > p{
    max-width:360px;

    margin:0;

    font-size:13px;

    line-height:1.75;
}


.plmain-section-head--dark h2{
    color:
        var(--pl-text);
}


.plmain-section-head--dark
.plmain-section-head__row > p{
    color:
        var(--pl-muted);
}


.plmain-section-head--light h2{
    color:#fff;
}


.plmain-section-head--light
.plmain-section-head__row > p{
    color:
        rgba(255,255,255,.42);
}


/* ==========================================================
   ARROW LINK
   ========================================================== */

.plmain-arrow-link{
    display:inline-flex;

    align-items:center;

    gap:11px;

    color:
        var(--pl-navy) !important;

    font-size:11px;

    font-weight:750;

    transition:
        gap .2s ease;
}


.plmain-arrow-link i{
    color:
        var(--pl-orange);

    font-style:normal;
}


.plmain-arrow-link:hover{
    gap:15px;
}


.plmain-arrow-link--light{
    color:#fff !important;
}


/* ==========================================================
   03 — SERVICES
   ========================================================== */

.plmain-services{
    position:relative;

    overflow:hidden;

    padding:
        120px 0;

    color:
        var(--pl-text);

    background:
        linear-gradient(
            180deg,
            #F8F7FA,
            #F2EFF5
        );
}


.plmain-services__grid{
    position:absolute;

    inset:0;

    pointer-events:none;

    opacity:.43;

    background-image:
        linear-gradient(
            rgba(35,21,96,.045) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(35,21,96,.045) 1px,
            transparent 1px
        );

    background-size:
        82px 82px;
}


/* ==========================================================
   SERVICE SYSTEM
   ========================================================== */

.plmain-service-system{
    display:grid;

    grid-template-columns:
        .67fr
        1.33fr;

    min-height:520px;

    border:
        1px solid
        rgba(35,21,96,.10);

    border-radius:18px;

    overflow:hidden;

    background:
        rgba(255,255,255,.64);

    box-shadow:
        0 30px 80px
        rgba(35,21,96,.07);
}


/* TABS */

.plmain-service-tabs{
    display:flex;

    flex-direction:column;

    border-right:
        1px solid
        rgba(35,21,96,.09);
}


.plmain-service-tab{
    position:relative;

    flex:1;

    min-height:120px;

    padding:
        22px 25px;

    display:grid;

    grid-template-columns:
        32px
        1fr
        25px;

    align-items:center;

    gap:11px;

    border:0;

    border-bottom:
        1px solid
        rgba(35,21,96,.07);

    background:
        rgba(255,255,255,.54);

    color:
        var(--pl-text);

    font-family:inherit;

    text-align:left;

    cursor:pointer;

    transition:
        background .25s ease,
        color .25s ease;
}


.plmain-service-tab:last-child{
    border-bottom:0;
}


.plmain-service-tab::before{
    content:"";

    position:absolute;

    left:0;
    top:0;
    bottom:0;

    width:3px;

    transform:
        scaleY(0);

    background:
        linear-gradient(
            180deg,
            var(--pl-orange),
            var(--pl-red),
            var(--pl-purple)
        );

    transition:
        transform .25s ease;
}


.plmain-service-tab small{
    color:
        rgba(35,21,96,.37);

    font-family:
        monospace;

    font-size:9px;
}


.plmain-service-tab > span{
    display:flex;

    flex-direction:column;

    gap:3px;

    font-size:15px;

    font-weight:650;

    letter-spacing:-.025em;
}


.plmain-service-tab b{
    font-weight:650;
}


.plmain-service-tab > i{
    color:
        rgba(35,21,96,.25);

    font-style:normal;

    transition:
        transform .2s ease,
        color .2s ease;
}


.plmain-service-tab:hover,
.plmain-service-tab.is-active{
    background:#fff;
}


.plmain-service-tab.is-active::before{
    transform:
        scaleY(1);
}


.plmain-service-tab.is-active small,
.plmain-service-tab.is-active > i{
    color:
        var(--pl-orange);
}


.plmain-service-tab.is-active > i{
    transform:
        translate(2px,-2px);
}


/* ==========================================================
   STAGE
   ========================================================== */

.plmain-service-stage{
    position:relative;

    min-width:0;

    display:grid;

    background:
        radial-gradient(
            circle at 20% 80%,
            rgba(255,110,24,.08),
            transparent 28%
        ),
        radial-gradient(
            circle at 90% 0%,
            rgba(75,37,140,.18),
            transparent 35%
        ),
        #0D071B;

    overflow:hidden;
}


.plmain-service-panel{
    grid-area:
        1 / 1;

    min-height:520px;

    display:grid;

    grid-template-columns:
        1.06fr .94fr;

    opacity:0;

    visibility:hidden;

    pointer-events:none;

    transform:
        translateY(15px);

    transition:
        opacity .35s ease,
        transform .35s ease,
        visibility .35s ease;
}


.plmain-service-panel.is-active{
    opacity:1;

    visibility:visible;

    pointer-events:auto;

    transform:
        translateY(0);
}


/* ==========================================================
   SERVICE VISUAL
   ========================================================== */

.plmain-service-visual{
    position:relative;

    overflow:hidden;

    min-width:0;

    border-right:
        1px solid
        rgba(255,255,255,.07);

    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,.025),
            transparent
        );
}


.plmain-service-number{
    position:absolute;

    left:25px;
    top:20px;

    color:
        rgba(255,255,255,.04);

    font-size:
        clamp(
            100px,
            10vw,
            160px
        );

    font-weight:800;

    line-height:1;

    letter-spacing:-.08em;

    user-select:none;
}


.plmain-visual-label{
    position:absolute;

    left:25px;
    bottom:24px;

    color:
        rgba(255,255,255,.27);

    font-size:8px;

    font-weight:800;

    letter-spacing:.17em;
}


/* ==========================================================
   WORKSPACE BLUEPRINT
   ========================================================== */

.plmain-blueprint{
    position:absolute;

    width:330px;
    height:270px;

    left:50%;
    top:50%;

    transform:
        translate(-48%,-50%)
        perspective(700px)
        rotateX(57deg)
        rotateZ(-17deg);

    border:
        1px solid
        rgba(255,255,255,.10);

    background:
        repeating-linear-gradient(
            0deg,
            rgba(255,255,255,.035) 0 1px,
            transparent 1px 32px
        ),
        repeating-linear-gradient(
            90deg,
            rgba(255,255,255,.035) 0 1px,
            transparent 1px 32px
        );

    box-shadow:
        0 35px 70px
        rgba(0,0,0,.28);

    transform-style:
        preserve-3d;
}


.plmain-office-block{
    position:absolute;

    display:grid;

    gap:6px;

    padding:8px;

    border:
        1px solid
        rgba(255,255,255,.14);

    background:
        rgba(75,37,140,.14);

    transform:
        translateZ(18px);
}


.plmain-office-block i{
    border-radius:2px;

    background:
        linear-gradient(
            90deg,
            var(--pl-orange),
            rgba(230,33,51,.72)
        );

    opacity:.75;
}


.plmain-office-block--1{
    width:100px;
    height:74px;

    left:35px;
    top:38px;

    grid-template-columns:
        1fr 1fr;
}


.plmain-office-block--2{
    width:112px;
    height:100px;

    right:30px;
    top:58px;
}


.plmain-office-block--3{
    width:124px;
    height:60px;

    left:70px;
    bottom:35px;

    grid-template-columns:
        1fr 1fr;
}


.plmain-blueprint__line{
    position:absolute;

    height:1px;

    background:
        linear-gradient(
            90deg,
            transparent,
            var(--pl-orange),
            transparent
        );
}


.plmain-blueprint__line--1{
    width:165px;

    left:87px;
    top:135px;
}


.plmain-blueprint__line--2{
    width:130px;

    left:22px;
    top:185px;

    transform:
        rotate(-33deg);
}


.plmain-blueprint__line--3{
    width:120px;

    right:18px;
    bottom:55px;

    transform:
        rotate(28deg);
}


.plmain-blueprint__node{
    position:absolute;

    width:14px;
    height:14px;

    border:
        1px solid
        var(--pl-orange);

    border-radius:50%;

    box-shadow:
        0 0 16px
        rgba(255,110,24,.45);
}


.plmain-blueprint__node span{
    position:absolute;

    inset:4px;

    border-radius:50%;

    background:
        var(--pl-orange);
}


.plmain-blueprint__node--1{
    left:40px;
    bottom:58px;
}


.plmain-blueprint__node--2{
    right:35px;
    top:32px;
}


/* ==========================================================
   HOSPITALITY VISUAL
   ========================================================== */

.plmain-hospitality-scene{
    position:absolute;

    width:330px;
    height:270px;

    left:50%;
    top:50%;

    transform:
        translate(-48%,-48%);
}


.plmain-hotel{
    position:absolute;

    left:50%;
    bottom:35px;

    width:190px;
    height:195px;

    transform:
        translateX(-50%)
        skewY(-2deg);

    display:grid;

    grid-template-columns:
        1fr 1fr;

    gap:12px;

    padding:
        28px 25px;

    border:
        1px solid
        rgba(255,255,255,.12);

    background:
        linear-gradient(
            145deg,
            rgba(75,37,140,.25),
            rgba(255,255,255,.025)
        );

    box-shadow:
        28px 28px 0
        rgba(255,255,255,.015);
}


.plmain-hotel span{
    border:
        1px solid
        rgba(255,255,255,.08);

    background:
        linear-gradient(
            135deg,
            rgba(255,110,24,.12),
            rgba(75,37,140,.10)
        );
}


.plmain-hotel-package{
    position:absolute;

    right:-2px;
    bottom:10px;

    width:95px;
    height:75px;

    display:flex;

    align-items:center;

    justify-content:center;

    border:
        1px solid
        rgba(255,255,255,.14);

    border-radius:5px;

    color:#fff;

    background:
        linear-gradient(
            135deg,
            var(--pl-orange),
            var(--pl-red)
        );

    box-shadow:
        0 20px 35px
        rgba(230,33,51,.18);
}


.plmain-hotel-package i{
    font-style:normal;

    font-size:13px;

    font-weight:850;
}


.plmain-hotel-route{
    position:absolute;

    left:25px;
    right:32px;

    bottom:14px;

    height:1px;

    background:
        linear-gradient(
            90deg,
            transparent,
            var(--pl-orange),
            var(--pl-red)
        );
}


/* ==========================================================
   DATA CENTER
   ========================================================== */

.plmain-data-center{
    position:absolute;

    width:350px;
    height:260px;

    left:50%;
    top:50%;

    transform:
        translate(-48%,-47%);

    display:flex;

    align-items:center;

    justify-content:center;

    gap:18px;

    perspective:700px;
}


.plmain-rack{
    position:relative;

    width:78px;
    height:185px;

    padding:12px 9px;

    display:grid;

    gap:9px;

    border:
        1px solid
        rgba(255,255,255,.13);

    border-radius:4px;

    background:
        linear-gradient(
            145deg,
            rgba(53,33,100,.50),
            rgba(12,7,26,.95)
        );

    box-shadow:
        12px 18px 30px
        rgba(0,0,0,.25);
}


.plmain-rack--1{
    transform:
        rotateY(12deg);
}


.plmain-rack--3{
    transform:
        rotateY(-12deg);
}


.plmain-rack i{
    position:relative;

    border:
        1px solid
        rgba(255,255,255,.07);

    background:
        rgba(255,255,255,.025);
}


.plmain-rack i::after{
    content:"";

    position:absolute;

    width:4px;
    height:4px;

    right:5px;
    top:50%;

    transform:
        translateY(-50%);

    border-radius:50%;

    background:
        var(--pl-orange);

    box-shadow:
        0 0 8px
        rgba(255,110,24,.7);
}


.plmain-data-line{
    position:absolute;

    left:20px;
    right:20px;

    bottom:15px;

    height:2px;

    background:
        linear-gradient(
            90deg,
            transparent,
            var(--pl-purple),
            var(--pl-orange),
            transparent
        );

    box-shadow:
        0 0 15px
        rgba(255,110,24,.22);
}


/* ==========================================================
   INTERNATIONAL
   ========================================================== */

.plmain-international{
    position:absolute;

    width:320px;
    height:320px;

    left:50%;
    top:50%;

    transform:
        translate(-48%,-50%);

    border-radius:50%;
}


.plmain-globe-ring{
    position:absolute;

    left:50%;
    top:50%;

    border:
        1px solid
        rgba(255,255,255,.10);

    border-radius:50%;
}


.plmain-globe-ring--1{
    width:230px;
    height:230px;

    transform:
        translate(-50%,-50%);
}


.plmain-globe-ring--2{
    width:230px;
    height:90px;

    transform:
        translate(-50%,-50%);
}


.plmain-globe-ring--3{
    width:90px;
    height:230px;

    transform:
        translate(-50%,-50%);
}


.plmain-globe-core{
    position:absolute;

    left:50%;
    top:50%;

    width:110px;
    height:110px;

    transform:
        translate(-50%,-50%);

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(255,110,24,.15),
            rgba(75,37,140,.10) 42%,
            transparent 70%
        );
}


.plmain-globe-core span{
    position:absolute;

    left:50%;
    top:50%;

    width:12px;
    height:12px;

    transform:
        translate(-50%,-50%);

    border-radius:50%;

    background:#fff;

    box-shadow:
        0 0 10px #fff,
        0 0 25px
        var(--pl-orange);
}


.plmain-globe-node{
    position:absolute;

    width:7px;
    height:7px;

    border-radius:50%;

    background:
        var(--pl-orange);

    box-shadow:
        0 0 14px
        rgba(255,110,24,.7);
}


.plmain-globe-node--1{
    left:30px;
    top:138px;
}


.plmain-globe-node--2{
    right:31px;
    top:104px;
}


.plmain-globe-node--3{
    right:83px;
    bottom:45px;
}


/* ==========================================================
   SERVICE CONTENT
   DESCENDER SAFE H3
   ========================================================== */

.plmain-service-content{
    padding:
        54px
        44px;

    display:flex;

    flex-direction:column;

    justify-content:center;

    overflow:visible;
}


.plmain-service-kicker{
    display:block;

    margin-bottom:17px;

    color:
        var(--pl-orange);

    font-size:8px;

    font-weight:850;

    letter-spacing:.17em;
}


.plmain-service-content h3{
    position:relative;

    margin:
        0
        0
        16px;

    padding-bottom:.15em;

    overflow:visible !important;

    color:#fff;

    font-size:
        clamp(
            29px,
            2.8vw,
            43px
        );

    font-weight:550;

    line-height:1.14 !important;

    letter-spacing:-.05em;
}


.plmain-service-content p{
    margin:0;

    color:
        rgba(255,255,255,.43);

    font-size:12px;

    line-height:1.75;
}


.plmain-service-tags{
    margin:
        25px
        0
        28px;

    display:flex;

    flex-wrap:wrap;

    gap:7px;
}


.plmain-service-tags span{
    padding:
        7px
        10px;

    border:
        1px solid
        rgba(255,255,255,.09);

    border-radius:999px;

    color:
        rgba(255,255,255,.48);

    background:
        rgba(255,255,255,.025);

    font-size:8px;

    font-weight:700;
}


/* ==========================================================
   04 — EXPERIENCE
   ========================================================== */

.plmain-experience{
    position:relative;

    overflow:hidden;

    padding:
        125px
        0
        0;

    color:#fff;

    background:
        radial-gradient(
            circle at 12% 82%,
            rgba(255,110,24,.09),
            transparent 28%
        ),
        radial-gradient(
            circle at 88% 12%,
            rgba(75,37,140,.20),
            transparent 30%
        ),
        #080411;
}


.plmain-experience__grid{
    position:absolute;

    inset:0;

    opacity:.13;

    background-image:
        linear-gradient(
            rgba(255,255,255,.035) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255,255,255,.035) 1px,
            transparent 1px
        );

    background-size:
        82px 82px;
}


.plmain-experience__top{
    padding-bottom:
        110px;

    display:grid;

    grid-template-columns:
        .8fr
        1.2fr;

    gap:
        clamp(
            70px,
            10vw,
            160px
        );
}


/* YEARS */

.plmain-years{
    position:relative;

    min-height:390px;

    display:flex;

    flex-direction:column;

    justify-content:center;

    border-right:
        1px solid
        rgba(255,255,255,.08);
}


.plmain-years__label{
    color:
        rgba(255,255,255,.26);

    font-size:8px;

    font-weight:800;

    letter-spacing:.18em;
}


.plmain-years > strong{
    margin:
        20px 0
        14px;

    color:#fff;

    font-size:
        clamp(
            130px,
            15vw,
            225px
        );

    font-weight:600;

    line-height:.72;

    letter-spacing:-.09em;
}


.plmain-years > strong span{
    color:
        var(--pl-orange);

    font-size:.38em;

    vertical-align:top;
}


.plmain-years p{
    max-width:250px;

    margin:0;

    color:
        rgba(255,255,255,.35);

    font-size:11px;

    line-height:1.65;
}


/* ==========================================================
   EXPERIENCE COPY
   DESCENDER SAFE
   ========================================================== */

.plmain-experience__copy{
    overflow:visible !important;
}


.plmain-experience__copy h2{
    position:relative;

    height:auto !important;

    margin:
        23px
        0
        17px;

    padding:
        .02em
        0
        .20em;

    overflow:visible !important;

    contain:none !important;

    clip-path:none !important;

    color:#fff;

    font-size:
        clamp(
            44px,
            4.5vw,
            70px
        );

    font-weight:520;

    line-height:1.14 !important;

    letter-spacing:-.065em;
}


.plmain-experience__copy h2 strong{
    position:relative;

    display:block;

    width:max-content;
    max-width:100%;

    height:auto !important;

    margin-top:-.04em;

    padding:
        .02em
        0
        .22em;

    overflow:visible !important;

    contain:none !important;

    clip-path:none !important;

    font-weight:520;

    line-height:1.14 !important;

    background:
        linear-gradient(
            90deg,
            var(--pl-orange),
            var(--pl-red),
            #A746C2
        );

    background-size:100% 100%;
    background-repeat:no-repeat;

    -webkit-background-clip:text;
    background-clip:text;

    -webkit-text-fill-color:transparent;

    color:transparent;

    -webkit-box-decoration-break:clone;
    box-decoration-break:clone;
}


.plmain-experience__lead{
    max-width:610px;

    margin:
        0
        0
        35px;

    color:
        rgba(255,255,255,.43);

    font-size:13px;

    line-height:1.78;
}


/* FACTS */

.plmain-facts{
    margin-bottom:35px;

    border-top:
        1px solid
        rgba(255,255,255,.08);
}


.plmain-fact{
    padding:
        18px 0;

    display:grid;

    grid-template-columns:
        40px
        1fr;

    gap:14px;

    border-bottom:
        1px solid
        rgba(255,255,255,.08);
}


.plmain-fact small{
    padding-top:3px;

    color:
        var(--pl-orange);

    font-family:
        monospace;

    font-size:8px;
}


.plmain-fact strong{
    display:block;

    margin-bottom:5px;

    color:#fff;

    font-size:12px;
}


.plmain-fact span{
    display:block;

    color:
        rgba(255,255,255,.33);

    font-size:9px;

    line-height:1.55;
}


/* ==========================================================
   MOVING RAIL
   ========================================================== */

.plmain-rail{
    position:relative;

    overflow:hidden;

    padding:
        22px 0;

    border-top:
        1px solid
        rgba(255,255,255,.08);

    background:
        rgba(255,255,255,.018);
}


.plmain-rail__track{
    width:max-content;

    display:flex;

    align-items:center;

    gap:36px;

    color:
        rgba(255,255,255,.28);

    font-size:9px;

    font-weight:800;

    letter-spacing:.15em;

    white-space:nowrap;

    animation:
        plmainRail
        28s linear
        infinite;
}


.plmain-rail__track i{
    color:
        var(--pl-orange);

    font-size:5px;

    font-style:normal;
}


@keyframes plmainRail{

    from{
        transform:
            translateX(0);
    }

    to{
        transform:
            translateX(-50%);
    }

}


/* ==========================================================
   05 — SUSTAINABILITY
   ========================================================== */

.plmain-sustainability{
    position:relative;

    overflow:hidden;

    padding:
        120px 0;

    color:
        var(--pl-text);

    background:
        linear-gradient(
            180deg,
            #F7F6F9,
            #F0EDF3
        );
}


.plmain-sustainability__grid{
    position:absolute;

    inset:0;

    opacity:.42;

    background-image:
        linear-gradient(
            rgba(35,21,96,.04) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(35,21,96,.04) 1px,
            transparent 1px
        );

    background-size:
        82px 82px;
}


/* GRID */

.plmain-sustain-grid{
    display:grid;

    grid-template-columns:
        .9fr
        1.1fr;

    align-items:center;

    gap:
        clamp(
            55px,
            8vw,
            120px
        );
}


/* CORE */

.plmain-sustain-core{
    position:relative;

    width:min(
        480px,
        100%
    );

    aspect-ratio:1;

    margin:auto;

    border-radius:50%;

    transition:
        transform .4s ease;
}


.plmain-sustain-orbit{
    position:absolute;

    left:50%;
    top:50%;

    border:
        1px solid
        rgba(35,21,96,.11);

    border-radius:50%;

    transform:
        translate(-50%,-50%);
}


.plmain-sustain-orbit--1{
    width:100%;
    height:100%;
}


.plmain-sustain-orbit--2{
    width:72%;
    height:72%;
}


.plmain-sustain-orbit--3{
    width:46%;
    height:46%;

    border-color:
        rgba(255,110,24,.20);
}


.plmain-sustain-core::before,
.plmain-sustain-core::after{
    content:"";

    position:absolute;

    left:50%;
    top:50%;

    background:
        rgba(35,21,96,.09);
}


.plmain-sustain-core::before{
    width:100%;
    height:1px;

    transform:
        translate(-50%,-50%);
}


.plmain-sustain-core::after{
    width:1px;
    height:100%;

    transform:
        translate(-50%,-50%);
}


.plmain-sustain-core__center{
    position:absolute;

    left:50%;
    top:50%;

    width:150px;
    height:150px;

    transform:
        translate(-50%,-50%);

    display:flex;

    flex-direction:column;

    align-items:center;

    justify-content:center;

    border:
        1px solid
        rgba(255,255,255,.08);

    border-radius:50%;

    color:#fff;

    background:
        radial-gradient(
            circle at 35% 25%,
            #3B2671,
            #160B31 70%
        );

    box-shadow:
        0 25px 55px
        rgba(35,21,96,.22);
}


.plmain-sustain-core__center span{
    color:
        rgba(255,255,255,.38);

    font-size:7px;

    font-weight:800;

    letter-spacing:.16em;
}


.plmain-sustain-core__center strong{
    margin:
        6px 0;

    font-size:36px;

    font-weight:650;

    letter-spacing:-.06em;
}


.plmain-sustain-core__center small{
    color:
        var(--pl-orange);

    font-size:6px;

    font-weight:850;

    letter-spacing:.15em;
}


/* NODES */

.plmain-sustain-node{
    position:absolute;

    width:14px;
    height:14px;

    border:
        3px solid
        #F5F3F7;

    border-radius:50%;

    background:
        var(--pl-orange);

    box-shadow:
        0 0 0 1px
        rgba(35,21,96,.08),
        0 0 18px
        rgba(255,110,24,.25);

    transition:
        transform .35s ease,
        background .35s ease;
}


.plmain-sustain-node--1{
    top:9%;
    left:48%;
}


.plmain-sustain-node--2{
    top:49%;
    right:5%;
}


.plmain-sustain-node--3{
    bottom:7%;
    left:48%;
}


.plmain-sustain-node--4{
    top:49%;
    left:5%;
}


.plmain-sustain-core[data-active="1"]
.plmain-sustain-node--1,

.plmain-sustain-core[data-active="2"]
.plmain-sustain-node--2,

.plmain-sustain-core[data-active="3"]
.plmain-sustain-node--3,

.plmain-sustain-core[data-active="4"]
.plmain-sustain-node--4{
    transform:
        scale(1.8);

    background:
        var(--pl-red);
}


/* ITEMS */

.plmain-sustain-items{
    border-top:
        1px solid
        rgba(35,21,96,.09);
}


.plmain-sustain-item{
    position:relative;

    min-height:105px;

    padding:
        21px 8px;

    display:grid;

    grid-template-columns:
        42px
        1fr
        30px;

    align-items:center;

    gap:14px;

    border-bottom:
        1px solid
        rgba(35,21,96,.09);

    color:
        var(--pl-text) !important;

    transition:
        padding .25s ease,
        background .25s ease;
}


.plmain-sustain-item::before{
    content:"";

    position:absolute;

    left:0;
    top:0;
    bottom:0;

    width:2px;

    background:
        linear-gradient(
            180deg,
            var(--pl-orange),
            var(--pl-red)
        );

    transform:
        scaleY(0);

    transition:
        transform .25s ease;
}


.plmain-sustain-item:hover{
    padding-left:20px;

    background:
        rgba(255,255,255,.50);
}


.plmain-sustain-item:hover::before{
    transform:
        scaleY(1);
}


.plmain-sustain-item > small{
    color:
        var(--pl-orange);

    font-family:
        monospace;

    font-size:8px;
}


.plmain-sustain-item strong{
    display:block;

    margin-bottom:6px;

    font-size:14px;

    font-weight:700;
}


.plmain-sustain-item div span{
    display:block;

    color:
        var(--pl-muted);

    font-size:10px;

    line-height:1.5;
}


.plmain-sustain-item > i{
    color:
        rgba(35,21,96,.27);

    font-style:normal;

    transition:
        transform .2s ease,
        color .2s ease;
}


.plmain-sustain-item:hover > i{
    color:
        var(--pl-orange);

    transform:
        translate(2px,-2px);
}


/* FOOTER */

.plmain-sustain-footer{
    margin-top:55px;

    padding-top:22px;

    display:flex;

    justify-content:space-between;

    align-items:center;

    border-top:
        1px solid
        rgba(35,21,96,.09);
}


.plmain-sustain-footer > span{
    color:
        rgba(35,21,96,.37);

    font-size:8px;

    font-weight:800;

    letter-spacing:.14em;

    text-transform:uppercase;
}


/* ==========================================================
   06 — DISCOVER
   ========================================================== */

.plmain-discover{
    position:relative;

    overflow:hidden;

    padding:
        120px 0
        105px;

    color:#fff;

    background:
        linear-gradient(
            180deg,
            #090414,
            #07030E
        );
}


.plmain-discover__glow{
    position:absolute;

    width:850px;
    height:850px;

    right:-400px;
    top:-440px;

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(75,37,140,.24),
            transparent 67%
        );
}


/* ==========================================================
   DISCOVER GRID
   ========================================================== */

.plmain-discover-grid{
    display:grid;

    grid-template-columns:
        1.3fr
        .85fr
        .85fr;

    gap:13px;
}


/* CARDS */

.plmain-discover-card{
    --card-x:0px;
    --card-y:0px;

    position:relative;

    min-height:480px;

    padding:26px;

    display:flex;

    flex-direction:column;

    overflow:hidden;

    border:
        1px solid
        rgba(255,255,255,.09);

    border-radius:16px;

    color:#fff !important;

    background:
        linear-gradient(
            145deg,
            rgba(36,20,72,.58),
            rgba(11,6,25,.88)
        );

    box-shadow:
        inset 0 1px 0
        rgba(255,255,255,.025);

    transform:
        translate(
            var(--card-x),
            var(--card-y)
        );

    transition:
        transform .15s ease-out,
        border-color .25s ease,
        background .25s ease;
}


.plmain-discover-card:hover{
    border-color:
        rgba(255,255,255,.17);

    background:
        linear-gradient(
            145deg,
            rgba(48,27,94,.72),
            rgba(12,6,28,.92)
        );
}


.plmain-discover-card__number{
    position:absolute;

    right:22px;
    top:20px;

    width:30px;
    height:30px;

    display:flex;

    align-items:center;

    justify-content:center;

    border:
        1px solid
        rgba(255,255,255,.09);

    border-radius:50%;

    color:
        var(--pl-orange);

    font-family:
        monospace;

    font-size:8px;
}


/* CONTENT */

.plmain-discover-card__content{
    position:relative;

    z-index:4;

    margin-top:auto;

    overflow:visible;
}


.plmain-discover-card__content > span{
    display:block;

    margin-bottom:12px;

    color:
        var(--pl-orange);

    font-size:8px;

    font-weight:850;

    letter-spacing:.17em;
}


.plmain-discover-card__content h3{
    position:relative;

    margin:
        0
        0
        9px;

    padding-bottom:.15em;

    overflow:visible !important;

    color:#fff;

    font-size:
        clamp(
            27px,
            2.5vw,
            39px
        );

    font-weight:550;

    line-height:1.14 !important;

    letter-spacing:-.05em;
}


.plmain-discover-card__content p{
    margin:
        0
        0
        23px;

    color:
        rgba(255,255,255,.37);

    font-size:10px;

    line-height:1.6;
}


.plmain-discover-card__content > strong{
    display:flex;

    align-items:center;

    gap:10px;

    color:
        rgba(255,255,255,.75);

    font-size:10px;

    font-weight:700;
}


.plmain-discover-card__content > strong i{
    color:
        var(--pl-orange);

    font-style:normal;
}


/* ==========================================================
   CASE STUDY VISUAL
   ========================================================== */

.plmain-discover-card__visual{
    position:absolute;

    left:0;
    right:0;

    top:0;
    height:56%;

    overflow:hidden;
}


.plmain-case-lines span{
    position:absolute;

    width:65%;

    height:1px;

    background:
        rgba(255,255,255,.055);
}


.plmain-case-lines span:nth-child(1){
    left:-5%;
    top:25%;

    transform:
        rotate(8deg);
}


.plmain-case-lines span:nth-child(2){
    right:-5%;
    top:43%;

    transform:
        rotate(-10deg);
}


.plmain-case-lines span:nth-child(3){
    left:20%;
    top:70%;

    transform:
        rotate(4deg);
}


.plmain-case-block{
    position:absolute;

    border:
        1px solid
        rgba(255,255,255,.10);

    background:
        rgba(75,37,140,.13);
}


.plmain-case-block--1{
    width:190px;
    height:120px;

    left:15%;
    top:20%;

    transform:
        perspective(500px)
        rotateX(58deg)
        rotateZ(-17deg);
}


.plmain-case-block--2{
    width:130px;
    height:95px;

    right:18%;
    top:29%;

    transform:
        perspective(500px)
        rotateX(58deg)
        rotateZ(14deg);
}


.plmain-case-route{
    position:absolute;

    left:20%;
    right:15%;

    top:51%;

    height:2px;

    background:
        linear-gradient(
            90deg,
            transparent,
            var(--pl-orange),
            var(--pl-red),
            transparent
        );
}


.plmain-case-route i{
    position:absolute;

    left:53%;
    top:50%;

    width:10px;
    height:10px;

    transform:
        translate(-50%,-50%);

    border:
        2px solid
        #14092A;

    border-radius:50%;

    background:
        var(--pl-orange);

    box-shadow:
        0 0 16px
        rgba(255,110,24,.55);
}


/* ==========================================================
   BLOG ICON
   ========================================================== */

.plmain-discover-card__icon{
    position:absolute;

    left:50%;
    top:24%;

    width:160px;
    height:160px;

    transform:
        translateX(-50%);

    display:flex;

    align-items:center;

    justify-content:center;
}


.plmain-discover-card__icon::before,
.plmain-discover-card__icon::after{
    content:"";

    position:absolute;

    border:
        1px solid
        rgba(255,255,255,.08);

    border-radius:50%;
}


.plmain-discover-card__icon::before{
    inset:10px;
}


.plmain-discover-card__icon::after{
    inset:38px;
}


.plmain-discover-card__icon span{
    position:absolute;

    color:
        var(--pl-orange);

    font-size:20px;

    font-weight:300;
}


.plmain-discover-card__icon span:nth-child(1){
    left:24px;
    top:52px;
}


.plmain-discover-card__icon span:nth-child(2){
    right:20px;
    top:30px;
}


.plmain-discover-card__icon span:nth-child(3){
    right:50px;
    bottom:20px;
}


/* ==========================================================
   REFERENCES SYMBOL
   ========================================================== */

.plmain-reference-symbol{
    position:absolute;

    left:50%;
    top:22%;

    width:180px;
    height:155px;

    transform:
        translateX(-50%);
}


.plmain-reference-symbol div{
    position:absolute;

    width:85px;
    height:58px;

    border:
        1px solid
        rgba(255,255,255,.10);

    border-radius:7px;

    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,.06),
            rgba(255,255,255,.018)
        );
}


.plmain-reference-symbol div::after{
    content:"";

    position:absolute;

    left:50%;
    top:50%;

    width:28px;
    height:4px;

    transform:
        translate(-50%,-50%);

    border-radius:4px;

    background:
        rgba(255,255,255,.18);
}


.plmain-reference-symbol div:nth-child(1){
    left:4px;
    top:4px;

    transform:
        rotate(-7deg);
}


.plmain-reference-symbol div:nth-child(2){
    right:4px;
    top:18px;

    transform:
        rotate(6deg);
}


.plmain-reference-symbol div:nth-child(3){
    left:18px;
    bottom:3px;

    transform:
        rotate(4deg);
}


.plmain-reference-symbol div:nth-child(4){
    right:12px;
    bottom:15px;

    transform:
        rotate(-5deg);
}


/* ==========================================================
   CLOSING
   ========================================================== */

.plmain-closing{
    margin-top:70px;

    padding-top:24px;

    display:flex;

    align-items:flex-end;

    justify-content:space-between;

    gap:40px;

    border-top:
        1px solid
        rgba(255,255,255,.08);
}


.plmain-closing > div{
    display:flex;

    align-items:center;

    gap:13px;

    color:
        rgba(255,255,255,.26);

    font-size:7px;

    font-weight:800;

    letter-spacing:.16em;
}


.plmain-closing > div i{
    width:45px;
    height:1px;

    background:
        linear-gradient(
            90deg,
            var(--pl-orange),
            var(--pl-red)
        );
}


.plmain-closing > strong{
    padding-bottom:.08em;

    overflow:visible;

    color:
        rgba(255,255,255,.80);

    font-size:
        clamp(
            22px,
            2vw,
            31px
        );

    font-weight:550;

    line-height:1.18;

    letter-spacing:-.04em;
}


/* ==========================================================
   REVEAL
   ========================================================== */

.plmain-reveal{
    opacity:0;

    transform:
        translateY(28px);

    transition:
        opacity .7s ease,
        transform .7s ease;
}


.plmain-reveal.is-visible{
    opacity:1;

    transform:
        translateY(0);
}


.plmain-sustain-item.plmain-reveal:nth-child(2){
    transition-delay:.07s;
}


.plmain-sustain-item.plmain-reveal:nth-child(3){
    transition-delay:.14s;
}


.plmain-sustain-item.plmain-reveal:nth-child(4){
    transition-delay:.21s;
}


.plmain-discover-card.plmain-reveal:nth-child(2){
    transition-delay:.08s;
}


.plmain-discover-card.plmain-reveal:nth-child(3){
    transition-delay:.16s;
}


/* ==========================================================
   TABLET
   ========================================================== */

@media(max-width:1050px){

    .plmain-container{
        width:
            calc(100% - 42px);
    }


    .plmain-section-head__row{
        align-items:flex-start;

        flex-direction:column;

        gap:25px;

        overflow:visible !important;
    }


    .plmain-section-head__row > p{
        max-width:600px;
    }


    .plmain-section-head h2{
        line-height:1.14 !important;

        padding-bottom:.20em;

        overflow:visible !important;
    }


    .plmain-section-head h2 strong{
        line-height:1.14 !important;

        padding-bottom:.22em;

        overflow:visible !important;
    }


    .plmain-service-system{
        grid-template-columns:1fr;
    }


    .plmain-service-tabs{
        display:grid;

        grid-template-columns:
            repeat(2,1fr);

        border-right:0;

        border-bottom:
            1px solid
            rgba(35,21,96,.09);
    }


    .plmain-service-tab{
        min-height:90px;

        border-right:
            1px solid
            rgba(35,21,96,.07);
    }


    .plmain-service-panel{
        grid-template-columns:1fr 1fr;
    }


    .plmain-experience__top{
        grid-template-columns:1fr;

        gap:70px;
    }


    .plmain-years{
        min-height:auto;

        padding-bottom:60px;

        border-right:0;

        border-bottom:
            1px solid
            rgba(255,255,255,.08);
    }


    .plmain-years > strong{
        font-size:
            clamp(
                130px,
                25vw,
                210px
            );
    }


    .plmain-experience__copy h2{
        line-height:1.14 !important;

        padding-bottom:.20em;
    }


    .plmain-experience__copy h2 strong{
        line-height:1.14 !important;

        padding-bottom:.22em;
    }


    .plmain-sustain-grid{
        grid-template-columns:1fr;

        gap:60px;
    }


    .plmain-sustain-core{
        max-width:420px;
    }


    .plmain-discover-grid{
        grid-template-columns:
            1fr
            1fr;
    }


    .plmain-discover-card--large{
        grid-column:
            1 / -1;

        min-height:520px;
    }

}


/* ==========================================================
   MOBILE
   ========================================================== */

@media(max-width:700px){

    .plmain-container{
        width:
            calc(100% - 36px);
    }


    .plmain-services,
    .plmain-sustainability{
        padding:
            85px 0;
    }


    .plmain-experience{
        padding-top:85px;
    }


    .plmain-discover{
        padding:
            85px 0
            75px;
    }


    .plmain-section-head{
        margin-bottom:44px;

        overflow:visible !important;
    }


    .plmain-section-head h2{
        font-size:
            clamp(
                44px,
                12vw,
                61px
            );

        line-height:1.16 !important;

        padding:
            .02em
            0
            .24em;

        overflow:visible !important;
    }


    .plmain-section-head h2 strong{
        width:100%;
        max-width:100%;

        line-height:1.16 !important;

        padding-bottom:.26em;

        overflow:visible !important;
    }


    /* SERVICES */

    .plmain-service-tabs{
        grid-template-columns:1fr;
    }


    .plmain-service-tab{
        min-height:72px;

        padding:
            14px 17px;

        grid-template-columns:
            28px
            1fr
            22px;
    }


    .plmain-service-tab > span{
        flex-direction:row;

        gap:5px;

        font-size:13px;
    }


    .plmain-service-panel{
        min-height:auto;

        grid-template-columns:1fr;
    }


    .plmain-service-visual{
        height:330px;

        border-right:0;

        border-bottom:
            1px solid
            rgba(255,255,255,.07);
    }


    .plmain-service-content{
        padding:
            35px
            25px
            40px;
    }


    .plmain-service-content h3{
        line-height:1.16 !important;

        padding-bottom:.18em;

        overflow:visible !important;
    }


    .plmain-blueprint{
        transform:
            translate(-50%,-50%)
            scale(.83)
            perspective(700px)
            rotateX(57deg)
            rotateZ(-17deg);
    }


    .plmain-hospitality-scene,
    .plmain-data-center,
    .plmain-international{
        transform:
            translate(-50%,-50%)
            scale(.82);
    }


    /* YEARS */

    .plmain-experience__top{
        padding-bottom:75px;
    }


    .plmain-years{
        padding-bottom:45px;
    }


    .plmain-experience__copy{
        overflow:visible !important;
    }


    .plmain-experience__copy h2{
        font-size:
            clamp(
                43px,
                12vw,
                60px
            );

        line-height:1.16 !important;

        padding:
            .02em
            0
            .24em;

        overflow:visible !important;
    }


    .plmain-experience__copy h2 strong{
        width:100%;
        max-width:100%;

        line-height:1.16 !important;

        padding-bottom:.26em;

        overflow:visible !important;
    }


    /* SUSTAINABILITY */

    .plmain-sustain-core{
        max-width:330px;
    }


    .plmain-sustain-core__center{
        width:115px;
        height:115px;
    }


    .plmain-sustain-core__center strong{
        font-size:29px;
    }


    .plmain-sustain-item{
        grid-template-columns:
            32px
            1fr
            24px;
    }


    .plmain-sustain-footer{
        align-items:flex-start;

        flex-direction:column;

        gap:20px;
    }


    /* DISCOVER */

    .plmain-discover-grid{
        grid-template-columns:1fr;
    }


    .plmain-discover-card,
    .plmain-discover-card--large{
        min-height:440px;

        grid-column:auto;
    }


    .plmain-discover-card__content h3{
        line-height:1.16 !important;

        padding-bottom:.18em;

        overflow:visible !important;
    }


    .plmain-closing{
        align-items:flex-start;

        flex-direction:column;
    }

}


/* ==========================================================
   SMALL MOBILE
   ========================================================== */

@media(max-width:450px){

    .plmain-section-head h2{
        line-height:1.18 !important;

        padding-bottom:.26em;
    }


    .plmain-section-head h2 strong{
        line-height:1.18 !important;

        padding-bottom:.28em;
    }


    .plmain-experience__copy h2{
        line-height:1.18 !important;

        padding-bottom:.26em;
    }


    .plmain-experience__copy h2 strong{
        line-height:1.18 !important;

        padding-bottom:.28em;
    }


    .plmain-service-content h3,
    .plmain-discover-card__content h3{
        line-height:1.18 !important;

        padding-bottom:.20em;
    }


    .plmain-service-tab > span{
        flex-direction:column;

        gap:1px;
    }


    .plmain-service-visual{
        height:290px;
    }


    .plmain-sustain-core{
        max-width:285px;
    }


    .plmain-sustain-item div span{
        font-size:9px;
    }


    .plmain-closing > div{
        flex-wrap:wrap;
    }

}


/* ==========================================================
   REDUCED MOTION
   ========================================================== */

@media(prefers-reduced-motion:reduce){

    .plmain-rail__track{
        animation:none !important;
    }


    .plmain-reveal{
        opacity:1 !important;

        transform:none !important;

        transition:none !important;
    }

}


/* ==========================================================
   FIX — SERVICE TAB HOVER TEXT COLOR
   ========================================================== */

.plmain-service-tab:hover,
.plmain-service-tab:focus,
.plmain-service-tab.is-active{
    color:#20192B !important;
}


/* minden belső szöveg maradjon sötét */

.plmain-service-tab:hover > span,
.plmain-service-tab:hover > span b,
.plmain-service-tab:focus > span,
.plmain-service-tab:focus > span b,
.plmain-service-tab.is-active > span,
.plmain-service-tab.is-active > span b{
    color:#20192B !important;
}


/* sorszám */

.plmain-service-tab:hover > small,
.plmain-service-tab:focus > small,
.plmain-service-tab.is-active > small{
    color:#FF6E18 !important;
}


/* nyíl */

.plmain-service-tab:hover > i,
.plmain-service-tab:focus > i,
.plmain-service-tab.is-active > i{
    color:#FF6E18 !important;
}


/* biztosan maradjon fehér háttér */

.plmain-service-tab:hover,
.plmain-service-tab:focus,
.plmain-service-tab.is-active{
    background:#FFFFFF !important;
}/* End custom CSS */